一、控制用戶對FTP的訪問
[root@asan ~]# cd /etc/vsftpd/
[root@asan vsftpd]# ls
chroot_list ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
文件ftpusers 、user_list與控制用戶訪問FTP服務器有關
[root@asan vsftpd]# cat vsftpd.conf
userlist_enable=YES #使用user_list文件,該文件位于/etc/vsftpd/目錄,該文件默認已存在,隻需要将不能登錄的用戶加入到該文件中即可,不在user_list文件中的用戶允許登錄
設置用戶user3不能訪問FTP服務
[root@asan vsftpd]# vim user_list
添加用戶user3
驗證結果
登錄失敗
與FTP服務器的tcp連接并沒中斷,隻是用戶認證沒有通過。
用戶asan登錄成功
說明user_list文件以外的用戶能夠成功登錄FTP服務。
==========================================
[root@asan vsftpd]# vim vsftpd.conf
添加配置
userlist_deny=NO #設置user_list中用戶被允許登錄FTP服務器,而不在該文件的用戶将默認被禁止。
重啟服務驗證
成功與失敗
說明user_list中的用戶(user3)被允許登錄,而不在文件中的用戶(asan)禁止登錄。
再驗證root用戶登錄
root登錄失敗
原因:ftp登錄認證還要檢查文件/etc/vsftpd/ftpuser,該文件中的所有用戶均不能登錄ftp服務器,即使該用戶在user_list中被允許登錄。
若想root用戶登錄,需在ftpusers文件中删除root。
ftpusers中删除root
root再次登錄驗證
root登錄成功
二、控制主機對FTP的訪問
[root@asan vsftpd]# tail vsftpd.conf #查看配置文件的後十行内容
tcp_wrappers=YES #允許使用tcp_wrappers
該配置設置vsftpd服務器是否與tcp_wrapper相結合,進行主機的訪問控制,默認為YES。vsftpd服務器會檢查/etc/hosts.allow和/etc/hosts.deny中的設置,以決定請求連接的主機是否允許訪問該FTP服務器。
/etc/hosts.allow #允許訪問服務的主機
/etc/hosts.deny #禁止訪問服務的主機
[root@asan vsftpd]# vim /etc/hosts.deny
hosts.deny
文件中加入配置 vsftpd:all #禁止所有主機訪問FTP服務
驗證
訪問
說明:當任何主機試圖連接FTP服務器時,均被tcp_wrappers拒絕。
增加服務器自身ip後訪問
[root@asan ~]# vim /etc/hosts.allow
文件中增加配置:vsftpd:192.168.123.231
訪問成功
tcp_wrappers會首先檢查hosts.allow文件;
如果在該文件中被允許,即允許訪問,不會再檢查hosts.deny;
如果在該文件中沒有相匹配的規則,則會檢查hosts.deny文件;
如果在hosts.deny中被拒絕,則拒絕該主機的訪問;
如果hsots.deay文件中也沒有相匹配的規則,會允許該主機訪問。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!