• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

01 基础配置指导

04-FTP和TFTP配置

本章节下载 04-FTP和TFTP配置  (264.33 KB)

04-FTP和TFTP配置


1 FTP

1.1  FTP简介

FTP(File Transfer Protocol,文件传输协议)用于在FTP服务器和FTP客户端之间传输文件,是IP网络上传输文件的通用协议。

FTP使用TCP端口20和21进行传输。端口20用于传输数据,端口21用于传输控制消息。FTP协议基本操作在RFC959中进行了描述。

FTP有两种文件传输模式:

·              二进制模式,用于传输程序文件(比如后缀名为.app、.bin和.btm的文件);

·              ASCII码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat和.cfg的文件)。

缺省情况下,FTP服务器传输模式为ASCII码模式。

FTP有两种工作方式:

·              主动方式(PORT):建立数据连接时由FTP服务器发起连接请求,当FTP客户端处于防火墙后时不适用(如FTP客户端处于私网内)。

·              被动方式(PASV):建立数据连接时由FTP客户端发起连接请求,当FTP服务器限制客户端连接其高位端口(一般情况下大于1024)时不适用。

是否使用被动方式由FTP客户端程序决定,不同FTP客户端软件对FTP工作方式的支持情况可能不同,请在使用时以软件的实际情况为准。

设备可以作为FTP服务器,也可以作为FTP客户端。

图1-1 FTP组网应用示意图

 

注意

在建立FTP连接前请确保FTP服务器与FTP客户端之间路由可达,否则,连接建立失败。

 

1.2  配置FTP服务器

当设备作为FTP服务器时,可以进行如下配置。

1.2.1  FTP服务器的基本配置

表1-1 配置FTP服务器

操作

命令

说明

进入系统视图

system-view

-

启动FTP服务器功能

ftp server enable

缺省情况下,FTP服务器功能处于关闭状态

(可选)使用ACL(Access Control List,访问控制列表)限制哪些FTP客户端可以访问设备

ftp server acl acl-number

缺省情况下,没有使用ACL限制FTP客户端

(可选)配置FTP服务器的连接空闲时间

ftp timeout minutes

缺省情况下,连接空闲时间为30分钟

如果在设置的连接空闲时间到期时,FTP服务器和客户端一直没有信息交互,则断开它们之间的连接

 

1.2.2  配置FTP服务器的认证和授权

只有认证通过并授权成功的用户,才能通过FTP访问设备上的指定路径。

在设备在对FTP客户端进行认证时,有以下两种方式:

·              本地认证:设备作为认证服务器,在本设备上验证FTP客户端的用户名和密码是否合法。

·              远程认证:远程认证是指设备将用户输入的用户名/密码发送给远端的认证服务器,由认证服务器来验证用户名/密码是否匹配。

在设备在对FTP客户端进行授权时,有以下两种方式:

·              本地授权:设备给FTP客户端授权,指定FTP客户端可以使用设备上的某个路径。

·              远程授权:远程服务器给FTP客户端授权,指定FTP客户端可以使用设备上的某个路径。

关于认证和授权的详细配置请参见“安全配置指导”中的“AAA”。

1.2.3  释放已建立的FTP连接

表1-2 释放已建立的FTP连接

操作

命令

说明

强制释放与指定用户之间的FTP连接

free ftp user username

二者必选其一

两条命令均在用户视图下执行

强制释放与指定IP地址的主机之间的FTP连接

free ftp user-ip [ ipv6 ] client-address [ port port-num ]

 

1.2.4  FTP服务器显示和维护

完成上述配置后,在任意视图下执行display命令可以显示FTP服务器的配置和运行情况,通过查看显示信息验证配置的效果。

表1-3 FTP服务器显示和维护

操作

命令

查看当前FTP服务器的配置和运行情况

display ftp-server

查看当前FTP登录用户的详细情况

display ftp-user

 

1.2.5  FTP服务器典型配置举例

1. 组网需求

