一、安裝vsftpd
1.查看是否已經安裝vsftpd
2.如果沒有,就安裝
3.測試是否安裝成功
4.安裝成功設置開機啟動
二、配置vsftpd
1.修改配置文件/etc/vsftpd/vsftpd.conf
將允許匿名用戶登錄YES變為NO
anonymous_enable=YES ——》anonymous_enable=NO
將下面兩行的注釋”#”去掉
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
2.在/etc/vsftpd/下新建文件chroot_list
3.在chroot_list里面輸入FTP用戶的用戶名每個用戶一行
三、添加FTP用戶組及用戶
1.添加webftp用戶組,用來承載我們的FTP授權用戶
2.添加ftp用戶並指定ftp目錄
使用-g參數將它歸集到webftp用戶組下,-M參數不設置它的主目錄(沒有-M參數/home里會有個wwwer文件夾,這個文件夾沒多少實際用處,所以不用設置),-d參數設定它的初始登入目錄為/var/www,-s參數設定它不需要登陸系統/sbin/nologin,它被命名為zhangsan。
3.設置密碼
4.目錄付權限
四、配置基本安全策略
# getsebool -a | grep ftp
列出所有selinux全部ftp策略。
#setsebool allow_ftpd_full_access on
允許FTP完全訪問。
# iptables -I INPUT -p tcp --dport 80 -j ACCEPT
插入防火牆規則(CentOS里用-A添加一條規則會處於鏈表尾,但表尾貌似不起作用,所以用-I插入到鏈表頭),這條規則的意思是所有INPUT到服務器的包,-p如果是tcp協議的,--dport目標端口是80端口的,-j那么就ACCEPT。
# iptables -I INPUT -p tcp --dport 21 -j ACCEPT
同樣的方法接受所有要到達服務器21端口的tcp包。
# modprobe ip_conntrack_ftp
載入IP連線跟蹤模塊。記住最后這一步(第九步)的基本安全策略配置在重啟后全部失效,你需要重新配置一遍,當然通過修改selinux和iptables的配置文件或service iptables save是可以保持這些策略的。但你應該清晰的認識到一個問題:一個服務器應該總是保持開啟狀態的,如果服務器重啟了,那么只有兩種可能,一種是在你的控制之下,一種不在你的控制之下,當服務器重啟事件不在你的控制之下時,那么你應該認識到這是很危險的情況,那么剛才那些“放行”的策略應該完全失效而不是繼續保持才對。
VSFTP 登陸很慢的解決方法
與ssh一樣,vsftp的配置文件默認開啟了DNS反向解析,這可能會造成用戶在登陸到FTP服務器的時候奇慢無比,只要在配置文件中禁用DNS反向解析即可解決文件。
編輯/etc/vsftpd/vsftpd.conf
添加
reverse_lookup_enable=NO
重啟vsftpd服務后問題解決,現在登陸看看,是不是秒進了~