• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

01-基礎配置指導

目錄

04-FTP和TFTP配置

本章節下載 04-FTP和TFTP配置  (364.45 KB)

04-FTP和TFTP配置


1 FTP

1.1  FTP簡介

FTP(File Transfer Protocol,文件傳輸協議)用於在FTP服務器和FTP客戶端之間傳輸文件,是IP網絡上傳輸文件的通用協議。

FTP協議使用TCP端口20和21進行傳輸。端口20用於傳輸數據,端口21用於傳輸控製消息。

設備既可以作為FTP服務器,也可以作為FTP客戶端。

1.1.1  FTP文件傳輸模式

FTP有兩種文件傳輸模式:

·     二進製模式,用於傳輸非文本文件(比如後綴名為.app、.bin和.btm的文件);

·     ASCII碼模式,用於傳輸文本格式的文件(比如後綴名為.txt、.bat和.cfg的文件)。

當設備作為FTP客戶端時,用戶可通過命令行指定使用的傳輸模式,缺省為二進製模式;當設備作為FTP服務器時,使用的傳輸模式由FTP客戶端決定。

1.1.2  FTP工作方式

FTP有兩種工作方式:

·     主動方式(PORT):建立數據連接時由FTP服務器發起連接請求,當FTP客戶端處於防火牆後時不適用(如FTP客戶端處於私網內)。

·     被動方式(PASV):建立數據連接時由FTP客戶端發起連接請求,當FTP服務器限製客戶端連接其高位端口(一般情況下大於1024)時不適用。

是否使用被動方式由FTP客戶端程序決定,不同FTP客戶端軟件對FTP工作方式的支持情況可能不同,請在使用時以軟件的實際情況為準。

1.2  配置FTP服務器

1.2.1  FTP服務器配置任務簡介

FTP服務器配置任務如下:

(1)     啟動FTP服務器功能

(2)     配置FTP服務器的認證和授權

(3)     (可選)配置FTP服務器訪問限製

(4)     (可選)配置FTP服務器連接管理參數

(5)     (可選)配置FTP服務器引用SSL

(6)     (可選)配置FTP服務器發送報文的DSCP優先級

(7)     (可選)釋放已建立的FTP連接

1.2.2  啟動FTP服務器功能

(1)     進入係統視圖。

system-view

(2)     啟動FTP服務器功能。

ftp server enable

缺省情況下,FTP服務器功能處於關閉狀態。

1.2.3  配置FTP服務器的認證和授權

隻有認證通過並授權成功的用戶,才能通過FTP訪問設備上的指定路徑。

設備對FTP客戶端的認證,有以下兩種方式:

·     本地認證:設備作為認證服務器,在本設備上驗證FTP客戶端的用戶名和密碼是否合法。

·     遠程認證:遠程認證是指設備將用戶輸入的用戶名/密碼發送給遠端的認證服務器,由認證服務器來驗證用戶名/密碼是否匹配。

設備對FTP客戶端的授權,有以下兩種方式:

·     本地授權:設備給FTP客戶端授權,指定FTP客戶端可以使用設備上的某個路徑。

·     遠程授權:遠程服務器給FTP客戶端授權,指定FTP客戶端可以使用設備上的某個路徑。

關於認證和授權的詳細配置請參見“用戶接入與認證配置指導”中的“AAA”。

1.2.4  配置FTP服務器訪問限製

1. 功能簡介

通過將FTP服務與ACL關聯,可以過濾掉來自某些FTP客戶端的FTP請求報文,隻允許符合ACL過濾規則的FTP客戶端訪問設備。

2. 配置限製和指導

配置ACL限製FTP客戶端時:

·     當未引用ACL時,允許所有FTP客戶端訪問設備;

·     當引用的ACL不存在或者為空時,禁止所有FTP客戶端訪問設備;

·     當引用的ACL非空時,則隻有ACL中permit的用戶才能訪問設備,禁止其他用戶訪問設備,以避免非法用戶訪問設備;

·     如果多次使用該命令配置FTP服務與ACL關聯,最新配置生效。

·     在引用的ACL中,若某規則指定了vpn-instance參數,則表示該規則僅對VPN報文有效;若規則未指定vpn-instance參數,則表示該規則僅對公網報文有效。

關於ACL的詳細描述和介紹請參見“ACL和QoS配置指導”中的“ACL”。

該配置隻過濾新建立的FTP連接,不會對已建立的FTP連接和操作造成影響。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置FTP服務器訪問限製。

ftp server acl { advanced-acl-number | basic-acl-number | ipv6 { advanced-acl-number | basic-acl-number } }

缺省情況下,FTP服務器的訪問不受ACL限製。

1.2.5  配置FTP服務器連接管理參數

(1)     進入係統視圖。

system-view

(2)     配置FTP服務器的連接空閑時間。