·              Master和Slave两台成员设备组成IRF(Intelligent Resilient Framework,智能弹性架构),Master负责管理整个IRF,Slave作为Master的备份设备。Master的成员编号为1,Slave的成员编号为2。

·              IRF作为FTP服务器,PC作为FTP客户端。

·              将存储在PC上的文件temp.bin上传到FTP服务器,并使用FTP功能备份IRF的配置文件。

·              FTP客户端登录FTP服务器的用户名为abc,密码为123456。

2. 组网图

图1-2 FTP服务器功能组网图

 

3. 配置步骤

注意

如果Master和Slave剩余的内存空间不够,请使用delete/unreserved file-url命令删除部分暂时不用的文件后再执行以下操作。

 

配置前请确保IRF和PC之间路由可达,IP地址如图1-2所示,具体配置步骤略。

(1)      IRF(FTP server)上的配置

# 在IRF上添加一个本地用户abc,并设置其认证密码为123456,授权访问目录为Flash的根目录,abc可以使用的服务类型为FTP。

<Sysname> system-view

[Sysname] local-user abc

[Sysname-luser-abc] password simple 123456

[Sysname-luser-abc] authorization-attribute work-directory flash:/

说明

如果要直接访问Slave(成员编号为2) Flash的根目录,需要将“authorization-attribute work-directory flash:/”配置中的“flash:/”替换成“slot2#flash:/”。

 

[Sysname-luser-abc] service-type ftp

[Sysname-luser-abc] quit

# 启动IRF的FTP服务功能。

[Sysname] ftp server enable

[Sysname] quit

(2)      PC(FTP client)的配置

# 以用户名abc、密码123456登录FTP服务器。

c:\> ftp 1.1.1.1

Connected to 1.1.1.1.

220 FTP service ready.

User(1.1.1.1:(none)):abc

331 Password required for abc.

Password:

230 User logged in.

# 将传输模式设置为ascii,并将IRF的配置文件config.cfg下载到PC本地进行备份。

ftp> ascii

200 TYPE is now ASCII

ftp> get config.cfg back-config.cfg

# 将传输模式设置为binary,并上传文件temp.bin到Master存储介质的根目录下。

ftp> binary

200 TYPE is now 8-bit binary

ftp> put temp.bin

# 退出FTP。

ftp> bye

1.3  配置FTP客户端

1.3.1  建立FTP连接

FTP客户端要访问FTP服务器,必须先与FTP服务器建立连接。连接的建立方式有两种,一种是使用ftp命令直接建立连接;一种是在FTP客户端视图下使用open命令间接建立连接。

在使用ftp命令建立FTP连接时,还可以进行源地址绑定。源地址绑定可以通过指定源接口(建议使用LoopBack接口)或源IP地址来实现。

表1-4 建立FTP连接(IPv4组网环境)

操作

命令

说明

进入系统视图

system-view

-

(可选)在IPv4组网环境下配置FTP客户端发送的FTP报文的源地址

ftp client source { interface interface-type interface-number | ip source-ip-address }

缺省情况下,没有配置源地址,使用路由出接口的主IP地址作为设备发送FTP报文的源IP地址

退回用户视图

quit

-

在用户视图下直接登录FTP服务器

ftp server-address [ service-port ] [ vpn-instance vpn-instance-name ] [ source { interface interface-type interface-number | ip source-ip-address } ]

二者选其一

ftp命令直接在用户视图下执行;open命令在FTP客户端视图下执行

在FTP客户端视图下间接登录FTP服务器

ftp

open server-address [ service-port ]

 

说明

·       多次执行ftp client source命令,最新的配置生效。

·       使用ftp client source命令指定了源地址后,又在ftp命令中指定了源地址,则采用ftp命令中指定的源地址进行通信。

 

 

表1-5 建立FTP连接(IPv6组网环境)

操作

命令

说明

进入系统视图

system-view

-

(可选)在IPv6组网环境下配置FTP客户端发送的FTP报文的源地址

