- 檢查是否安裝FTP服務
#rpm -qa|grep vsftpd
如果沒有安裝,則使用yum源安裝
#yum install -y vsftpd
- 修改FTP配置文件
1、備份vsftp.conf文件
#cp vsftpd.conf vsftpd.confbak
- 關閉匿名用戶訪問
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_deny=NO
local_root=/home/ftptest
紅色部分這樣配。User_list 添加創建用戶的纔可以生效
- 創建用戶
#useradd ftptest -s /sbin/nologin
#passwd ftptest
輸入兩遍密碼,用戶名密碼隨意
檢查 /etc/passwd
家目錄可以指定
- 註釋掉 /etc/pam.d/vsftp中auth required pam_shells.so,否則會造成503 login incorrect
- 關閉家目錄寫權限
#chmod a-w /home/ftptest
後續只能讓終端從這個路勁下載文件,不允許上傳文件。
vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()錯誤
原因是因爲從2.3.5之後,vsftpd增強了安全檢查,如果用戶被限定在了其主目錄下,則該用戶的主目錄不能再具有寫權限了!如果檢查發現還有寫權限,就會報該錯誤。
- 重啓服務
#systemctl restart vsftpd.service
如果出現未開啓的情況。請檢查 vsftp conf 文件是否有多餘空格
- 查看服務是否開啓
#systemctl status vsftpd.service
- 測試是否可以下載
# touch /home/ftptest/test.txt
訪問地址:ftp:/ip
輸入用戶名密碼查看。並下載文件。