ftp timeout minutes

缺省情況下,連接空閑時間為30分鍾。

如果在設置的連接空閑時間到期時,FTP服務器和客戶端一直沒有信息交互,則斷開它們之間的連接。

(3)     配置使用FTP方式同時登錄設備的在線的最大用戶連接數。

aaa session-limit ftp max-sessions

缺省的最大用戶連接數為32。

配置本命令後,已經在線的用戶連接不會受到影響,隻對新的用戶連接生效。如果當前在線的用戶連接數已經達到最大值,則新的連接請求會被拒絕,登錄會失敗。

關於該命令的詳細描述請參見“用戶接入與認證命令參考”中的“AAA”。

1.2.6  配置FTP服務器引用SSL

1. 功能簡介

當支持FTP安全擴展協議的兩台設備建立FTP連接時,通過將FTP服務與SSL服務器端策略關聯,可以建立一條安全的SSL連接來傳輸數據,保證FTP傳輸的安全性。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置FTP服務器引用SSL。

ftp server ssl-server-policy policy-name

缺省情況下,FTP服務器未引用SSL服務器端策略。

1.2.7  配置FTP服務器發送報文的DSCP優先級

(1)     進入係統視圖。

system-view

(2)     配置FTP服務器發送的FTP報文的DSCP優先級。

(IPv4網絡)

ftp server dscp dscp-value

(IPv6網絡)

ftp server ipv6 dscp dscp-value

缺省情況下,FTP服務器發送的FTP報文的DSCP優先級為0。

1.2.8  釋放已建立的FTP連接

請在用戶視圖下執行本命令,釋放已建立的FTP連接。請選擇其中一項進行配置。

·     強製釋放與指定用戶之間的FTP連接。

free ftp user username

·     強製釋放與指定IP地址的主機之間的FTP連接。

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

1.2.9  FTP服務器顯示和維護

可在任意視圖下執行以下命令:

·     查看當前FTP服務器的配置和運行情況。

display ftp-server

·     查看當前FTP登錄用戶的詳細情況。

display ftp-user

1.2.10  FTP服務器典型配置舉例

1. 組網需求

·     Device作為FTP服務器,PC作為FTP客戶端。

·     將存儲在PC上的文件temp.bin上傳到FTP服務器,並使用FTP功能備份Device的啟動配置文件。

·     FTP客戶端登錄FTP服務器的用戶名為abc,密碼為hello12345。

2. 組網圖

圖1-1 FTP服務器典型配置組網圖

 

3. 配置準備

配置前請確保Device和PC之間路由可達,IP地址如圖1-1所示。

4. 配置步驟

(1)     配置Device(FTP server)

# 在Device上添加一個本地用戶abc,並設置其認證密碼為hello12345,訪問時使用的用戶角色為network-admin,授權訪問目錄為Flash的根目錄,abc可以使用的服務類型為FTP。

<Sysname> system-view

[Sysname] local-user abc class manage

[Sysname-luser-manage-abc] password simple hello12345

[Sysname-luser-manage-abc] authorization-attribute user-role network-admin work-directory flash:/

說明

如果要直接訪問備用主控板(所在槽位號為1)Flash的根目錄,需要將“authorization-attribute work-directory flash:/”配置中的“flash:/”替換成“slot1#flash:/”。

 

[Sysname-luser-manage-abc] service-type ftp

[Sysname-luser-manage-abc] quit

# 啟動Device的FTP服務功能。

[Sysname] ftp server enable

[Sysname] quit

# 刪除Device中的多餘文件,以保證剩餘足夠的空間,用於存儲需要上傳的文件。

<Sysname> dir

Directory of flash:

     0      drw-           -  Jan 29 2020 18:30:38     logfile

     1      drw-           -  Jan 21 2020 14:51:38     diagfile

     2      drw-           -  Jan 21 2020 14:51:38     seclog

     3      -rw-        2943  Jan 02 2020 08:03:08     startup.cfg

     4      -rw-       63901  Jan 02 2020 08:03:08     startup.mdb

     5      -rw-         716  Jan 21 2020 14:58:02     hostkey

     6      -rw-         572  Jan 21 2020 14:58:02     serverkey

     7      -rw-     6541264  Jan 04 2020 20:40:49     backup.bin

 

473664 KB total (467080 KB free)

<Sysname> delete /unreserved flash:/backup.bin

(2)     配置PC(FTP client)

# 以用戶名abc、密碼hello12345登錄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,並將Device的配置文件startup.cfg下載到PC本地進行備份。

ftp> ascii

200 TYPE is now ASCII

ftp> get startup.cfg back-startup.cfg

# 將傳輸模式設置為binary,並上傳文件temp.bin到主用主控板存儲介質的根目錄下。

ftp> binary

200 TYPE is now 8-bit binary