ftp client ipv6 source { interface interface-type interface-number | ipv6 source-ipv6-address }

缺省情况下,没有配置源地址,设备自动选择IPv6 FTP报文的源IPv6地址,具体选择原则请参见RFC 3484

退回用户视图

quit

-

在用户视图下直接登录FTP服务器

ftp ipv6 server-address [ service-port ] [ vpn-instance vpn-instance-name ] [ source { interface  interface-type interface-number | ipv6 source-ipv6-address } ] [ -i interface-type interface-number ]

二者必选其一

ftp ipv6命令直接在用户视图下执行;open命令在FTP客户端视图下执行

在FTP客户端视图下间接登录FTP服务器

ftp ipv6

open server-address [ service-port ]

 

说明

·       多次执行ftp client ipv6 source命令,最新的配置生效。

·       使用ftp client ipv6 source命令指定了源地址后,又在ftp ipv6命令中指定了源地址,则采用ftp ipv6命令中指定的源地址进行通信。

 

 

1.3.2  操作FTP服务器上的目录

当设备作为FTP客户端,与FTP服务器成功建立连接后,在FTP服务器的授权目录下,用户可以进行创建、删除文件夹等操作。

表1-6 操作FTP服务器上的目录

操作

命令

说明

查看FTP服务器上的目录/文件的详细信息

dir [ remotefile [ localfile ] ]

二者选其一

ls [ remotefile [ localfile ] ]

切换FTP服务器上的工作路径

cd { directory | .. | / }

-

退出FTP服务器的当前目录,返回FTP服务器的上一级目录

cdup

-

显示当前用户正在访问的FTP服务器上的路径

pwd

-

在FTP服务器上创建目录

mkdir directory

-

删除FTP服务器上指定的目录

rmdir directory

-

 

1.3.3  操作FTP服务器上的文件

当设备作为FTP客户端,与FTP服务器成功建立连接后,在FTP服务器的授权目录下,用户可以通过以下操作,向FTP服务器上传或从FTP服务器下载文件,推荐使用以下步骤:

(1)      使用dir或者ls命令了解FTP服务器上的目录结构以及文件所处的位置。

(2)      删除过时文件,以便有效利用存储空间。

(3)      设置传输模式。FTP传输文件有两种模式:一种是ASCII码模式,用于传输文本文件;另一种是二进制模式,用于传输程序文件。

(4)      使用lcd命令了解用户登录FTP服务器前在FTP客户端上的工作路径。无论使用相对路径还是绝对路径进行上传/下载操作,上传的将是该路径下的文件,文件下载后也将保存到该路径下。

(5)      进行上传/下载操作。

表1-7 操作FTP服务器上的文件

操作

命令

说明

查看FTP服务器上的目录/文件的详细信息

dir [ remotefile [ localfile ] ]

二者选其一

ls [ remotefile [ localfile ] ]

彻底删除FTP服务器上的指定文件

delete remotefile

-

设置FTP文件传输的模式为ASCII模式

ascii

缺省情况下,文件传输模式为ASCII模式

设置FTP文件传输的模式为二进制模式

binary

缺省情况下,文件传输模式为ASCII模式

切换数据的传输方式

passive

缺省情况下,数据传输的方式为被动方式

获取FTP客户端本地的工作路径

lcd

-

上传本地文件到FTP服务器

put localfile [ remotefile ]

-

下载FTP服务器上的文件

get remotefile [ localfile ]

-

在原文件的内容后面添加新文件的内容

append localfile [ remotefile ]

-

指定重传点

restart marker

配合putgetappend等命令使用

更新本地文件

newer remotefile

-

从本地文件的尾部开始获取文件的剩余内容

reget remotefile [ localfile ]

-

重命名文件

rename [ oldfilename [ newlfilename ] ]

-

 

1.3.4  更改登录用户

当设备作为FTP客户端,与FTP服务器连接建立成功后,可以更改登录用户。

