|NO.Z.00022|——————————|^^ 部署 ^^|——|Linux&VSFTP服務.V04|---------------------------------------------------|VSFTP部署|本地驗證|
阿新 • • 發佈:2022-03-25
[LinuxNetworkEnd:Linux&VSFTP服務.V04] [Applications.LinuxNetworkEnd] [|VSFTP|匿名登入|本地登入|虛擬賬戶登入|openssl+vsftpd加密驗證|]
一、本地使用者驗證實驗:
### --- 本地使用者驗證實驗: ### --- 本地使用者許可權控制 local_enable=YES // 是否啟用本地系統使用者 local_umask=022 // 本地使用者所上傳檔案的許可權掩碼 local_root=/var/ftp // 設定本地使用者的FTP根目錄 chroot_local_user=YES // 是否將使用者禁錮在主目錄 local_max_rate=0 // 限制最大傳輸速率 ftpd_banner=Welcome to blah FTP service // 使用者登入時顯示的歡迎資訊 userlist_enable=YES & userlist_deny=YES // 禁止/etc/vsftpd/user_list 檔案中出現的使用者名稱登入FTP userlist_enable=YES & userlist_deny=NO // 僅允許/etc/vsftpd/user_list檔案中出現的使用者登入FTP ~~~ 配置檔案:ftpusers // 禁止/etc/vsftpd/ftpusers檔案中出現的使用者名稱登入FTP許可權比user_list更高,即時生效
### --- 實驗需求與流程:
### --- 服務端需要建立使用者並設定密碼(所建立的使用者,不需要登入作業系統,僅用來登入VSFTP)
[root@server21 ~]# useradd -s /sbin/nologin zhangsan
[root@server21 ~]# passwd zhangsan
[root@server21 ~]# useradd -s /sbin/nologin lisi
[root@server21 ~]# passwd lisi
### --- 將所有使用者禁錮在自己的家目錄下 ~~~ 注:預設沒有禁錮使用者時,客戶端登入後可以隨意切換目錄,檢視檔案所在位置和檔名 ~~~ 開啟使用者家目錄限制,限制所有使用者不能隨便切換目錄 [root@server22 ~]# ftp 20.20.20.21 // 以張三使用者登入,可以隨機切換目錄 Name (20.20.20.21:root): zhangsan Password: ftp> cd / ftp> ls // 顯示根下的所有檔案,沒有禁錮在張三的家目錄下
~~~ 禁止本地使用者不可以隨機切換目錄 [root@server21 ~]# vim /etc/vsftpd/vsftpd.conf chroot_local_user=YES // 限制所有使用者禁錮在自己的家目錄 [root@server21 ~]# service vsftpd restart [root@server22 ~]# ftp 20.20.20.21 Connected to 20.20.20.21 (20.20.20.21). Name (20.20.20.21:root): zhangsan Password: ftp> cd / ftp> ls // 切換到/下,ls檢視顯示的是張三家目錄下的檔案,說明禁錮在本地使用者的家目錄下,可以往家目錄下一級目錄是可以的,往上翻是不可以的。
### --- 將部分使用者禁錮在自己的家目錄下
chroot_list_enable=YES
~~~ 開啟白名單功能,允許白名單中的使用者隨意切換目錄
chroot_list_file=/etc/vsftpd/chroot_list
~~~ 白名單檔案所在位置(需自己建立)
~~~ 新增張三為白名單使用者,使其不被禁錮在自己的家目錄下
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
[root@server21 ~]# vim /etc/vsftpd/chroot_list
[root@server21 ~]# service vsftpd restart
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): zhangsan
Password:
ftp> cd /
ftp> ls // 新增白名單,張三不會被禁錮在自己的家目錄下。可以檢視到根下的所有檔案
### --- 配置檔案:/etc/vsftpd/ftpusers // 許可權優先順序高的黑名單,主要是防止某些使用者不能登入ftp,一般會禁止root來登入。root的許可權會很高,防止某些人通過root登入ftp而獲取一些資源,所以限制
~~~ 所有寫入此檔案內的使用者名稱都不允許登入ftp,立刻生效。
[root@server21 ~]# vim /etc/vsftpd/ftpusers
# Users that are not allowed to login via ftp // 不允許去login
root
lisi // 禁止李四使用者登入
[root@server22 ~]#
[root@server22 ~]# ftp 20.20.20.21
Password:
Login failed. // lisi登入失敗
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): zhangsan
Password:
Using binary mode to transfer files. // zhangsan登入成功
### --- 修改被動模式資料傳輸使用埠
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf // 在最後新增如下內容
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000
[root@server21 ~]# service vsftpd restart
[root@server21 upload]# dd if=/dev/zero of=./atyanqi.txt bs=1M count=1000 // 建立一個1GB的atyanqi.txt檔案
[root@server21 ~]# netstat -antp // 此時會有21埠
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1974/vsftpd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1404/sshd
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): ftp
Password:
ftp> cd upload
ftp> get atyanqi.txt // 下載一個檔案
[root@server21 ~]# netstat -antp // 下載的時候檢視埠,伺服器端和客戶端的埠都發生了變化,出現了40000和50000之間的隨機埠
tcp 0 52 20.20.20.21:22 20.20.20.240:56283 ESTABLISHED 1585/sshd
tcp 0 0 20.20.20.21:22 20.20.20.240:49438 ESTABLISHED 1523/sshd
tcp 0 0 20.20.20.21:21 20.20.20.22:46190 ESTABLISHED 1978/vsftpd
tcp 0 0 20.20.20.21:48583 20.20.20.22:50654 TIME_WAIT -
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)