ftp> put temp.bin

# 退出FTP。

ftp> bye

1.3  配置FTP客戶端

1.3.1  FTP客戶端配置任務簡介

FTP客戶端配置任務如下:

(1)     建立FTP連接

(2)     (可選)顯示幫助信息

(3)     (可選)查看FTP服務器上的目錄/文件

(4)     (可選)操作FTP服務器上的目錄

(5)     (可選)操作FTP服務器上的文件

(6)     (可選)更改登錄用戶

(7)     (可選)FTP連接的維護與調試

(8)     (可選)斷開FTP連接

1.3.2  建立FTP連接

1. 建立FTP連接配置任務簡介

建立FTP連接配置任務如下:

(1)     (可選)配置FTP客戶端發送的FTP報文的源地址

(2)     登錄FTP服務器

(3)     配置FTP文件傳輸方式

2. 配置限製和指導

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

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

3. 配置FTP客戶端發送的FTP報文的源地址

(1)     進入係統視圖。

system-view

(2)     配置FTP客戶端發送的FTP報文的源地址。

(IPv4網絡)

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

缺省情況下,未配置源地址,使用路由出接口的主IP地址作為設備發送FTP報文的源IP地址。

(IPv6網絡)

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

缺省情況下,未配置源地址,設備自動選擇IPv6 FTP報文的源IPv6地址,具體選擇原則請參見RFC 3484。

4. 登錄FTP服務器

·     從用戶視圖登錄FTP服務器。

IPv4網絡)

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

(IPv6網絡)

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

·     從FTP客戶端視圖登錄FTP服務器。

a.     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp [ ipv6 ]

b.     登錄FTP服務器。

open server-address [ service-port ]

5. 配置FTP文件傳輸方式

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     設置FTP文件傳輸的模式。

¡     配置FTP文件傳輸的模式為ASCII模式。

ascii

¡     配置FTP文件傳輸的模式為二進製模式。

binary

缺省情況下,文件傳輸模式為二進製模式。

(3)     切換數據的傳輸方式。

passive

缺省情況下,數據傳輸的方式為被動方式。

1.3.3  顯示幫助信息

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     顯示命令或命令的幫助信息。

¡     方式一

help [ command-name ]

¡     方式二

? [ command-name ]

1.3.4  查看FTP服務器上的目錄/文件

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     查看FTP服務器上的目錄/文件。

¡     方式一

dir [ remotefile [ localfile ] ]

¡     方式二

ls [ remotefile [ localfile ] ]

1.3.5  操作FTP服務器上的目錄

1. 配置準備

使用dir或者ls命令查看FTP服務器上的目錄/文件的詳細信息。

2. 配置步驟

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     操作FTP服務器上的目錄

¡     顯示當前用戶正在訪問的FTP服務器上的路徑。

pwd

¡     切換FTP服務器上的工作路徑。

cd { directory | .. | / }

¡     退出FTP服務器的當前目錄,返回FTP服務器的上一級目錄。

cdup

¡     在FTP服務器上創建目錄。

mkdir directory

¡     刪除FTP服務器上指定的目錄。

rmdir directory

注意

執行本命令前,請確認指定目錄不會再被使用,以免誤刪有用目錄。

 

1.3.6  操作FTP客戶端本地的工作目錄

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     顯示或切換FTP客戶端本地的工作路徑。

lcd [ directory | / ]

上傳的文件為該路徑下的文件時,缺省情況下文件下載後也將保存到該路徑。

1.3.7  操作FTP服務器上的文件

1. 配置準備

使用dir或者ls命令了解FTP服務器上的目錄結構以及文件所處的位置。

2. 配置步驟

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     操作FTP服務器上的文件

¡     刪除FTP服務器上的文件。

delete remotefile

注意

執行本命令前,請確認指定文件不會再被使用,以免誤刪有用文件。

 

用戶必須具有刪除的權限才能執行該操作。

¡     重命名文件。

rename [ oldfilename [ newfilename ] ]

¡     上傳本地文件到FTP服務器。

put localfile [ remotefile ]

¡     下載FTP服務器上的文件。

get remotefile [ localfile ]

¡     在原文件的內容後麵添加新文件的內容。

append localfile [ remotefile ]

¡     指定重傳點。

restart marker

配合putgetappend等命令使用。

¡     更新本地文件。

newer remotefile

¡     從本地文件的尾部開始獲取文件的剩餘內容。

reget remotefile [ localfile ]

1.3.8  更改登錄用戶

1. 功能簡介

當設備作為FTP客戶端,與FTP服務器連接建立成功後,可以通過該功能實現不同權限用戶之間的切換。用戶成功切換後,不會影響當前的FTP連接(即FTP控製連接、數據連接以及連接狀態都不變)。

2. 配置限製和指導