该功能通常用于不同权限用户之间的切换,用户的成功切换不会影响当前的FTP连接(即FTP控制连接、数据连接以及连接状态都不变);如果输入的用户名/密码错误,则会断开当前连接,用户必须重新登录才能继续访问FTP服务器。

表1-8 更改登录用户

操作

命令

说明

成功登录FTP服务器后,使用其他用户身份重新登录

user username [ password ]

-

 

1.3.5  FTP连接的维护与调试

当设备作为FTP客户端,与FTP服务器连接建立成功后,通过以下命令,可以帮助用户定位和诊断FTP连接过程中出现的问题。

表1-9 FTP连接的维护与调试

操作

命令

说明

显示FTP服务器支持的FTP相关协议命令

rhelp

-

显示FTP服务器支持的FTP相关协议命令的帮助信息

rhelp protocol-command

-

显示FTP服务器的状态

rstatus

-

显示FTP服务器上指定目录或文件的详细信息

rstatus remotefile

-

显示当前FTP连接的状态

status

-

显示FTP服务器的系统信息

system

-

切换FTP功能的协议信息开关

verbose

缺省情况下,FTP协议信息开关处于开启状态

打开FTP调试信息开关

debug

缺省情况下,FTP客户端调试信息开关处于关闭状态

清除缓存的命令应答

reset

-

 

1.3.6  断开FTP连接

当设备作为FTP客户端,与FTP服务器连接建立成功后,可以使用以下任意一条命令来断开FTP连接。

表1-10 断开FTP连接

操作

命令

说明

不退出FTP客户端视图的前提下,断开与FTP服务器的连接

disconnect

二者选其一

在FTP客户端视图下执行

close

断开与FTP服务器的连接,并退回到用户视图

bye

二者选其一

在FTP客户端视图下执行

quit

 

1.3.7  显示帮助信息

当设备作为FTP客户端,与FTP服务器连接建立成功后,可以使用以下任意一条命令显示命令或命令的帮助信息。

表1-11 显示帮助信息

操作

命令

说明

显示命令或命令的帮助信息

help [ command-name ]

二者必选其一

? [ command-name ]

 

1.3.8  FTP客户端显示和维护

在完成上述配置后,可在任意视图下执行display命令,通过查看显示信息验证配置的效果。

表1-12 FTP客户端显示和维护

操作

命令

显示设备作为FTP客户端时的源地址配置

display ftp client source

 

 

1.3.9  FTP客户端典型配置举例

1. 组网需求

·              Master和Slave两台成员设备组成IRF。Master的成员编号为1,Slave的成员编号为2。

·              IRF作为FTP客户端,PC作为FTP服务器。

·              IRF从PC上下载新的文件temp.bin,并将配置文件上传到PC进行备份。

·              PC上已设置设备登录FTP服务器的用户名为abc,密码为123456。

2. 组网图

图1-3 FTP客户端功能组网图

 

3. 配置步骤

注意

如果设备剩余的内存空间不够,请使用delete /unreserved file-url命令删除部分暂时不用的文件后再执行以下操作。

 

配置前请确保IRF和PC之间路由可达,IP地址如图1-3所示,具体配置步骤略。

# 以用户名abc、密码123456登录FTP服务器。

<Sysname>ftp 10.1.1.1

Connected to 10.1.1.1.

220 WFTPD 2.0 service (by Texas Imperial Software) ready for new user

User (10.1.1.1:(none)): abc

331 Give me your password, please

Password:

230 Logged in successfully

Remote system type is MSDOS.

ftp>

# 将传输模式设置为binary,以便传输文件。

ftp> binary

200 TYPE is now 8-bit binary

# 将文件temp.bin从FTP服务器下载到IRF。

·              将文件temp.bin从FTP服务器下载到Master存储介质的根目录下。

ftp> get temp.bin

local: temp.bin remote: temp.bin

150 Connecting to port 47457

226 File successfully transferred

