|NO.Z.00021|——————————|^^ 部署 ^^|——|Linux&VSFTP服務.V03|---------------------------------------------------|VSFTP部署|匿名驗證|
阿新 • • 發佈:2022-03-25
[LinuxNetworkEnd:Linux&VSFTP服務.V03] [Applications.LinuxNetworkEnd] [|VSFTP|匿名登入|本地登入|虛擬賬戶登入|openssl+vsftpd加密驗證|]
一、VSFTP實驗部署:匿名使用者驗證實驗:
### --- 匿名使用者驗證實驗:
~~~ 先關閉伺服器和客戶機上的防火牆和SElinux
### --- 匿名使用者驗證實驗: ### --- 實驗環境: ~~~ centos6.x server21:20.20.20.21 vsftp-server ~~~ centos6.x server22:20.20.20.22 csftp-client
### --- 匿名使用者許可權控制 anonymous_enable=yes // 啟用匿名使用者 anon_umask=022 // 匿名使用者所上傳檔案的許可權掩碼 anon_root=/var/ftp // 匿名使用者的FTP根目錄 anon_upload_enable=YES // 允許上傳檔案 anon_mkdir_write_enable=YES // 允許建立目錄 anon_other_write_enable=YES // 開發其他寫入許可權(刪除、覆蓋、重新命名) anon_max_rate=0 // 限制最大傳輸速率(0為不限速,單位:bytes/秒)
### --- 實驗需要與流程:
~~~ 注意:在客戶端登入後,預設情況下是可以下載的,但不能上傳
### --- 安裝server端vsftpd服務端程式
[root@server21 ~]# yum install -y vsftpd
[root@server21 ~]# service vsftpd start
[root@server21 ~]# chkconfig vsftpd on
### --- 安裝client端ftp客戶端程式
[root@server22 ~]# yum install -y ftp
### --- 實驗配置匿名使用者可以正常的上傳和下載檔案 ~~~ 驗證:在客戶端用匿名使用者訪問vsftp服務端 ~~~ 實驗可以上傳 ~~~ a、anon_upload_enable=YES ~~~ b、在/var/ftp/下建立上傳目錄 ~~~ c、修改上傳目錄的許可權或所有者,讓匿名使用者有寫入許可權 // 1、實驗可以上傳 ~~~ a、anon_upload_enable=YES ~~~ b、在/var/ftp/下建立上傳目錄 ~~~ c、修改上傳目錄的許可權或所有者,讓匿名使用者有寫入許可權 [root@server22 ~]# ftp 20.20.20.21 Name (20.20.20.21:root): ftp Password: ftp> ls drwxr-xr-x 2 0 0 4096 May 11 2016 pub // 有一個pub目錄
~~~ 證明客戶端登入的位置沒有問題
[root@server21 ~]# touch /var/ftp/atyanqi.txt
ftp> ls
-rw-r--r-- 1 0 0 0 Feb 04 01:36 atyanqi.txt
drwxr-xr-x 2 0 0 4096 May 11 2016 pub
~~~ 驗證匿名使用者是不可以上傳
ftp> put install.log // 失敗
550 Permission denied.
~~~ 去伺服器上放行匿名使用者上傳
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES // 放行匿名使用者上傳操作
[root@server21 ~]# mkdir /var/ftp/upload // 建立一個上傳目錄
[root@server21 ~]# chmod o+w /var/ftp/upload/ // 為upload目錄為其他使用者設定w許可權
[root@server21 ~]# service vsftpd restart
~~~ 在客戶端驗證匿名使用者可以正常上傳檔案
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): ftp
Password:
ftp> cd upload // 切換到upload目錄下
~~~ 客戶端驗證匿名使用者可以正常上傳檔案
ftp> put install.log
226 Transfer complete.
ftp> ls
-rw------- 1 14 50 9615 Feb 04 01:47 install.log
ftp> cd .. // 回到ftp家目錄下,不可以上傳,針對對應目錄釋放w許可權
ftp> put install.log
~~~ 設定使上傳的檔案具有下載操作
~~~ 上傳的檔案下載不了
ftp> get install.log
550 Failed to open file. // 在upload目錄下下載檔案,失敗
ftp> ls // 因為上傳的檔案沒有r許可權,只有所有者有r許可權
-rw------- 1 14 50 9615 Feb 04 01:47 install.log
~~~ 修改伺服器端配置檔案釋放匿名使用者上傳的檔案具有下載許可權
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
anon_umask=022
[root@server21 ~]# service vsftpd restart
~~~ 驗證匿名使用者可以正常下載檔案
[root@server22 ~]# ftp 20.20.20.21
ftp> cd upload
ftp> put anaconda-ks.cfg
ftp> ls // 新上傳的檔案具有r許可權
-rw-r--r-- 1 14 50 1112 Feb 04 01:54 anaconda-ks.cfg
ftp> get anaconda-ks.cfg // 可以正常下載
226 Transfer complete.
### --- 實驗配置允許匿名使用者可以對其它檔案進行建立目錄刪除檔案,檔案改名,檔案覆蓋
ftp> mkdir abc // 建立目錄,不可以
550 Permission denied.
ftp> delete install.log // 刪除檔案,不可以
550 Permission denied.
ftp> rename install.log lns.log // 檔案改名
550 Permission denied.
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
anon_mkdir_write_enable=YES // 允許建立目錄
anon_other_write_enable=YES // 刪除檔案,檔案改名,檔案覆蓋
[root@server21 ~]# service vsftpd restart
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): ftp
Password:
ftp> cd upload
250 Directory successfully changed.
ftp> mkdir abc // 建立目錄,成功
257 "/upload/abc" created
ftp> delete anaconda-ks.cfg // 刪除檔案
250 Delete operation successful.
ftp> rename install.log ins.log // 檔案改名
250 Rename successful.
~~~ 檔案覆蓋
ftp> put install.log
ftp> ls
-rw-r--r-- 1 14 50 9615 Feb 04 02:05 install.log
[root@server22 ~]# vim install.log // 修改install.log檔案內容發生變化,大小發生變化
[root@server22 ~]# ll // 檔案大小為6988
-rw-r--r-- 1 root root 6988 Feb 4 10:10 install.log
ftp> put install.log
ftp> ls // 檔案大小為6988,說明覆蓋了
-rw-r--r-- 1 14 50 6988 Feb 04 02:08 install.log
### --- 使用者進入某個資料夾時,彈出相應的說明:
~~~ a、在對應目錄下建立.message檔案,並寫入相應的內容
~~~ b、確認dirmessage_enable=YES是否啟用
~~~ c、嘗試切換目錄好看效果(同義詞登入僅提示一次)
[root@server21 ~]# vim /var/ftp/upload/.message
welcome to the vsftpd server on ftp client
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
dirmessage_enable=YES
[root@server21 ~]# service vsftpd restart
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): ftp
Password:
ftp> cd upload
250-welcome to the vsftpd server on ftp client // 提示資訊顯示出來了,再次進去就沒有提示了
### --- 實現上傳的檔案可下載
~~~ 預設情況下開放上傳許可權後,上傳的檔案是無法被下載的,
~~~ 因為檔案的其它人位置沒有r許可權設定anon_umask=022,
~~~ 可以讓上傳的檔案其他人位置擁有r許可權,然後才能被其他人下載
===============================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)