Ftp
“/etc/pam.d/vsftpd”被阻止的使用者仍然可以“lftp”登錄
我在機器 192.168.122.50 上執行了一個 ftp 伺服器
以下是 /etc/vsftpd/vsftpd.conf 文件中的最後三個指令
pam_service_name=vsftpd #userlist_enable=YES #userlist_deny=YES
以下是 /etc/pam.d/vsftpd 文件的內容
#%PAM-1.0 session optional pam_keyinit.so force revoke auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed auth required pam_shells.so auth include password-auth account include password-auth session required pam_loginuid.so session include password-auth
以下是 /etc/vsftpd/ftpusers 文件的內容
#This is the list of blocked users as per the following line /etc/pam.d/vsftpd #auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed root bin daemon adm lp sync shutdown halt mail news uucp operator games nobody
因此,例如,兩個使用者
root
應該被阻止訪問這台機器上的 ftp 伺服器,並且ssam
應該被允許。現在從客戶端機器 192.168.0.2,我嘗試了這個。
am@centos ~]$ ftp 192.168.122.50 Connected to 192.168.122.50 (192.168.122.50). 220 (vsFTPd 2.2.2) Name (192.168.122.50:ssam): ssam 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> exit 221 Goodbye. [ssam@centos ~]$ ftp 192.168.122.50 Connected to 192.168.122.50 (192.168.122.50). 220 (vsFTPd 2.2.2) Name (192.168.122.50:ssam): root 331 Please specify the password. Password: 530 Login incorrect. Login failed. ftp> bye 221 Goodbye.
輸出與pam設置內聯,因為使用者
ssam
被允許並且使用者root
被阻止。現在我已經嘗試在客戶端使用 lftp 命令以 root 使用者連接到伺服器。
[ssam@centos ~]$ lftp root@192.168.122.50 Password: lftp root@192.168.122.50:~>
當我得到 lftp 提示時,登錄確實可能被阻止使用者 。
root
現在我嘗試執行一個命令。lftp root@192.168.122.50:~> ls: Login failed: 530 Login incorrect.
現在似乎伺服器已經恢復正常,它告訴我我無法做任何其他事情。但是可插拔的身份驗證模組應該
root
在第一時間阻止使用者進入伺服器。有人可以為我解釋一下嗎?
lftp
IMO,這是客戶工作的一種方式。檢查日誌文件/var/log/secure
(在 RHEL/CentOS 上)或類似的事件,例如pam_listfile(vsftpd:auth): Refused user root for service vsftpd
我通過嗅探 FTP 流量(RHEL 6.x、vsftpd 2.2.2、lftp 4.0.9)驗證了這種行為。直到您輸入一些有效的 FTP 命令 (aka
ls
) 才建立 FTP 連接,而不是當您輸入使用者名和密碼時。
vim /etc/vsftpd/vsftpd.conf
來倒數第二行….
userlist_enable="NO"
保存它,然後
# vim /etc/vsftpd/ftpusers
從中刪除“root”使用者…在此文件中
不允許通過 ftp 登錄的使用者。保存並重新啟動服務。我希望它會工作……