23951480 bytes received in 95.399 seconds (251.0 kbyte/s)

·              将文件temp.bin从FTP服务器下载到Slave(成员编号为2)存储介质的根目录下。

ftp> get temp.bin /mnt/slot2#flash:/temp.bin

# 将IRF的配置文件config.cfg上传到FTP服务器进行备份。

ftp> ascii

200 TYPE is now ASCII

ftp> put config.cfg back-config.cfg

local: config.cfg remote: back-config.cfg

150 Connecting to port 47461

226 File successfully transferred

3494 bytes sent in 5.646 seconds (618.00 kbyte/s)

ftp> bye

221-Goodbye. You uploaded 2 and downloaded 2 kbytes.

221 Logout.

<Sysname>


2 TFTP

2.1  TFTP简介

TFTP(Trivial File Transfer Protocol,简单文件传输协议)用于在TFTP服务器和TFTP客户端之间传输文件。它基于UDP协议,使用UDP端口建立连接、收/发数据报文。与基于TCP的FTP协议比较,TFTP不需要认证,没有复杂的报文交互,部署简单,适用于客户端和服务器均很可靠的网络环境。

目前,设备只能作为TFTP客户端,不支持作为TFTP服务器。

图2-1 TFTP组网示意图

 

2.2  配置TFTP客户端

当设备作为TFTP客户端时,可以把设备的文件上传到TFTP服务器,还可以从TFTP服务器下载文件到设备。如果下载时设备上已经存在一个和目标文件名同名的文件,则系统会先将设备上已有的文件删除,再保存远端文件。如果下载失败(如网络断开等原因),则原文件已被删除,无法恢复。因此,当下载启动文件或配置文件等重要文件时,建议使用一个当前目录下不存在的文件名作为目标文件名。

表2-1 配置TFTP客户端

操作

命令

说明

进入系统视图

system-view

-

使用ACL限制设备可访问哪些TFTP服务器

tftp-server acl acl-number

-

缺省情况下,没有使用ACL对设备可访问的TFTP服务器进行限制

配置TFTP客户端的源地址

tftp client source { interface interface-type interface-number | ip source-ip-address }

缺省情况下,没有配置源地址,使用路由出接口的主IP地址作为设备发送TFTP报文的源IP地址

退回用户视图

quit

-

在IPv4网络,用TFTP上传/下载文件

tftp server-address { get | put } source-filename [ destination-filename ] [ vpn-instance vpn-instance-name ] [ source { interface interface-type interface-number | ip source-ip-address } ]

该命令在用户视图下执行

 

说明

·       多次执行tftp client source命令,最新的配置生效。

·       使用tftp client source命令指定了源地址后,又在tftp命令中指定了源地址,则采用tftp命令中指定的源地址进行通信。

 

表2-2 配置IPv6 TFTP客户端

操作

命令

说明

进入系统视图

system-view

-

在IPv6网络,使用ACL限制设备可访问哪些TFTP服务器

tftp-server ipv6 acl acl-number

缺省情况下,没有使用ACL对设备可访问的TFTP服务器进行限制

在IPv6网络,配置TFTP客户端的源地址

tftp ipv6 client source { interface interface-type interface-number | ipv6 source-ip-address }

缺省情况下,没有配置源地址,设备自动选择IPv6 TFTP报文的源IPv6地址,具体选择原则请参见RFC 3484

退回用户视图

quit

-

在IPv6网络,用TFTP上传/下载文件

tftp ipv6 tftp-ipv6-server [ -i interface-type interface-number ] { get | put } source-filename [ destination-filename ] [ vpn-instance vpn-instance-name ] [ source { interface interface-type interface-number | ipv6 source-ipv6-address } ]

该命令在用户视图下执行

 

说明

·       多次执行tftp ipv6 client source命令,最新的配置生效。

·       使用tftp ipv6 client source命令指定了源地址后,又在tftp ipv6命令中指定了源地址,则采用tftp ipv6命令中指定的源地址进行通信。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们