04-FTP和TFTP命令
本章节下载: 04-FTP和TFTP命令 (295.35 KB)
display ftp-server命令用来显示设备作为FTP服务器时的配置和运行情况。
# 显示FTP服务器的配置和运行情况。
User count: 1
Idle-timeout timer (in minutes): 30
表1-1 display ftp-server命令显示信息描述表
FTP服务器功能正在运行中 |
|
FTP连接自动断开前的空闲时间,如果在该时间段内,FTP客户端和FTP服务器之间没有报文交互,该FTP连接会被断开 |
display ftp-user命令用来显示当前FTP用户的详细情况。
# 显示FTP用户详细情况。
UserName HostIP Port HomeDir
root 192.168.20.184 46539 flash:
当登录用户名长度超过10位时,将换行并靠右对齐显示;当登录用户的IP地址长度超过15位时,将换行并靠右对齐显示;当用户根路径长度超过37位时,将换行并靠右对齐显示。形如:
UserName HostIP Port HomeDir
user2 2000:2000:2000: 1499 flash:/user2
2000:2000:2000:
2000:2000
administra 100.100.100.100 10001 flash:/123456789/123456789/123456789/
tor 123456789/123456789/123456789/1234567
89/123456789
表1-2 display ftp-user命令显示信息描述表
当前登录的FTP用户名 |
|
当前登录的FTP用户的IP地址 |
|
当前登录的FTP用户使用的端口号 |
|
当前登录的FTP用户的授权路径 |
free ftp user命令用来强制释放通过指定用户名建立的FTP连接。
username:用户名。可以使用display ftp-user命令来查看当前FTP用户的信息。
# 强制释放通过用户名ftpuser建立的FTP连接。
<Sysname> free ftp user ftpuser
Are you sure to free FTP connection? [Y/N]:y
<Sysname>
free ftp user-ip命令用来强制释放通过指定IPv4地址建立的FTP连接。
free ftp user-ip ipv4-address [ port port ]
ipv4-address:待释放的FTP连接的源IP。可以使用display ftp-user命令来查看当前FTP连接的源IP。
port port:待释放的FTP连接的源端口,port为源端口的端口号。可以使用display ftp-user命令来查看当前FTP连接的源端口。
# 强制释放通过IP地址192.168.20.184建立的FTP连接。
<Sysname> free ftp user-ip 192.168.20.184
Are you sure to free FTP connection? [Y/N]:y
<Sysname>
free ftp user-ip命令用来强制释放通过指定IPv6地址建立的FTP连接。
free ftp user-ip ipv6 ipv6-address [ port port ]
ipv6-address:待释放的FTP连接的源IP。可以使用display ftp-user命令来查看当前FTP连接的源IP。
port port:待释放的FTP连接的源端口,port为源端口的端口号。可以使用display ftp-user命令来查看当前FTP连接的源端口。
# 强制释放通过IP地址2000::154建立的FTP连接。
<Sysname> free ftp user-ip ipv6 2000::154
Are you sure to free FTP connection? [Y/N]:y
<Sysname>
ftp server acl命令用来通过ACL控制FTP客户端的访问权限。
undo ftp server acl命令用来恢复缺省情况。
ftp server acl { acl-number | ipv6 acl-number6 }
undo ftp server acl [ ipv6 ]
没有使用ACL限制FTP客户端。
acl-number:表示IPv4访问控制列表号,取值范围为2000~3999。
ipv6 acl-number6:表示IPv6访问控制列表号,取值范围为2000~3999。
通过将FTP服务与ACL关联,可以过滤掉来自某些FTP客户端的FTP请求报文,只允许符合ACL过滤规则的FTP客户端访问设备。该配置只过滤新建立的FTP连接,不会对已建立的FTP连接和操作造成影响。如果多次使用该命令配置FTP服务与ACL关联,FTP服务将只与最后一次配置的ACL关联。
# 配置FTP服务与ACL关联,只允许FTP客户端(1.1.1.1)通过FTP访问本设备。
[Sysname] acl number 2001
[Sysname-acl-basic-2001] rule 0 permit source 1.1.1.1 0
[Sysname-acl-basic-2001] rule 1 deny source any
[Sysname-acl-basic-2001] quit
[Sysname] ftp server acl 2001
ftp server dscp命令用来配置FTP服务器发送的FTP报文的DSCP优先级。
undo ftp server dscp命令用来恢复缺省情况。
FTP服务器发送的FTP报文的DSCP优先级为0。
dscp-value:指定设备发送的FTP报文的DSCP优先级,取值范围为0~63。
DSCP携带在IP报文中的ToS字段,用来体现报文自身的优先等级,决定报文传输的优先程度。
# 配置FTP服务器发送的FTP报文的DSCP优先级为30。
[Sysname] ftp server dscp 30
ftp server enable命令用来开启设备的FTP服务器功能,允许FTP用户登录。
undo ftp server enable命令用来关闭设备的FTP服务器功能。
FTP服务器功能处于关闭状态。
# 开启设备的FTP服务器功能。
[Sysname] ftp server enable
ftp server ipv6 dscp命令用来配置FTP服务器发送的IPv6 FTP报文的DSCP优先级。
undo ftp server ipv6 dscp命令用来恢复缺省情况。
ftp server ipv6 dscp dscp-value
FTP服务器发送的IPv6 FTP报文的DSCP优先级为0。
dscp-value:指定设备发送的IPv6 FTP报文的DSCP优先级,取值范围为0~63。
DSCP携带在IPv6报文中的Trafic class字段,用来体现报文自身的优先等级,决定报文传输的优先程度。
# 配置FTP服务器发送的IPv6 FTP报文的DSCP优先级为30。
[Sysname] ftp server ipv6 dscp 30
ftp server ssl-server-policy命令用来配置FTP服务与SSL服务器端策略关联。
undo ftp server ssl-server-policy命令用来取消FTP服务与SSL服务器端策略的关联。
ftp server ssl-server-policy policy-name
undo ftp server ssl-server-policy
没有配置SSL服务器端策略与FTP服务关联。
policy-name:SSL服务器端策略名,为1~31个字符的字符串。
当支持FTP安全扩展协议的两台设备建立FTP连接时,通过将FTP服务与SSL服务器端策略关联,可以建立一条安全的SSL连接来传输数据,保证FTP传输的安全性。
# 设置FTP服务使用的SSL服务器端策略为myssl。
[Sysname] ftp server ssl-server-policy myssl
· ssl server-policy(安全/SSL)
ftp timeout命令用来设置FTP连接自动断开前的空闲时间。
undo ftp timeout命令用来恢复缺省情况。
FTP连接自动断开前的空闲时间为30分钟。
minute:FTP连接自动断开前的空闲时间,取值范围为1~35791,单位为分钟。
如果在设置的连接空闲时间到期时,FTP服务器和客户端一直没有信息交互,FTP服务器将认为该连接已失效并断开该连接,从而避免系统资源被持续占用、其它FTP用户的登录受影响。
# 设置FTP连接自动断开前的空闲时间为36分钟。
[Sysname] ftp timeout 36
· 为避免重复,在本节中对需要在FTP客户端视图下执行的命令进行举例时,将省略进入FTP客户端视图的配置过程。进入FTP客户端视图的命令请参考1.2.13 。
· 在执行FTP客户端配置命令前,请确认在FTP服务器上是否为用户配置了相应的权限,例如:查询工作目录下的文件列表、读取/下载指定文件、创建目录/上传文件、以及对服务器上的文件进行重命名/删除等。
· 本节描述的是设备支持的FTP客户端配置命令,但命令能否执行成功,与服务器是否支持这些操作有关。
· 本节举例中各命令的显示信息与FTP服务器的类型有关,请以实际情况为准。
append命令用来在原文件内容的后面添加新文件的内容。
append localfile [ remotefile ]
FTP客户端视图
localfile:待添加的本地文件名称。
remotefile:被添加的FTP服务器文件名称。
只有成功登录FTP服务器后才能执行此项操作。
# 将本地a.txt文件内容添加到FTP服务器上的b.txt文件内容的后面。
local: a.txt remote: b.txt
150 Connecting to port 50190
226 File successfully transferred
1657 bytes sent in 0.000736 seconds (2.15 Mbyte/s)
ascii命令用来设置文件传输的模式为ASCII模式。
文件传输模式为ASCII模式。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
不同的操作系统对换行符的表示方法不同,比如H3C设备系统和Windows系统使用“/r/n”作为换行符,在Linux系统中使用“/n”作为换行符。在换行符表示方法不同的两个系统(比如Linux系统和H3C设备系统)间传输完文件,必须根据传输文件类型选择FTP文件传输模式。
· ASCII码模式,用于传输文本文件。
# 设置数据传输的模式为ASCII模式。
200 TYPE is now ASCII
binary命令用来设置文件传输的模式为二进制模式(也称为流模式)。
文件传输模式为ASCII模式。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
不同的操作系统对换行符的表示方法不同,比如H3C设备系统和Windows系统使用“/r/n”作为换行符,在Linux系统中使用“/n”作为换行符。在换行符表示方法不同的两个系统(比如Linux系统和H3C设备系统)间传输完文件,必须根据传输文件类型选择FTP文件传输模式。
· ASCII码模式,用于传输文本文件。
# 设置文件传输类型为二进制模式。
200 TYPE is now 8-bit binary
bye命令用来断开与FTP服务器的连接,并退回到用户视图。如果设备与FTP服务器没有建立连接,则直接退回到用户视图。
FTP客户端视图
# 终止与FTP服务器的连接,并退回到用户视图。
221-Goodbye. You uploaded 2 and downloaded 2 kbytes.
221 Logout.
<Sysname>
cd命令用来切换FTP服务器上的工作路径,即访问FTP服务器上的另一目录。
FTP客户端视图
directory:指定目标工作路径。如果指定的工作路径不存在,则执行cd directory后保持当前工作路径不变。格式为[drive:][/]path。drive和path参数的详细解释,请参见“基础配置指导”中的“文件系统管理”。如果没有给出drive信息,则表示当前工作路径下的文件夹或者子文件夹。
..:返回上一级目录,功能与cdup类似。如果当前工作路径已经是FTP根目录,则执行cd ..后保持当前工作路径不变。
/:返回FTP根目录。
只有成功登录FTP服务器后才能执行此项操作。
用户可以访问的目录只能是FTP服务器对用户授权的目录。
# 切换工作路径到当前工作路径的logfile子目录下。
250 OK. Current directory is /logfile
# 切换工作路径到FTP根目录的folder子目录下。
250 OK. Current directory is /folder
# 切换工作路径到当前工作路径的上层目录下。
250 OK. Current directory is /
# 切换工作路径到FTP根目录下。
250 OK. Current directory is /
cdup命令用来退出FTP服务器的当前工作路径,并返回到FTP服务器的上一级目录。如果当前工作路径已经是FTP根目录,则执行该命令后,保持当前工作路径不变。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
# 将工作路径改为上一级目录。
257 "/ftp/subdir" is your current location
ftp> cdup
250 OK. Current directory is /ftp
ftp> pwd
257 "/ftp" is your current location
close命令用来在不退出FTP客户端视图的前提下,断开与FTP服务器的连接。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
# 断开与FTP服务器的连接,并保持在FTP客户端视图。
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
ftp>
debug命令用来切换FTP客户端调试信息开关状态。
FTP客户端调试信息开关处于关闭状态。
FTP客户端视图
重复执行该命令,可以打开或者关闭FTP客户端调试信息开关。
# 切换FTP客户端调试信息开关状态。
Debugging on (debug=1).
ftp> debug
Debugging off (debug=0).
# 设备作为FTP客户端,成功登录后,打开设备的FTP客户端调试信息开关,下载FTP服务器当前工作路径下的a.txt文件。
Debugging on (debug=1).
ftp> get a.txt
local: a.txt remote: a.txt
---> EPRT |2|8::124|50198|
200 PORT command successful
---> RETR a.txt
150 Connecting to port 50198
226 File successfully transferred
1569 bytes received in 0.0104 seconds (147.2 kbyte/s)
表1-3 debug命令显示信息描述表
发出FTP指令,2表示所使用的地址结构协议族(1表示IPv4协议,2表示IPv6协议),8::124表示FTP服务器的IP地址,50198表示FTP服务器端口号 |
|
收到的FTP应答码。200表示应答码,FTP应答码由RFC 959规定 |
|
发出FTP指令,下载文件a.txt |
delete命令用来彻底删除FTP服务器上的指定文件。
FTP客户端视图
remotefile:FTP服务器上的文件的文件名。
只有成功登录FTP服务器后才能执行此项操作。
# 删除文件b.txt。
250 Deleted b.txt
dir命令用来查看FTP服务器当前工作路径下的所有子目录及文件的详细信息。
dir remotefile命令用来查看FTP服务器上指定目录或文件的详细信息。
dir remotefile localfile命令用来查看FTP服务器上指定目录或文件的详细信息,并把查看结果(找到的目录或文件的详细信息)保存在本地以localfile命名的文件中。
dir [ remotefile [ localfile ] ]
FTP客户端视图
remotefile:待查看的FTP服务器上的目录或文件名。
localfile:用于保存查询信息的本地文件的名称。
只有成功登录FTP服务器后才能执行此项操作。
在FTP客户端视图下,dir命令等同于ls命令。
# 显示当前FTP服务器工作路径下的所有文件夹以及文件的信息。
150 Connecting to port 50201
-rwxr-xr-x 1 0 0 1481 Jul 7 15:36 a.txt
-rwxr-xr-x 1 0 0 0 Sep 27 2010 base.bin
drwxr-xr-x 2 0 0 8192 Jul 2 14:33 diagfile
drwxr-xr-x 3 0 0 8192 Jul 7 15:21 ftp
-rwxr-xr-x 1 0 0 0 Sep 27 2010 kernel.bin
drwxr-xr-x 2 0 0 8192 Jul 5 09:15 logfile
drwxr-xr-x 2 0 0 8192 Jul 2 14:33 seclog
-rwxr-xr-x 1 0 0 40808448 Jul 2 14:33 simware-cmw710-sys
tem-a1801.bin
-rwxr-xr-x 1 0 0 3050 Jul 7 12:26 startup.cfg
-rwxr-xr-x 1 0 0 54674 Jul 4 09:24 startup.mdb
-rwxr-xr-x 1 0 0 1481 Jul 7 12:34 x.cfg
226 11 matches total
# 查看文件a.txt,并将查询结果保存在s.txt文件中。
output to local-file: a.txt ? [Y/N]y
150 Connecting to port 50203
226-Glob: a.txt
查看s.txt文件的内容。
221-Goodbye. You uploaded 0 and downloaded 2 kbytes.
221 Logout.
<Sysname> more s.txt
-rwxr-xr-x 1 0 0 1481 Jul 7 12:34 a.txt
disconnect命令用来在不退出FTP客户端视图的前提下,断开与FTP服务器的连接。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
# 断开与FTP服务器的连接,保持在FTP客户端视图。
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
ftp>
display ftp client source命令用来显示设备作为FTP客户端时的源地址的配置。
# 显示设备作为FTP客户端时的源地址的配置。
<Sysname> display ftp client source
The source IP address of the FTP client is 1.1.1.1.
The source IPv6 address of the FTP client is 2001::1.
ftp命令用来登录FTP服务器,并进入FTP客户端视图。
ftp-server:FTP服务器的主机名或IP地址。其中,主机名为1~253个字符的字符串,不区分大小写,字符串仅可包含字母、数字、“-”、“_”或“.”。
service-port:远端设备提供FTP服务的TCP端口号,取值范围为0~65535,缺省值为21。
vpn-instance vpn-instance-name:指定FTP服务器所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示FTP服务器位于公网中。
dscp dscp-value:指定设备发送的FTP报文中携带的DSCP优先级的取值,取值范围为0~63,缺省值为0。
source { interface interface-type interface-number | ip source-ip-address }:指定建立FTP连接时使用的源地址。其中:
· interface interface-type interface-number:表示源接口的接口类型和接口编号。发送FTP协议报文时,设备将使用该接口下配置的主IP地址作为源地址。如果源接口下没有配置主地址,则不能建立连接。
· ip source-ip-address:表示源IP地址。发送FTP协议报文时,设备将使用该IP地址作为源地址。该地址必须是设备上已配置的IP地址,否则不能建立连接。
该命令仅适用于IPv4组网环境。
如果不指定任何参数,则只进入FTP客户端视图,不登录FTP服务器。
如果指定参数,系统会提示用户输入登录FTP服务器的用户名和密码。如果用户名和密码正确,则登录成功,并进入FTP客户端视图;否则,登录失败。
# 使用FTP方式,从当前设备Sysname登录到设备FTP Server(IP地址为192.168.0.211),并且FTP发送报文的源IP地址为192.168.0.212。
<Sysname>ftp 192.168.0.211 source ip 192.168.0.212
Press CTRL+C to abort.
Connected to 192.168.0.211 (192.168.0.211).
220 WFTPD 2.0 service (by Texas Imperial Software) ready for new user
User (192.168.0.211:(none)): abc
331 Give me your password, please
Password:
230 Logged in successfully
Remote system type is MSDOS.
ftp>
ftp client source命令用来在IPv4组网环境下配置FTP客户端发送的FTP报文的源地址。
undo ftp client source命令用来恢复缺省情况。
ftp client source { interface interface-type interface-number | ip source-ip-address }
没有配置源地址,使用路由出接口的主IP地址作为设备发送FTP报文的源IP地址。
interface interface-type interface-number:设置FTP传输使用的源接口,包括接口类型和接口编号,此接口下配置的主IP地址即为发送报文的源地址。请使用配置了主IP地址,并且状态为up的接口作为源接口,否则,文件传输失败。
ip source-ip-address:设置当前FTP客户端发送报文所使用的源IP地址。该地址必须是设备上已经配置的IP地址,并且地址所在接口状态为up,否则,文件传输失败。
· 使用本命令指定了源地址后,又在ftp命令中指定了源地址,则采用ftp命令中指定的源地址进行通信。
· 本命令指定的源地址对所有的FTP传输有效,ftp命令指定的源地址只对当前的FTP传输有效。
# 配置设备发送FTP报文的源IP地址为192.168.20.222。
[Sysname] ftp client source ip 192.168.20.222
ftp client ipv6 source命令用来在IPv6组网环境下配置FTP客户端发送的FTP报文的源地址。
undo ftp client ipv6 source命令用来恢复缺省情况。
ftp client ipv6 source { interface interface-type interface-number | ipv6 source-ipv6-address }
没有配置源地址,设备自动选择IPv6 FTP报文的源IPv6地址,具体选择原则请参见RFC 3484。
interface interface-type interface-number:表示源接口的类型和编号,此接口下配置的IPv6地址即为发送报文的源地址。请使用状态为up的接口作为源接口,否则,文件传输失败。
ipv6 source-ipv6-address:设置当前FTP客户端发送报文所使用的源IPv6地址。该地址必须是设备上已经配置的IPv6地址,并且地址所在接口状态为up,否则,文件传输失败。
· 多次执行ftp client ipv6 source命令,最新的配置生效。
· 使用该命令指定了源地址后,又在ftp ipv6命令中指定了源地址,则采用ftp ipv6命令中指定的源地址进行通信。
· 本命令指定的源地址对所有的FTP传输有效,ftp ipv6命令指定的源地址只对当前的FTP传输有效。
# 配置设备发送的FTP报文的源IPv6地址为2000::1。
<Sysname> system-view
[Sysname] ftp client ipv6 source ipv6 2000::1
ftp ipv6命令用来登录FTP服务器,并进入FTP客户端视图。
ftp-server:远端设备的IPv6地址或主机名。其中,主机名为1~253个字符的字符串,不区分大小写,字符串仅可包含字母、数字、“-”、“_”或“.”。
service-port:远端设备提供FTP服务的TCP端口号,取值范围为0~65535,缺省值为21。
dscp dscp-value:指定设备发送的IPv6 FTP报文中携带的DSCP优先级的取值,取值范围为0~63,缺省值为0。
source { ipv6 source-ipv6-address | interface interface-type interface-number }:指定建立IPv6 FTP连接时使用的源地址。其中:
· interface interface-type interface-number:当前FTP客户端连接所使用的源接口的接口类型和接口编号。此参数主要用于FTP服务器的地址是链路本地地址的情况,而且指定的出接口必需具有链路本地地址。(链路本地地址的介绍和配置请参见“三层技术-IP业务配置指导”中的“IPv6基础”)。
· ipv6 source-ipv6-address:当前FTP客户端连接所使用的源IPv6地址。该地址必须是设备上已配置的IPv6地址。
vpn-instance vpn-instance-name:指定目的端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。
-i interface-type interface-number:当前FTP客户端连接所使用的出接口的接口类型和接口编号。此参数主要用于FTP服务器的地址是链路本地地址的情况,而且指定的出接口必需具有链路本地地址。
该命令仅适用于IPv6组网环境。
如果不指定任何参数,则只进入FTP客户端视图,不登录FTP服务器。
如果指定参数,系统会提示用户输入登录FTP服务器的用户名和密码。如果用户名和密码正确,则登录成功,并进入FTP客户端视图;否则,登录失败。
# 登录到IPv6地址为2000::154的FTP服务器。
Press CTRL+C to abort.
Connected to 2000::154 (2000::154).
220 FTP service ready.
User (2000::154): root
331 Password required for root.
Password:
230 User logged in
Remote system type is H3C
get命令用来下载FTP服务器上的文件,并将下载的文件存储在本地。
FTP客户端视图
remotefile:需要下载的文件名称。
localfile:将文件下载到本地保存时使用的文件名称。
只有成功登录FTP服务器后才能执行此项操作。
· 如果要将文件保存到用户执行ftp命令时的当前工作路径,localfile只能是文件的名称或者不输入,形如a.cfg。当不使用该参数,将使用源文件名称作为本地文件名称保存。
· 如果要将文件保存到用户执行ftp命令时的当前工作路径外的其它路径,则localfile必须是绝对路径形式,形如flash:/subdirectory/a.cfg,否则,命令执行失败。
# 下载a.txt文件,并以b.txt文件名保存到用户执行ftp命令时的当前工作路径。
local: b.txt remote: a.txt
150 Connecting to port 47457
226 File successfully transferred
1569 bytes received in 0.00527 seconds (290.6 kbyte/s)
# 下载a.txt文件,并以b.txt文件名保存到用户执行ftp命令时的当前工作路径的子文件夹test。
ftp> get a.txt flash:/test/b.txt
local: flash:/test/b.txt remote: a.txt
150 Connecting to port 47457
226 File successfully transferred
1569 bytes received in 0.00527 seconds (290.6 kbyte/s)
help命令用来显示所有FTP客户端支持的命令的名字。
help command-name命令用来显示指定命令的帮助信息。
FTP客户端视图
command-name:命令名。
在FTP客户端视图下,help命令等同于?命令。
# 显示所有FTP客户端支持的命令的名字。
Commands may be abbreviated. Commands are:
append delete ls quit rmdir
ascii debug mkdir reget status
binary dir newer rstatus system
bye disconnect open rhelp user
cd get passive rename verbose
cdup help put reset ?
close lcd pwd restart
# 查看dir命令的帮助信息
dir list contents of remote directory
lcd命令用来显示或切换FTP客户端本地的工作路径。
FTP客户端视图
directory:表示本设备上的文件夹路径。请注意,存储介质名前面必须带“/”,形如“/flash:/logfile”。
/:表示本设备的根目录。
执行lcd命令,不指定任何参数时,用来显示FTP客户端本地的当前工作路径。
lcd directory命令用来将FTP客户端本地的工作路径切换到指定路径。
lcd /命令用来将FTP客户端本地的工作路径切换到本设备的根目录。
# 显示FTP客户端本地的当前工作路径。
Local directory now /flash:
# 将FTP客户端本地的工作路径切换到flash:/logfile。
Local directory now /flash:/logfile
ls命令用来查看FTP服务器当前工作路径下的所有子目录及文件的详细信息。
ls remotefile命令用来查看FTP服务器上指定目录或文件的详细信息。
ls remotefile localfile命令用来查看FTP服务器上指定目录或文件的详细信息,并把查看结果(找到的目录或文件的详细信息)保存在本地以localfile命名的文件中。
ls [ remotefile [ localfile ] ]
FTP客户端视图
remotefile:待查看的FTP服务器上的目录或文件名。
localfile:用于保存查询信息的本地文件的名称。
只有成功登录FTP服务器后才能执行此项操作。
在FTP客户端视图下,ls命令等同于dir命令。
# 显示当前FTP服务器工作路径下的所有文件夹以及文件的信息。
150 Connecting to port 50201
-rwxr-xr-x 1 0 0 1481 Jul 7 15:36 a.txt
-rwxr-xr-x 1 0 0 0 Sep 27 2010 base.bin
drwxr-xr-x 2 0 0 8192 Jul 2 14:33 diagfile
drwxr-xr-x 3 0 0 8192 Jul 7 15:21 ftp
-rwxr-xr-x 1 0 0 0 Sep 27 2010 kernel.bin
drwxr-xr-x 2 0 0 8192 Jul 5 09:15 logfile
drwxr-xr-x 2 0 0 8192 Jul 2 14:33 seclog
-rwxr-xr-x 1 0 0 40808448 Jul 2 14:33 simware-cmw710-sys
tem-a1801.bin
-rwxr-xr-x 1 0 0 3050 Jul 7 12:26 startup.cfg
-rwxr-xr-x 1 0 0 54674 Jul 4 09:24 startup.mdb
-rwxr-xr-x 1 0 0 1481 Jul 7 12:34 x.cfg
226 11 matches total
# 查看文件a.txt,并将查询结果保存在s.txt文件中。
output to local-file: a.txt ? [Y/N]y
150 Connecting to port 50203
226-Glob: a.txt
查看s.txt文件的内容。
221-Goodbye. You uploaded 0 and downloaded 2 kbytes.
221 Logout.
<Sysname> more s.txt
-rwxr-xr-x 1 0 0 1481 Jul 7 12:34 a.txt
mkdir命令用来在FTP服务器上当前工作路径下创建子目录。
FTP客户端视图
directory:待创建的目录名称。
只有成功登录FTP服务器后才能执行此项操作。
# 在FTP服务器的当前工作路径下创建子目录newdir。
257 "newdir" : The directory was successfully created
newer命令用来更新本地文件。
newer remotefile [ localfile ]
FTP客户端视图
remotefile:目标文件名称。
localfile:需要更新的本地文件名称。
只有成功登录FTP服务器后才能执行此项操作。
如果本地文件不存在,一律视为目标文件比本地新,即本地文件需要更新。
# FTP服务器的文件a.txt比本地的要新,更新本地文件。
local: a.txt remote: a.txt
150 Connecting to port 63513
226 File successfully transferred
1573 bytes received in 0.0293 seconds (52.3 kbyte/s)
open命令用来在FTP客户端视图下,登录FTP服务器。
open server-address [ service-port ]
FTP客户端视图
server-address:FTP服务器的IP地址(IPv4或IPv6地址)或主机名。
service-port:远端设备提供FTP服务的TCP端口号,取值范围为0~65535,缺省值为21。
登录时,系统会提示用户输入登录用户名和密码。如果用户名和密码正确,则登录成功;否则,登录失败。
如果当前已经登录到FTP服务器,则不能直接使用open命令连接到其他FTP服务器,需要中断与当前FTP服务器的连接后再重新连接。
# 在FTP客户端视图下,登录FTP服务器(IP地址为192.168.40.7)。
ftp> open 192.168.40.7
Press CTRL+C to abort.
Connected to 192.168.40.7 (192.168.40.7).
220 FTP service ready.
User (192.168.40.7:(none)): root
331 Password required for root.
Password:
230 User logged in.
Remote system type is H3C.
ftp>
passive命令用来切换FTP数据传输的主被动方式。
FTP客户端视图
· 主动方式是指在建立数据连接时由FTP服务器主动发起连接请求。
· 被动方式是指在建立数据连接时由FTP客户端主动发起连接请求。
重复执行该命令,可以FTP数据传输方式设置为主动方式或者被动方式。
该命令主要与防火墙功能配合使用,用来限制私网用户和公网用户之间建立FTP会话。
# 切换数据传输的主被动方式。
Passive mode on.
ftp> passive
Passive mode off.
put命令用来将FTP客户端本地的文件上传到FTP服务器。
FTP客户端视图
localfile:待上传的本地文件名称。
remotefile:文件上传完成后,在FTP服务器上保存时使用的文件名称。如果用户没有指定FTP服务器上的文件名,则系统缺省认为此文件名与本地文件名相同。
只有成功登录FTP服务器后才能执行此项操作。
· 如果要将用户执行ftp命令时的当前工作路径下的某文件上传,localfile只能是文件的名称,形如a.cfg。
· 如果要将用户执行ftp命令时的当前工作路径外的其它文件上传,则localfile必须是绝对路径形式,形如flash:/subdirectory/a.cfg,否则,命令执行失败。
# 上传用户执行ftp命令时的当前工作路径下的a.txt文件,并以b.txt文件名保存。
local: a.txt remote: b.txt
150 Connecting to port 47461
226 File successfully transferred
1569 bytes sent in 0.000671 seconds (2.23 Mbyte/s)
# 上传用户执行ftp命令时的当前工作路径下子文件夹test下的a.txt文件,并以b.txt文件名保存。
ftp> put flash:/test/a.txt b.txt
local: flash:/test/a.txt remote: b.txt
150 Connecting to port 47461
226 File successfully transferred
1569 bytes sent in 0.000671 seconds (2.23 Mbyte/s)
pwd命令用来显示当前用户正在访问的FTP服务器上的路径。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
# 显示当前用户正在访问的FTP服务器上的路径。
250 OK. Current directory is /subdir
ftp> pwd
257 "/subdir" is your current location
quit命令用来断开与FTP服务器的连接,并退回到用户视图。
FTP客户端视图
# 终止与FTP服务器的连接,并退回到用户视图。
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
<Sysname>
reget命令用来实现断点续传。
reget remotefile [ localfile ]
FTP客户端视图
remotefile:目标文件名称。
localfile:内容保存不完整的本地文件名称。
只有成功登录FTP服务器后才能执行此项操作。
网络故障或者存储空间不足,可能导致正在进行的下载操作终止,下载的文件内容不完整。当网络故障排除或者存储空间恢复后,可执行reget命令继续下载文件剩余的内容。
# 获取因传输中断而不完整的本地文件s.bin的剩余内容。
local: s.bin remote: s.bin
350 Restarting at 1749706
150-Connecting to port 47429
150 38143.3 kbytes to download
226 File successfully transferred
39058742 bytes received in 66.2 seconds (576.1 kbyte/s)
rename命令用来重命名文件。
rename [ oldfilename [ newlfilename ] ]
FTP客户端视图
oldfilename:原文件名。
newfilename:新文件名。
只有成功登录FTP服务器后才能执行此项操作。
# 将文件a.txt改名为b.txt。
(from-name) a.txt
(to-name) b.txt
350 RNFR accepted - file exists, ready for destination
250 File successfully renamed or moved
(to-name) b.txt
350 RNFR accepted - file exists, ready for destination
250 File successfully renamed or moved
350 RNFR accepted - file exists, ready for destination
250 File successfully renamed or moved
reset命令用来清除缓存中FTP服务器端发送回来的命令应答。
FTP客户端视图
# 清除缓存中FTP服务器端发送回来的命令应答。
restart命令用来指定重传点。
FTP客户端视图
marker:重传点,从文件首部开始的偏移量,单位为字节。
只有成功登录FTP服务器后才能执行此项操作。
不同FTP服务器对本命令的支持情况可能不同,请以FTP服务器的实际情况为准。
# 设置重传点的偏移量为2字节,将本地文件h.c(大小82字节)上传。
restarting at 2. execute get, put or append to initiate transfer
ftp> put h.c h.c
local: h.c remote: h.c
350 Restart position accepted (2).
150 Ok to send data.
226 File receive OK.
80 bytes sent in 0.000445 seconds (175.6 kbyte/s)
ftp> dir
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 80 Jul 18 02:58 h.c
rhelp命令用来显示FTP服务器支持的FTP相关协议命令字。
rhelp protocol-command命令用来显示FTP服务器支持的FTP相关协议命令字的帮助信息。
FTP客户端视图
protocol-command:FTP协议命令字。
只有成功登录FTP服务器后才能执行此项操作。
# 查看FTP服务器支持的FTP相关协议命令字。
214-The following FTP commands are recognized
USER PASS NOOP QUIT SYST TYPE
HELP CWD XCWD PWD CDUP XCUP
XPWD LIST NLST MLSD PORT EPRT
PASV EPSV REST RETR STOR APPE
DELE MKD XMKD RMD XRMD ABOR
SIZE RNFR RNTO
4 UNIX Type: L8
表1-4 rhelp命令显示信息描述表
以下是可用的FTP命令字列表 |
|
用户名,对应FTP客户端视图下的xx命令 |
|
rmdir命令用来彻底删除FTP服务器上指定的目录。
FTP客户端视图
directory:FTP服务器上的目录名。
只有成功登录FTP服务器后才能执行此项操作。
· 被删除的目录必须为空目录(即删除目录前,必须先删除该目录下的所有文件及子目录,文件的删除请参见delete命令)。
· 成功执行rmdir命令后,FTP服务器的回收站中原来属于该文件夹的文件会自动被彻底删除。
# 删除空目录subdir1。
250 The directory was successfully removed
rstatus命令用来显示FTP服务器的状态。
rstatus remotefile命令用来显示FTP服务器上指定目录或文件的详细信息。
FTP客户端视图
remotefile:待查询的FTP服务器上的目录或文件名。
只有成功登录FTP服务器后才能执行此项操作。
不同FTP服务器对本命令的支持情况可能不同,请以FTP服务器的实际情况为准。
# 显示FTP服务器状态。
211-FTP server status:
Connected to 192.168.20.177
Logged in as root
TYPE: ASCII
No session bandwidth limit
Session timeout in seconds is 300
Control connection is plain text
Data connections will be plain text
At session startup, client count was 1
vsFTPd 2.0.6 - secure, fast, stable
211 End of status
表1-5 rstatus命令显示信息描述表
211:FTP命令字;整个字段表示FTP服务器状态信息开始 |
|
连接的FTP客户端IP地址:192.168.20.177 |
|
超时时间:300,单位为秒 |
|
FTP客户端连接数:1 |
|
FTP版本号:2.0.6;可靠,快速,稳定 |
|
FTP服务器状态信息结束 |
# 查看文件a.txt。
213-Status follows:
-rw-r--r-- 1 0 0 80 Jul 18 02:58 a.txt
213 End of status
表1-6 rstatus命令显示指定文件信息描述表
213:FTP命令字;整个字段表示文件信息开始 |
|
· -:普通文件 · b:块设备文件 · c:字符设备文件 · d:目录 · l:符号连接文件 · p:命名管道文件 · s:socket文件 第二位到第十位分为3组,每组3个字符,分别表示所有者、组和其他用户的访问权限: · -:没有对应权限 · r:有读权限 · w:有写权限 · x:有执行权限 |
|
status命令用来显示当前FTP状态。
FTP客户端视图
# 显示当前FTP状态。
Connected to 192.168.1.56.
No proxy connection.
Not using any security mechanism.
Mode: stream; Type: ascii; Form: non-print; Structure: file
Verbose: on; Bell: off; Prompting: on; Globbing: off
Store unique: off; Receive unique: off
Case: off; CR stripping: on
Ntrans: off
Nmap: off
Hash mark printing: off; Use of PORT cmds: on
表1-7 status命令显示信息描述表
连接到的FTP服务器IP地址 |
|
文件传输模式:数据流;类型:ASCII;格式:非打印;组织结构:文件 |
|
FTP服务器文件名唯一;本地接收文件名唯一 |
|
不以“#”号结尾;使用“PORT”命令字作为数据传输连接 |
system命令用来显示FTP服务器的系统信息。
FTP客户端视图
只有成功登录FTP服务器后才能执行此项操作。
# 显示FTP服务器的系统信息。
215 UNIX Type: L8
user命令用来在成功登录FTP服务器后,使用其他用户身份重新登录当前访问的FTP服务器。
FTP客户端视图
username:其他的登录用户名。
password:登录密码。
只有成功登录FTP服务器后才能执行此项操作。
在使用该命令前,必须事先在FTP服务器上设置相应的用户名和密码,否则将导致登录失败,FTP连接关闭。
# 用户已经登录FTP服务器,现以新身份(用户名ftp,密码123456)重新登录当前FTP服务器。
331 Password required for ftp.
230 User logged in.
331 Password required for ftp.
Password:
230 User logged in.
verbose命令用来允许或者禁止显示FTP操作过程中的详细信息。
允许显示FTP操作过程中的详细信息。
FTP客户端视图
本配置只对当前登录用户生效。当用户重新登录后,本命令将恢复到缺省情况。
# 禁止显示FTP操作过程中的详细信息时,执行get操作。
Verbose mode off.
ftp> get a.cfg 1.cfg
# 允许显示FTP操作过程中的详细信息时,执行get操作。
Verbose mode on.
ftp> get a.cfg 2.cfg
227 Entering Passive Mode (192,168,1,58,68,14)
150-Accepted data connection
150 The computer is your friend. Trust the computer
226 File successfully transferred
3796 bytes received in 0.00762 seconds (486.5 kbyte/s)
?命令用来显示所有FTP客户端支持命令的名字。
? command-name命令用来显示指定命令的帮助信息。
FTP客户端视图
command-name:命令名。
在FTP客户端视图下,?命令等同于help命令。
# 显示FTP客户端支持的所有命令的名字。
Commands may be abbreviated. Commands are:
append delete ls quit rmdir
ascii debug mkdir reget status
binary dir newer rstatus system
bye disconnect open rhelp user
cd get passive rename verbose
cdup help put reset ?
close lcd pwd restart
# 查看dir命令的帮助信息
dir list contents of remote directory
tftp命令用来在IPv4组网环境下执行下列操作:
· 下载文件:将TFTP服务器上的指定源文件下载到本地。
· 上传文件:将本地的指定源文件上传到TFTP服务器。
tftp tftp-server { get | put | sget } source-filename [ destination-filename ] [ vpn-instance vpn-instance-name ] [ dscp dscp-value | source { interface interface-type interface-number | ip source-ip-address } ] *
tftp-server:TFTP服务器的IP地址或主机名。其中,主机名为1~253个字符的字符串,不区分大小写,字符串仅可包含字母、数字、“-”、“_”或“.”。
get:执行下载文件操作。执行该操作时,设备直接将文件保存到存储介质中。如果下载前存储介质中已有同名文件,则先删除存储介质中的已有文件,再下载。如果下载失败,将导致已有文件被删除,不可恢复,因此,不安全。
put:执行上传文件操作。
sget:执行安全下载文件操作。执行该操作时,设备会先将文件保存到内存,保存成功后,再拷贝到存储介质中,并删除内存中的文件。比get方式更加安全。
source-filename:源文件名,为1~255个字符的字符串,不区分大小写。
destination-filename:目标文件名,为1~255个字符的字符串,不区分大小写。如果不指定该参数,则使用源文件名作为目标文件名。
vpn-instance vpn-instance-name:指定TFTP服务器所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果不指定该参数,则表示TFTP服务器位于公网中。
dscp dscp-value:指定设备发送的TFTP报文中携带的DSCP优先级的取值,取值范围为0~63,缺省值为0。
source:发送的TFTP报文的源IP地址。不指定该参数时,则使用路由出接口的主IP地址作为发送的TFTP报文的源IP地址。
· interface interface-type interface-number:表示源接口的类型和编号,此接口下配置的主IP地址将作为设备发送的TFTP报文的源IP地址。请使用配置了主IP地址,并且状态为up的接口作为源接口,否则,文件传输失败。
· ip source-ip-address:源IP地址,该地址将作为设备发送的TFTP报文的源IP地址。该地址必须是设备上已经配置的IP地址,并且地址所在接口状态为up,否则,文件传输失败。
· 使用tftp client source命令指定了源地址后,又在tftp命令中指定了源地址,则采用tftp命令中指定的源地址进行通信。
· tftp client source命令指定的源地址对所有的TFTP传输有效,tftp命令指定的源地址只对当前的TFTP传输有效。
# 将TFTP服务器上的new.bin文件下载到本地存储设备。TFTP服务器的IP地址为192.168.1.1,下载到本地后以文件名new.bin保存。
<Sysname> tftp 192.168.1.1 get new.bin
Press CTRL+C to abort.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 13.9M 100 13.9M 0 0 1206k 0 0:00:11 0:00:11 --:--:-- 1206k
<System>
表2-1 tftp命令显示信息描述表
tftp client source命令用来在IPv4组网环境下配置TFTP客户端发送的TFTP报文的源地址。
undo tftp client source命令用来恢复缺省情况。
tftp client source { interface interface-type interface-number | ip source-ip-address }
没有配置源地址,使用路由出接口的主IP地址作为设备发送TFTP报文的源IP地址。
interface interface-type interface-number:设置TFTP传输使用的源接口,包括接口类型和接口编号,此接口下配置的主IP地址即为发送报文的源地址。请使用配置了主IP地址,并且状态为up的接口作为源接口,否则,文件传输失败。
ip source-ip-address:设置当前TFTP客户端发送报文所使用的源IP地址。该地址必须是设备上已经配置的IP地址,并且地址所在接口状态为up,否则,文件传输失败。
· 使用本命令指定了源地址后,又在tftp命令中指定了源地址,则采用tftp命令中指定的源地址进行通信。
· 本命令指定的源地址对所有的TFTP传输有效,tftp命令指定的源地址只对当前的TFTP传输有效。
# 配置设备发送TFTP报文的源IP地址为192.168.20.222。
[Sysname] tftp client source ip 192.168.20.222
tftp ipv6命令用来在IPv6组网环境下执行下列操作:
· 下载文件:将TFTP服务器上的指定源文件下载到本地。
· 上传文件:将本地的指定源文件上传到TFTP服务器。
tftp-server:TFTP服务器的IPv6地址或主机名。其中,主机名为1~253个字符的字符串,不区分大小写,字符串仅可包含字母、数字、“-”、“_”或“.”。
-i interface-type interface-number:表示出接口的接口类型和接口编号。如果指定的TFTP服务器的地址是链路本地地址的情况,则必须指定出接口而且指定的出接口必须具有链路本地地址(链路本地地址的介绍和配置请参见“三层技术-IP业务配置指导”中的“IPv6基础”)。
get:执行下载文件操作。执行该操作时,设备直接将文件保存到存储介质中。如果下载前存储介质中已有同名文件,则先删除存储介质中的已有文件,再下载。如果下载失败,将导致已有文件被删除,不可恢复,因此,不安全。
put:执行上传文件操作。
sget:执行安全下载文件操作。执行该操作时,设备会先将文件保存到内存,保存成功后,再拷贝到存储介质中,并删除内存中的文件。比get方式更加安全。
source-filename:源文件的名称,为1~255个字符的字符串,不区分大小写。
destination-filename:目的文件的名称,为1~255个字符的字符串,不区分大小写。如果不指定该参数,则目的文件的名称与源文件的名称相同。
vpn-instance vpn-instance-name:指定目的主机所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的主机位于公网中。
dscp dscp-value:指定设备发送的IPv6 TFTP报文中携带的DSCP优先级的取值,取值范围为0~63,缺省值为0。
source:发送的IPv6 TFTP报文的源地址。不指定该参数时,设备自动选择报文的源IPv6地址,具体选择原则请参见RFC 3484。
· interface interface-type interface-number:表示源接口的类型和编号,此接口下配置的IPv6地址将作为设备发送的TFTP报文的源IPv6地址。请使用状态为up的接口作为源接口,否则,文件传输失败。
· ipv6 source-ipv6-address:源IPv6地址,该地址将作为设备发送的TFTP报文的源IPv6地址。该地址必须是设备上已经配置的IPv6地址,并且地址所在接口状态为up,否则,文件传输失败。
· 使用tftp client ipv6 source命令指定了源地址后,又在tftp ipv6命令中指定了源地址,则采用tftp ipv6命令中指定的源地址进行通信。
· tftp client ipv6 source命令指定的源地址对所有的TFTP传输有效,tftp ipv6命令指定的源地址只对当前的TFTP传输有效。
# 将TFTP服务器上的new.bin文件下载到本地存储设备。TFTP服务器的IPv6地址为2001::1,下载到本地之后以文件名new.bin保存。
<Sysname> tftp ipv6 2001::1 get new.bin new.bin
Press CTRL+C to abort.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 13.9M 100 13.9M 0 0 1206k 0 0:00:11 0:00:11 --:--:-- 1206k
tftp client ipv6 source命令用来在IPv6组网环境下配置TFTP客户端发送的TFTP报文的源地址。
undo tftp client ipv6 source命令用来恢复缺省情况。
tftp client ipv6 source { interface interface-type interface-number | ipv6 source-ipv6-address }
没有配置源地址,设备自动选择IPv6 TFTP报文的源IPv6地址,具体选择原则请参见RFC 3484。
interface interface-type interface-number:表示源接口的类型和编号,此接口下配置的IPv6地址即为发送报文的源地址。请使用状态为up的接口作为源接口,否则,文件传输失败。
ipv6 source-ipv6-address:设置当前TFTP客户端发送报文所使用的源IPv6地址。该地址必须是设备上已经配置的IPv6地址,并且地址所在接口状态为up,否则,文件传输失败。
· 多次执行tftp client ipv6 source命令,最新的配置生效。
· 使用该命令指定了源地址后,又在tftp ipv6命令中指定了源地址,则采用tftp ipv6命令中指定的源地址进行通信。
· 本命令指定的源地址对所有的TFTP传输有效,tftp ipv6命令指定的源地址只对当前的TFTP传输有效。
# 配置设备发送的TFTP报文的源IPv6地址为2000::1。
<Sysname> system-view
[Sysname] tftp client ipv6 source ipv6 2000::1
tftp-server acl命令用来在IPv4组网环境下通过ACL控制设备访问FTFP服务器的权限。
undo tftp-server acl命令用来恢复缺省情况。
没有使用ACL对设备可访问的TFTP服务器进行限制。
acl-number:基本访问控制列表的编号,取值范围为2000~2999。
用户利用ACL中配置的规则可以允许或禁止设备对网络中特定TFTP服务器的访问。
# 仅允许设备访问IP地址为1.1.1.1的TFTP服务器。
[Sysname] acl number 2000
[Sysname-acl-basic-2000] rule permit source 1.1.1.1 0
[Sysname-acl-basic-2000] quit
[Sysname] tftp-server acl 2000
tftp-server ipv6 acl命令用来在IPv6组网环境下通过ACL控制设备访问TFTP服务器的权限。
undo tftp-server ipv6 acl命令用来恢复缺省情况。
tftp-server ipv6 acl acl-number
没有使用ACL对设备可访问的IPv6 TFTP服务器进行限制。
acl-number:基本访问控制列表的编号,取值范围为2000~2999。
用户利用ACL中配置的规则可以允许或禁止设备对网络中特定TFTP服务器的访问。
# 仅允许设备访问IP地址为2001::1的TFTP服务器。
<Sysname> System-view
[Sysname] acl ipv6 number 2001
[Sysname-acl6-basic-2001] rule permit source 2001::1/128
[Sysname-acl6-basic-2001] quit
[Sysname] tftp-server ipv6 acl 2001
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!