前置任务
在配置通过FTP访问其他设备的文件之前,需完成以下任务:
- 当前设备和FTP服务器路由可达。
- 已获取FTP服务器的主机名或IP地址、FTP用户名及密码。
- 如果服务器不是使用标准的端口号,则还需获取服务器端设置的端口号。
配置流程
使用FTP协议存在安全风险,建议使用SFTP V2、SCP或FTPS方式进行文件操作。
通过FTP访问其他设备文件的配置流程如表8-35所示。
表1 配置设备作为FTP客户端访问其他设备的文件配置流程
序号 | 配置任务名称 | 配置任务说明 | 配置流程说明 |
1 | (可选)配置FTP客户端源地址 | 客户端源地址可以配置为源接口或源IP,达到安全校验的目的。 | 序号1、2有序操作,FTP连接建立后,序号3、4无操作顺序,序号5(断开连接操作)为最后一步。 |
2 | 使用FTP连接其他设备 | - | |
3 | 通过FTP文件操作命令进行文件操作 | 包括目录操作、文件操作、配置文件传输方式、查看FTP命令在线帮助等。 | |
4 | (可选)更改登录用户 | - | |
5 | 断开与FTP服务器的连接 | - |
操作步骤
- (可选)配置FTP客户端源地址
配置源地址需要选择设备上状态稳定的接口,如LoopBack接口。该配置简化了ACL规则和安全策略的配置,只要将ACL规则的源地址或目的地址指定为该地址,就可以屏蔽接口IP地址的差异以及接口状态的影响,实现对设备进出报文的过滤。
FTP客户端配置的源地址必须为LoopBack地址或LoopBack接口。
表2 配置FTP客户端源地址
操作步骤 | 命令 | 说明 |
进入系统视图 | system-view | - |
配置FTP客户端的源地址信息 | ftp client-source { -a source-ip-address | -i interface-type interface-number } | 建议使用Loopback接口的地址。 当配置为LoopBack接口时,一定要为此接口配置IP地址,否则会导致FTP连接建立失败。 |
使用FTP连接其他设备
在用户视图和FTP客户端视图下,用户均可以使用相应命令访问FTP服务器。
根据服务器端IP地址类型不同,进行如下操作。
表3 使用FTP命令连接其他设备(服务器端IPv4地址类型)
操作步骤 | 命令 | 说明 |
用户视图下直接建立与IPv4 FTP服务器的连接 | ftp [ -a source-ip-address | -i interface-type interface-number ] host-ip [ port-number ] [ public-net | vpn-instance vpn-instance-name ] | 二选一 FTP客户端视图下建立与FTP服务器的连接时需要先使用ftp命令进入FTP客户端视图。 |
FTP客户端视图下建立与IPv4 FTP服务器的连接 | ftp | |
open [ -a source-ip-address | -i interface-type interface-number ] host-ip [ port-number ] [ public-net | vpn-instance vpn-instance-name ] |
说明:在访问FTP服务器之前,可以执行命令set net-manager vpn-instance,设置默认的VPN实例。执行该命令后,进行FTP操作时所使用的VPN实例即用户配置的默认VPN实例。
基于IPV4网络中,ftp命令中指定的源地址优先级高于ftp client-source命令中指定源地址的优先级。如果执行命令ftp client-source指定了源地址后,又在ftp命令中指定了源地址,则采用ftp命令中指定的源地址进行通信。ftp client-source命令指定的源地址对所有的FTP连接都有效,ftp命令指定的源地址只对当前的FTP连接有效。
表4 使用FTP命令连接其他设备(服务器端IPv6地址类型)
操作步骤 | 命令 | 说明 |
用户视图下直接建立与IPv6 FTP服务器的连接 | ftp ipv6 host-ipv6 [ port-number ] | 二选一 FTP客户端视图下建立与FTP服务器的连接时需要先使用ftp命令进入FTP客户端视图。 |
FTP客户端视图下建立与IPv6 FTP服务器的连接 | ftp | |
open ipv6 host-ipv6 [ port-number ] |
用户访问服务器时,需要经过验证,输入正确的用户名和密码后,方可访问服务器。
- 通过FTP命令进行文件操作
用户访问FTP服务器后,可以通过FTP命令进行文件操作,包括目录操作、文件操作、配置文件传输方式、查看FTP命令在线帮助等。
说明:用户的操作权限受限于服务器上对该用户的权限设置。由于文件系统对根目录下的文件个数有限制,当根目录中文件个数大于50个时,继续在根目录中创建文件可能会失败。
以下各操作没有严格顺序,可根据需求选择一种或多种操作项目。
表5 通过FTP命令进行文件操作
操作项目 | 命令 | 说明 |
改变服务器上的工作路径 | cd remote-directory | - |
改变服务器的工作路径到上一级目录 | cdup | - |
显示服务器工作路径 | pwd | - |
显示或者改变客户端的工作路径 | lcd [ local-directory ] | 与pwd不同的是,lcd命令执行后显示的是客户端的本地工作路径,而pwd显示的则是远端服务器的工作路径。 |
在服务器上创建目录 | mkdir remote-directory | 创建的目录可以为字母和数字等的组合,但不可以为<、>、?、\、:等特殊字符。 |
在服务器上删除目录 | rmdir remote-directory | - |
显示服务器上指定目录或文件的信息 | dir/ls [ remote-filename [ local-filename ] ] |
|
删除服务器上指定文件 | delete remote-filename | - |
上传单个或多个文件 | put local-filename [ remote-filename ] 或 mput local-filenames |
|
下载单个或多个文件 | get remote-filename [ local-filename ] 或 mget remote-filenames |
|
配置传输文件的数据类型为ASCII模式或二进制模式 | ascii 或 binary | 二选一
|
配置文件传输方式为被动方式或主动方式 | passive 或 undo passive | 二选一 缺省情况下,数据传输方式是主动方式。 |
查看FTP命令的在线帮助 | remotehelp [ command ] | - |
使能系统的提示功能 | prompt | 缺省情况下,不使能信息提示。 |
打开verbose开关 | verbose | 如果打开verbose开关,将显示所有FTP响应,包括FTP协议信息,以及FTP服务器返回的详细信息。 |
(可选)更改登录用户
设备可以在不退出FTP客户端视图的情况下,以其他的用户名登录到FTP服务器。所建立的FTP连接,与执行ftp命令建立的FTP连接完全相同。
操作步骤 | 命令 | 说明 |
FTP客户端视图下,更改当前的登录用户 | user user-name [ password ] | 更改当前的登录用户后,原用户与服务器的连接将断开。 |
断开与FTP服务器的连接
用户可以在FTP客户端视图中选择不同的命令断开与FTP服务器的连接。
操作步骤 | 命令 | 说明 |
终止与服务器的连接,并退回到用户视图 | bye 或 quit | 二选一。 |
终止与服务器的连接,并退回到FTP客户端视图 | close 或 disconnect |
检查配置结果
- 使用display ftp-client命令,查看设备作为FTP客户端时的源参数。