3 配置ftp文件服务器,03-FTP和TFTP配置
1.1? FTP簡介
FTP(File Transfer Protocol,文件傳輸協議)用于在遠端服務器和本地主機之間傳輸文件,是IP網絡上傳輸文件的通用協議。在萬維網(WWW,World Wide Web)出現以前,用戶使用命令行方式傳輸文件,最通用的應用程序就是FTP。雖然目前大多數用戶在通常情況下選擇使用Email和Web傳輸文件,但是FTP仍然有著比較廣泛的應用。
FTP協議在TCP/IP協議族中屬于應用層協議,用于在遠端服務器和本地客戶端之間傳輸文件,使用TCP端口20和21進行傳輸。端口20用于傳輸數據,端口21用于傳輸控制消息。FTP協議基本操作在RFC959中進行了描述。
FTP有兩種文件傳輸模式:
·?????二進制模式,用于傳輸程序文件(比如后綴名為.bin的文件);
·?????ASCII碼模式,用于傳輸文本格式的文件(比如后綴名為.txt、.bat和.cfg的文件)。
FTP有兩種工作方式:
·?????主動方式(PORT),數據連接由FTP服務器發起,當FTP客戶端處于防火墻后時不適用;
·?????被動方式(PASV),數據連接由FTP客戶端程序發起,當FTP服務器限制客戶端連接其高位端口(一般情況下大于1024)時不適用。
是否使用被動方式由FTP客戶端程序決定,不同FTP客戶端軟件對FTP工作方式的支持情況可能不同,請在使用時以軟件的實際情況為準。
設備在支持FTP協議上有兩種方式:
·?????設備作為FTP客戶端:如圖1-1所示,設備(Device)作為FTP客戶端,PC作為FTP服務器。在Device上執行ftp命令,與PC建立FTP連接,完成文件的上傳/下載操作。
·?????設備作為FTP服務器:如圖1-1所示,設備(Device)作為FTP服務器,PC作為FTP客戶端。在PC上運行FTP客戶端程序,與Device建立FTP連接,完成文件的上傳/下載操作。
設備作為FTP客戶端時,需要進行如下配置:
設備
操作
說明
Device(作為FTP客戶端)
可以直接使用ftp命令登錄遠端的FTP服務器
如果遠端FTP服務器支持匿名訪問,設備可以直接登錄;如果遠端FTP服務器不支持匿名訪問,則必須先獲取FTP用戶名和密碼后,才能成功登錄遠端的FTP服務器
PC(作為FTP服務器)
啟動FTP服務器,并做了用戶名、密碼、用戶的權限等相關的配置
-
設備作為FTP服務器時,需要進行如下配置:
設備
操作
說明
Device(作為FTP服務器)
啟動FTP服務器功能
缺省情況下,系統關閉FTP服務器功能
可以通過display ftp-server命令查看設備上FTP服務器功能的配置信息
配置FTP服務器的驗證和授權
配置FTP用戶的用戶名、密碼、授權的工作目錄。出于安全考慮,設備不支持匿名登錄,用戶必須使用合法的用戶名和密碼。缺省情況下,合法用戶可訪問的目錄為設備的根目錄
配置FTP服務器的運行參數
配置FTP連接的超時時間等參數
PC(作為FTP客戶端)
使用FTP客戶端程序登錄設備
用戶必須獲取FTP用戶名和密碼后,才能成功登錄遠端的FTP服務器
·?????在建立FTP連接前請確保FTP服務器與FTP客戶端之間路由可達,否則,連接建立失敗。
·?????當設備作為FTP服務器,使用Internet Explorer瀏覽器登錄設備時,因為Internet Explorer瀏覽器在登錄過程中建立了多個用戶連接,而目前設備某一時刻只支持一個用戶連接,所以使用Internet Explorer瀏覽器登錄設備時FTP的部分功能不支持。
只有級別為3(管理級)的用戶才能使用ftp命令登錄FTP服務器,進入FTP客戶端視圖,執行目錄、文件等命令,但命令能否執行成功,還將受FTP服務器端的授權限制。
FTP客戶端要訪問FTP服務器,必須先與FTP服務器建立連接。連接的建立方式有兩種,一種是使用ftp命令直接建立連接,一種是在FTP客戶端視圖下使用open命令間接建立連接。
在使用ftp命令建立FTP連接時,還可以進行源地址綁定。源地址可以通過配置源接口(建議使用Loopback接口)或源IP地址來實現,源接口下配置的主IP地址或源IP地址即為發送報文的源地址。
FTP客戶端在與FTP服務器通信的時候,發送報文的源地址選取遵循以下規則:
·?????如果沒有指定FTP客戶端的源地址,則采用路由決定的源地址進行通信。
·?????如果只用ftp client source或ftp命令指定了源地址,則采用該地址進行通信。
·?????如果執行ftp client source命令指定了源地址后,又在ftp命令中指定了源地址,則采用ftp命令中指定的源地址進行通信。
·?????ftp client source命令指定的源地址對所有的FTP連接有效,ftp命令指定的源地址只對當前的FTP連接有效。
表1-3 建立FTP連接(IPv4組網環境)
操作
命令
說明
進入系統視圖
system-view
-
配置FTP客戶端的源地址
ftp client source { interface interface-type interface-number | ip source-ip-address }
可選
缺省情況下,設備使用路由決定的源地址與FTP服務器通信
退回用戶視圖
quit
-
在用戶視圖下直接登錄遠程FTP服務器
ftp [ server-address [ service-port ] [ source {
interface interface-type interface-number | ip source-ip-address} ] ]
二者必選其一
ftp命令直接在用戶視圖下執行;open命令在FTP客戶端視圖下執行
在FTP客戶端視圖下間接登錄遠程FTP服務器
ftp
open server-address [ service-port ]
·?????如果源接口下沒有配置主地址,將導致FTP連接建立失敗。
·?????如果先后使用ftp client source命令配置了客戶端FTP報文的源接口和源IP,則新配置的源IP將覆蓋現有的源接口配置。反之亦然。
表1-4 建立FTP連接(IPv6組網環境)
操作
命令
說明
在用戶視圖下直接登錄遠程FTP服務器
ftp ipv6 [ server-address [ service-port ] [ source ipv6
source-ipv6-address ] [ -i interface-type interface-number
] ]
二者必選其一
ftp ipv6命令直接在用戶視圖下執行;open ipv6命令在FTP客戶端視圖下執行
在FTP客戶端視圖下間接登錄遠程FTP服務器
ftp ipv6
open ipv6server-address [ service-port ] [ -i interface-type interface-number ]
用戶可以對FTP報文的DSCP優先級進行配置。
表1-5 配置FTP和TFTP報文的DSCP優先級
操作
命令
說明
進入系統視圖
system-view
-
配置IPv4 FTP客戶端發送報文的DSCP優先級
ftp client
dscp dscp-value
可選
缺省情況下,IPv4 FTP客戶端發送報文的DSCP優先級為0
配置IPv6 FTP客戶端發送報文的DSCP優先級
ftp client
ipv6 dscp dscp-value
可選
缺省情況下,IPv6 FTP客戶端發送報文的DSCP優先級為0
當設備作為FTP客戶端,與FTP服務器連接建立成功后(連接操作請參見1.2.1建立FTP連接),在FTP服務器的授權目錄下,用戶可以進行創建、刪除文件夾等操作。
表1-6 操作FTP服務器上的目錄
操作
命令
說明
查看遠程FTP服務器上的目錄/文件的詳細信息
dir [ remotefile [localfile ] ]
可選
查詢遠程FTP服務器上的目錄/文件
ls [ remotefile [ localfile ] ]
可選
切換遠程FTP服務器上的工作路徑
cd {directory| .. | / }
可選
退出遠程FTP服務器的當前目錄,返回FTP服務器的上一級目錄
cdup
可選
顯示當前用戶正在訪問的遠程FTP服務器上的路徑
pwd
可選
在遠程FTP服務器上創建目錄
mkdir directory
可選
刪除FTP服務器上指定的目錄
rmdir directory
可選
當設備作為FTP客戶端,與FTP服務器連接建立成功后(連接操作請參見1.2.1建立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命令只能顯示出目錄/文件的名稱,而dir命令可以查看與目錄/文件相關的信息,如大小,創建日期等
查詢遠程FTP服務器上的目錄/文件
ls [ remotefile [ localfile ] ]
可選
ls命令只能顯示出目錄/文件的名稱,而dir命令可以查看與目錄/文件相關的信息,如大小,創建日期等
徹底刪除遠程FTP服務器上的指定文件
delete remotefile
可選
設置FTP文件傳輸的模式為ASCII模式
ascii
可選
缺省情況下,文件傳輸模式為ASCII模式
設置FTP文件傳輸的模式為二進制模式
binary
可選
缺省情況下,文件傳輸模式為ASCII模式
設置數據傳輸的方式為被動方式
passive
可選
缺省情況下,數據傳輸的方式為被動方式
獲取FTP客戶端本地的工作路徑
lcd
可選
上傳本地文件到遠程FTP服務器
put localfile [ remotefile ]
可選
下載FTP服務器上的文件
get remotefile [localfile ]
可選
當設備作為FTP客戶端,與FTP服務器連接建立成功后(連接操作請參見1.2.1建立FTP連接),可以更改登錄用戶。
該功能通常用于不同權限用戶之間的切換,用戶的成功切換不會影響當前的FTP連接(即FTP控制連接、數據連接以及連接狀態都不變);如果輸入的用戶名/密碼錯誤,則會斷開當前連接,用戶必須重新登錄才能繼續訪問設備。
表1-8 更改登錄用戶
操作
命令
說明
成功登錄FTP服務器后,使用其他用戶身份重新登錄
user username [password ]
可選
當設備作為FTP客戶端,與FTP服務器連接建立成功后(連接操作請參見1.2.1建立FTP連接),通過以下命令,可以幫助定位和診斷FTP連接過程中出現的問題。
表1-9 FTP客戶端維護與調試
操作
命令
說明
顯示遠程FTP服務器支持的FTP相關協議命令的幫助信息
remotehelp [ protocol-command ]
可選
使能顯示FTP服務器返回的詳細信息
verbose
可選
缺省情況下,verbose開關為開啟狀態
當設備作為FTP客戶端時,打開FTP調試信息開關
debugging
可選
缺省情況下,FTP客戶端調試信息開關處于關閉狀態
1.2.7? 斷開FTP連接
當設備作為FTP客戶端,與FTP服務器連接建立成功后(連接操作請參見1.2.1建立FTP連接),可以使用以下任意一條命令來斷開FTP連接。
表1-10 斷開FTP連接
操作
命令
說明
不退出FTP客戶端視圖的前提下,斷開與FTP服務器的連接
disconnect
可選
等效于close命令
不退出FTP客戶端視圖的前提下,斷開與FTP服務器的連接
close
可選
等效于disconnect命令
斷開與遠程FTP服務器的連接,并退回到用戶視圖
bye
可選
在FTP客戶端視圖下執行,等效于quit命令
斷開與遠程FTP服務器的連接,并退回到用戶視圖
quit
可選
在FTP客戶端視圖下執行,等效于bye命令
1. 組網需求
·?????Device作為FTP客戶端,PC作為FTP服務器。IP地址如組網圖所示,Device和PC之間路由可達。
·?????Device從PC上下載新的啟動文件完成設備的升級,并將配置文件上傳到PC進行備份。
·?????PC上已設置設備登錄FTP服務器的用戶名為abc,密碼為abc。設備以用戶名abc、密碼abc登錄FTP服務器。
2. 組網圖
圖1-2 利用FTP客戶端功能實現平滑升級
3. 配置步驟
如果設備剩余的內存空間不夠,請使用delete/unreserved file-url命令刪除部分暫時不用的文件后再執行以下操作。
# 以FTP方式登錄服務器。
ftp 10.1.1.1
Trying 10.1.1.1 ...
Press CTRL+K to abort
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
# 將傳輸模式設置為binary,以便傳輸啟動文件。
[ftp] binary
200 Type set to I.
# 將啟動文件newest.bin從PC下載到設備。
[ftp] get newest.bin
227 Entering Passive Mode (10,1,1,1,10,68).
125 BINARY mode data connection already open, transfer starting for /newest.bin.
226 Transfer complete.
FTP: 23951480 byte(s) received in 95.399 second(s), 251.00K byte(s)/sec.
# 將本機的配置文件config.cfg上傳到服務器進行備份。
[ftp] ascii
[ftp] put config.cfg back-config.cfg
227 Entering Passive Mode (10,1,1,1,4,2).
125 ASCII mode data connection already open, transfer starting for /config.cfg.
226 Transfer complete.
FTP: 3494 byte(s) sent in 5.646 second(s), 618.00 byte(s)/sec.
[ftp] bye
221 Server closing.
# 將newest.bin指定為設備的主用下次啟動文件。
boot-loader file newest.bin slot 1 main
# 重啟設備,完成設備軟件升級。
reboot
下次啟動文件必須存放在存儲介質的根目錄下。可使用文件的拷貝或移動操作來調整文件的路徑為根目錄。關于boot-loader命令的詳細介紹請參見“基礎配置命令參考”中的“軟件升級”。
當設備作為FTP服務器時,可以進行如下配置。
用戶登錄到FTP服務器,使用put命令上傳文件的過程中,FTP服務器中文件的更新有兩種方式,快速更新方式與普通更新方式。
·?????快速更新方式,即FTP服務器先將上傳文件接收到內存中,全部接收完后,再將文件內容寫入存儲設備。采用這種方式,即使文件傳送過程發生斷電等異常情況,也不會損壞FTP服務器上的現有文件。
·?????普通更新方式,即FTP服務器一邊接收用戶的文件,一邊將其寫入存儲設備。采用這種方式,可能會因為斷電等異常情況致使FTP服務器上的現有文件被損壞。與快速更新方式相比,普通更新方式需要的空閑內存較少。
操作
命令
說明
進入系統視圖
system-view
-
啟動FTP服務器功能
ftp server enable
必選
缺省情況下,FTP服務器功能處于關閉狀態
配置IPv4 FTP服務器發送報文的DSCP優先級
ftp server dscpdscp-value
可選
缺省情況下,IPv4 FTP服務器發送報文的DSCP優先級為0
使用ACL(Access Control List,訪問控制列表)限制哪些FTP客戶端可以訪問設備
ftp server acl acl-number
可選
缺省情況下,沒有使用ACL限制FTP客戶端
配置FTP服務器的連接空閑時間
ftp timeoutminutes
可選
缺省情況下,連接空閑時間為30分鐘
如果在連接空閑時間內,FTP服務器和客戶端沒有消息交互,則斷開它們之間的連接
設置在上傳過程中,FTP服務器更新文件的方式
ftp update{ fast | normal }
可選
缺省情況下,在給FTP服務器上傳文件的過程中,FTP服務器采用normal方式更新文件
退回到用戶視圖
quit
-
強制釋放通過指定用戶名建立的FTP連接
free ftp userusername
可選
FTP服務器的授權信息包含提供給FTP用戶的工作目錄的路徑。只有驗證通過和授權成功的用戶,才能得到FTP服務器的服務。
以下配置為FTP服務器在本地對FTP客戶端身份進行驗證的時候的步驟,如果要對FTP客戶端進行遠程認證,則不需要配置本地用戶,但需要配置AAA(Authentication, Authorization and Accounting,認證、授權和計費)認證方案,詳細配置請參見“安全配置指導”中的“AAA”。(本地認證是指在設備上驗證用戶輸入的用戶名/密碼是否與設備上配置的用戶名/密碼匹配;遠程認證是指設備將用戶輸入的用戶名/密碼發送給遠端的認證服務器,由服務器來驗證用戶名/密碼是否匹配。)
操作
命令
說明
進入系統視圖
system-view
-
進入本地用戶視圖
local-useruser-name
必選
如果指定的本地用戶不存在,則先完成本地用戶的創建,再進入該用戶的視圖
缺省情況下,系統中沒有任何授權FTP服務的本地用戶,系統不支持FTP匿名用戶訪問
設置當前本地用戶的密碼
password{simple|cipher}password
必選
設置用戶可以使用的服務類型為FTP
service-type ftp
必選
缺省情況下,系統不支持FTP匿名用戶訪問,不對用戶授權任何服務;若授權FTP服務,缺省授權使用設備的根目錄
配置用戶的屬性
authorization-attribute { acl acl-number | callback-number callback-number
| idle-cut minute | level level | user-profile
profile-name | user-role { guest | guest-manager
| security-audit } | vlan vlan-id | work-directory
directory-name } *
可選
缺省情況下,FTP用戶可以訪問設備的根目錄,用戶的級別為0。可以使用該命令進行修改
·?????local-user、password、service-type ftp和authorization-attribute命令的詳細介紹,請參見“安全命令參考”中的“AAA”。
·?????設備作為FTP服務器時,對客戶端的訪問操作有級別限制:如果要對設備的文件系統執行寫操作(比如上傳、刪除、創建/刪除文件夾),則必須將FTP登錄用戶的級別設置為3;如果執行其他操作(比如普通的查看操作),則FTP登錄用戶的級別不受限制,可以為0~3中的任意級別。
1. 組網需求
·?????設備作為FTP服務器,PC作為FTP客戶端。IP地址如組網圖所示,Device和PC之間路由可達。
·?????設備最新版本的啟動文件存儲在PC上,請使用FTP功能實現設備的升級以及設備配置文件的備份。
·?????客戶端登錄FTP服務器的用戶名為abc,密碼為abc。
2. 組網圖
3. 配置步驟
(1)?????配置Device(FTP Server)
# 在設備上添加一個本地用戶abc,并設置其認證密碼為abc,用戶級別為3管理級,授權訪問目錄為Flash的根目錄,abc可以使用的服務類型為FTP。
system-view
[Sysname] local-user abc
[Sysname-luser-abc] password simple abc
[Sysname-luser-abc] authorization-attribute level 3
[Sysname-luser-abc] authorization-attribute work-directory flash:/
[Sysname-luser-abc] service-type ftp
[Sysname-luser-abc] quit
# 啟動設備的FTP服務。
[Sysname] ftp server enable
[Sysname] quit
# 刪除設備中的多余文件,以保證剩余足夠的空間,用于存儲新的啟動文件。
dir
Directory of flash:/
0?? drw-???????? -? Dec 07 2005 10:00:57?? filename
1?? drw-???????? -? Jan 02 2006 14:27:51?? logfile
2?? -rw-????? 1216? Jan 02 2006 14:28:59?? config.cfg
3?? -rw-????? 1216? Jan 02 2006 16:27:26?? back.cfg
2540 KB total (2511 KB free)
delete /unreserved flash:/back.cfg
(2)?????配置PC(FTP Client)
# 以FTP方式登錄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.
# 將設備的配置文件config.cfg下載到PC本地進行備份。
ftp> get config.cfg back-config.cfg
# 上傳啟動文件newest.bin到Device。
ftp> put newest.bin
200 Port command okay.
150 Opening ASCII mode data connection for /newest.bin.
226 Transfer complete.
ftp> bye
221 Server closing.
c:\>
·?????利用FTP功能升級配置文件時,操作步驟與上述介紹基本相同,需要注意的是獲取后的配置文件同樣要放在存儲介質的根目錄下。
·?????利用FTP遠程升級Bootrom程序,文件傳送完成后需要再執行bootrom update命令來升級Bootrom。
(3)?????升級Device
# 將newest.bin指定為設備的主用下次啟動文件。
boot-loader file newest.bin slot 1 main
# 重啟設備,完成設備軟件升級。
reboot
下次啟動文件必須存放在存儲介質的根目錄下。可使用文件的拷貝或移動操作來調整文件的路徑為根目錄。關于boot-loader命令的詳細介紹請參見“基礎配置命令參考”中的“軟件升級”。
1.4? FTP顯示和維護
在完成上述配置后,在任意視圖下執行display命令可以顯示配置后FTP的運行情況,通過查看顯示信息驗證配置的效果。
表1-13 FTP顯示和維護
操作
命令
查看FTP客戶端的當前配置
display ftp client configuration [ |{ begin | exclude| include} regular-expression]
查看FTP服務器的配置情況
display ftp-server [ |{ begin | exclude| include} regular-expression]
查看FTP登錄用戶的詳細情況
display ftp-user [ |{ begin | exclude| include} regular-expression]
總結
以上是生活随笔為你收集整理的3 配置ftp文件服务器,03-FTP和TFTP配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python隐藏启动台_如何在Pytho
- 下一篇: mysql注册slave_创建slave