如果在用戶切換時,輸入的用戶名/密碼錯誤,則會斷開當前連接,用戶必須重新登錄才能繼續訪問FTP服務器。

3. 配置步驟

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     在現有FTP連接上重新發起FTP認證。

user username [ password ]

1.3.9  FTP連接的維護與調試

1. 功能簡介

當設備作為FTP客戶端,與FTP服務器連接建立成功後,通過以下命令,可以幫助用戶定位和診斷FTP連接出現的問題。

2. 配置步驟

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     維護與調試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.10  斷開FTP連接

(1)     請在用戶視圖下執行本命令,進入FTP客戶端視圖。

ftp

(2)     斷開與FTP服務器的連接。請選擇其中一項進行配置。

¡     斷開與FTP服務器的連接,並留在FTP客戶端視圖。請選擇其中一項進行配置。

disconnect

close

¡     斷開與FTP服務器的連接,並退回到用戶視圖。請選擇其中一項進行配置。

bye

quit

1.3.11  FTP客戶端顯示和維護

可在任意視圖下執行以下命令,顯示設備作為FTP客戶端時的源地址配置。

display ftp client source

1.3.12  FTP客戶端典型配置舉例

1. 組網需求

·     Device作為FTP客戶端,PC作為FTP服務器。

·     Device從PC上下載文件temp.bin,並將啟動配置文件上傳到PC進行備份。

·     PC上已設置Device登錄FTP服務器的用戶名為abc,密碼為hello12345。

2. 組網圖

圖1-2 FTP客戶端典型配置組網圖

 

3. 配置限製和指導

如果設備剩餘的內存空間不夠,請使用delete /unreserved file-url命令刪除部分暫時不用的文件後再執行以下操作。

4. 配置準備

配置前請確保Device和PC之間路由可達,IP地址如圖1-2所示。

5. 配置步驟

# 以用戶名abc、密碼hello12345登錄FTP服務器。

<Sysname> ftp 10.1.1.1

Press CTRL+C to abort.

Connected to 10.1.1.1 (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服務器下載到Device。

·     將文件temp.bin從FTP服務器下載到主用主控板存儲介質的根目錄下。

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服務器下載到備用主控板(所在槽位號為1)存儲介質的根目錄下。

ftp> get temp.bin slot1#flash:/temp.bin

# 將Device的啟動配置文件startup.cfg上傳到FTP服務器進行備份。

ftp> ascii

200 TYPE is now ASCII

ftp> put startup.cfg back-startup.cfg

local: startup.cfg remote: back-startup.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不需要認證,沒有複雜的報文交互,部署簡單,適用於客戶端和服務器均很可靠的網絡環境。

2.2  TFTP配置限製和指導

當設備作為TFTP客戶端時,可以把設備的文件上傳到TFTP服務器,還可以從TFTP服務器下載文件到設備。如果下載時設備上已經存在一個和目標文件名同名的文件,則係統會先將設備上已有的文件刪除,再保存遠端文件。如果下載失敗(如網絡斷開等原因),則原文件已被刪除,無法恢複。因此,當下載啟動文件或配置文件等重要文件時,建議使用一個當前目錄下不存在的文件名作為目標文件名。

目前,設備隻能作為TFTP客戶端,不支持作為TFTP服務器。

2.3  配置IPv4 TFTP客戶端

(1)     進入係統視圖。

system-view

(2)     (可選)使用ACL限製設備可訪問哪些TFTP服務器。

tftp-server acl acl-number

缺省情況下,未使用ACL對設備可訪問的TFTP服務器進行限製。

(3)     配置TFTP客戶端的源地址。

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

缺省情況下,未配置源地址,使用路由出接口的主IP地址作為設備發送TFTP報文的源IP地址。

(4)     退回用戶視圖。

quit

(5)     在IPv4網絡,用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 } ] * [ -d ]

使用tftp client source命令指定了源地址後,又在tftp命令中指定了源地址,則采用tftp命令中指定的源地址進行通信。

2.4  配置IPv6 TFTP客戶端

(1)     進入係統視圖。

system-view

(2)     (可選)在IPv6網絡,使用ACL限製設備可訪問哪些TFTP服務器。

tftp-server ipv6 acl ipv6-acl-number

缺省情況下,未使用ACL對設備可訪問的TFTP服務器進行限製。

(3)     在IPv6網絡,配置TFTP客戶端的源地址。

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

缺省情況下,未配置源地址,設備自動選擇IPv6 TFTP報文的源IPv6地址,具體選擇原則請參見RFC 3484。

(4)     退回用戶視圖。

quit

(5)     在IPv6網絡,用TFTP上傳/下載文件。

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

使用tftp client ipv6 source命令指定了源地址後,又在tftp ipv6命令中指定了源地址,則采用tftp ipv6命令中指定的源地址進行通信。

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們