1. 程式人生 > >Vsftpd文件傳輸服務(三種認證模式:匿名開放 、本地用戶、虛擬用戶)

Vsftpd文件傳輸服務(三種認證模式:匿名開放 、本地用戶、虛擬用戶)

mkdir 作用 HA 客戶端 .so ces cad art r文件

FTP是一種在互聯網中進行中文件傳輸的協議,基於客戶端/服務器端模式,默認使用20、21號端口,其中端口20(數據端口)用於進行數據傳輸,端口21(命令端口)用於接受客戶端發出的相關FTP命令與參數。

FTP的出現解決了各類設備、各類操作系統之間文件傳輸問題,極大地方便了用戶通過網絡資源的獲取。

FTP服務器常部署於企業內網中,具有容易搭建、方便管理的特點,目前有些FTP客戶端工具還可以支持文件的多點下載以及斷點續傳,因此FTP服務得到了廣大用戶的青睞。

技術分享圖片

FTP協議有兩種工作模式:

1. 主動模式: FTP服務器主動向客戶端發起連接請求;

2. 被動模式: FTP服務器等待客戶端發起連接請求(默認模式);

vsftpd的三種認證模式

1. 匿名開放模式:

它是一種最不安全的認證模式,任何人都可以無需密碼驗證而直接登錄到FTP服務器;

2. 本地用戶模式

它是通過Linux系統本地的賬戶密碼信息進行認證的模式,相較於匿名開放模式更安全,而且配置起來也很簡單。但是若被惡意用戶破解了賬戶的信息,就可以暢通無阻地登錄FTP服務器,從而完全控制服務器;

3. 虛擬用戶模式

它是三種模式中最安全的一種認證模式,它需要為FTP服務單獨建立用戶數據庫文件,虛擬出的用戶進行口令驗證的賬戶信息,而這些賬戶信息在服務器系統上並不存在,僅供FTP服務器進行認證使用。

實驗環境:

  • rhel6.5操作系統
  • 服務器IP地址:192.168.100.5
  • rhel6.5的鏡像光盤掛載至/mnt/cdrom/

實驗內容:

  • 匿名開放模式
  • 本地用戶模式
  • 虛擬用戶模式

部署服務:

安裝vsftpd服務

1.安裝軟件包

rpm -ivh /mnt/cdrom/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm

2.關閉安全設置和防火墻

setenforce 0
service iptables stop

默認FTP站點目錄:/var/ftp
配置文件路徑:/etc/vsftpd/vsftpd.conf

一、匿名開放模式

  1. 修改vsftpd.conf配置文件

......
anonymous_enable=YES //允許匿名訪問模式

......
anon_upload_enable=YES //啟用,允許匿名用戶上傳文件
anon_mkdir_write_enable=YES //啟用,允許匿名用戶創建目錄
新增下面參數
anon_other_write_enable=YES //允許匿名用戶修改目錄名稱或刪除目錄

  1. 啟動服務

chkconfig vsftpd on
service vsftpd start

  1. 修改ftp目錄權限
chown ftp:ftp /var/ftp/pub
chmod 777 /var/ftp/pub

4. 測試

查看ftp服務器站點目錄及文件
技術分享圖片
在客戶端中運行“命令提示符”,登錄ftp站點
技術分享圖片
客戶端下載文件
技術分享圖片
客戶端上傳文件
技術分享圖片
進入ftp服務器站點查看上傳文件
技術分享圖片

二、本地用戶模式

  1. 修改vsftpd.conf配置文件

......
anonymous_enable=NO //禁止匿名訪問模式
local_enable=YES //允許本地用戶模式
write_enable=YES //設置可寫權限
local_umask=022 //本地用戶創建文件的umask值
userlist_enable=YES //啟動“禁止名單”,名單文件為ftpusers和user_list
userlist_deny=YES //開啟用戶作用名單文件功能

  1. 創建兩個本地用戶zhagnsan、lisi

useradd -s /sbin/nologin zhangsan //創建用戶zhangsan
passwd zhangsan //設置密碼,輸入兩次
useradd -s /sbin/nologin lisi //創建用戶lisi
passwd lisi //設置密碼,輸入兩次

  1. 修改ftpusers文件
cd /etc/vsftpd/
vim ftpusers        //編輯文件,在末尾添加lisi

技術分享圖片

  1. 重啟服務
service vsftpd restart

5. 測試

ftp服務器開啟了本地用戶驗證登錄,lisi添加到了黑名單中,不讓其登錄,zhagnsan可以進行正常登錄

技術分享圖片

客戶端分別使用lisi、zhangsan兩個賬戶進行登錄測試
技術分享圖片

三、虛擬用戶模式

  1. 創建ftp用戶數據庫文件
cd /etc/vsftpd/       //進入目錄

vim vuser //創建ftp用戶數據庫文件,奇數行為用戶名,偶數行為密碼
test
123123
tom
123123

  1. 對vuser文件進行加密轉換為數據庫文件
db_load -T -t hash -f vuser vuser.db        //轉換為數據庫文件
chmod 600 vuser.db      //修改權限不讓其他用戶查看
  1. 創建vsftpd服務程序用戶存儲文件的根目錄以及虛擬用戶映射的系統本地用戶
useradd -d /opt/vuser -s /sbin/nologin vuser
  1. 建立用戶支持虛擬用戶的PAM認證模塊文件
vim /etc/pam.d/vsftpd.vu

//添加以下兩行數據
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser

  1. 修改vsftpd服務程序的主配置文件
vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO //禁止匿名開放模式
local_enable=YES //允許本地用戶
guest_enable=YES //開啟虛擬用戶
guest_username=vuser //指定虛擬用戶為vuser
pam_service_name=vsftpd.vu //指定PAM文件

  1. 重啟服務
service vsftpd restart

7. 測試

客戶端使用虛擬賬戶tom進行登錄,可以正常登錄
技術分享圖片

客戶端使用虛擬賬戶test進行登錄,可以正常登錄
技術分享圖片

Vsftpd文件傳輸服務(三種認證模式:匿名開放 、本地用戶、虛擬用戶)