9.1.1 FTP服務

簡單介紹:

文件傳輸協議

文件傳輸協議(FTP,File Transfer Protocol),即能夠讓用戶在互聯網中上傳、下載文件的文件協議,而FTP服務器就是支持FTP傳輸協議的主機,要想完成文件傳輸則需要FTP服務端FTP客戶端的配合才行。

通常用戶使用FTP客戶端軟件向FTP服務器發起連接併發送FTP指令,服務器收到用戶指令後將執行結果返回客戶端。

clip_image002

FTP協議佔用兩個端口號:

21端口:命令控制,用於接收客戶端執行的FTP命令。

20端口:數據傳輸,用於上傳、下載文件數據。

FTP數據傳輸的類型:

主動模式:FTP服務端主動向FTP客戶端發起連接請求。

被動模式:FTP服務端等待FTP客戶端的連接請求。

FTP服務器

簡單地說,支持FTP協議的服務器就是FTP服務器。

與大多數Internet服務一樣,FTP也是一個客戶機/服務器系統。用戶通過一個支持FTP協議的客戶機程序,連接到在遠程主機上的FTP服務器程序。用戶通過客戶機程序向服務器程序發出命令,服務器程序執行用戶所發出的命令,並將執行的結果返回到客戶機。比如說,用戶發出一條命令,要求服務器向用戶傳送某一個文件的一份拷貝,服務器會響應這條命令,將指定文件送至用戶的機器上。客戶機程序代表用戶接收到這個文件,將其存放在用戶目錄中。

Vsftpd即“Very Secure FTP Daemon是一款運行在類Unix操作系統的FTP服務端程序,Vsftpd主打的是安全性完全開源及免費速率高支持IPv6虛擬用戶功能等等其他FTP服務端軟件不具備的功能。

FTP服務器的配置實現,通過修改vsftpd服務配置文件即可實現多種不同功能,下面通過幾個案例來實現不同的應用場景。

vsftpd程序配置文件參數的作用:

參數

作用

listen=[YES|NO]

是否以獨立運行的方式監聽服務。

listen_address=IP地址

設置要監聽的IP地址。

listen_port=21

設置FTP服務的監聽端口。

download_enable=[YES|NO]

是否允許下載文件。

userlist_enable=[YES|NO]
userlist_deny=[YES|NO]

是否啓用“禁止登陸用戶名單”。

max_clients=0

最大客戶端連接數,0爲不限制。

max_per_ip=0

同一IP地址最大連接數,0位不限制。

anonymous_enable=[YES|NO]

是否允許匿名用戶訪問。

anon_upload_enable=[YES|NO]

是否允許匿名用戶上傳文件。

anon_umask=022

匿名用戶上傳文件的umask值。

anon_root=/var/ftp

匿名用戶的FTP根目錄。

anon_mkdir_write_enable=[YES|NO]

是否允許匿名用戶創建目錄。

anon_other_write_enable=[YES|NO]

是否開放匿名用戶其他寫入權限。

anon_max_rate=0

匿名用戶最大傳輸速率(字節),0爲不限制。

local_enable=[YES|NO]

是否允許本地用戶登陸FTP。

local_umask=022

本地用戶上傳文件的umask值。

local_root=/var/ftp

本地用戶的FTP根目錄。

chroot_local_user=[YES|NO]

是否將用戶權限禁錮在FTP目錄,更加的安全。

local_max_rate=0

本地用戶最大傳輸速率(字節),0爲不限制。

案例1:

clip_image004

clip_image006

clip_image008

clip_image010

案例2:

允許匿名用戶上傳、下載、創建目錄、刪除文件和目錄。

修改服務器主配置文件:

clip_image012

clip_image014

clip_image016

客戶端測試:

clip_image018

clip_image020

案例3:

允許本地用戶訪問,且將部分用戶限制在其家目錄中。

修改服務器主配置文件/etc/vsftpd/vsftpd.conf

clip_image022

clip_image024

clip_image026

客戶端測試:

clip_image028

clip_image030

案例4:

修改服務器主配置文件/etc/vsftpd/vsftpd.conf

當userlist_enable=YES時,userlist_deny=YES時:user_list是一個黑名單,即:所有出現在名單中的用戶都會被拒絕登入;

當userlist_enable=YES時,userlist_deny=NO時:user_list是一個白名單,即:只有出現在名單中的用戶纔會被准許登入

clip_image032

clip_image034

clip_image036

客戶端測試:

clip_image038

clip_image040

clip_image042

clip_image044

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章