CentOS 安裝vsftpd

查看是否已安裝了vsftpd:
rpm -qa | grep vsftpd

安裝vsftpd
yum -y install vsftpd

開機啓動
chkconfig vsftpd on

啓動vsftpd服務
service vsftpd start

配置防火牆
打開/etc/sysconfig/iptables文件
vi /etc/sysconfig/iptables

在REJECT行之前添加如下代碼
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 1:30999 -j ACCEPT



打開/etc/vsftpd/vsftpd.conf文件

pasv_enable=YES
pasv_min_port=1
pasv_max_port=30999

保存和關閉文件,重啓防火牆,FTP服務
service iptables start

service vsftpd restart


常見錯誤: 
1、 
530 Permission denied 
原因是/etc/vsftpd/vsftpd.conf裏userlist_enable=YES /etc/vsftpd/user_list含有root名單 2種解決辦法: 
[list]
[*]userlist_enable=NO 
[*]將root從user_list中去掉
[/list]
2、 
530 Login incorrect錯誤 
530 Login incorrect. 登錄失敗。 
 
將root從/etc/vsftpd/ftpusers中去掉。 

3、 
500 OOPS: cannot change directory:/root 500 OOPS: child died 遠程主機關閉連接。  
該錯誤的最簡單解決辦法 關閉 selinux防火牆  
關閉SELinux的方法: 
  修改/etc/selinux/config文件中的SELINUX="" 爲 disabled ,然後重啓。 如果不想重啓系統,使用命令setenforce 0 注: 
setenforce 1 設置SELinux成爲enforcing模式 
setenforce 0 設置SELinux成爲permissive模式。 
 
或者解決:  
①查看SELinux的狀態:sestatus -b | grep ftp 確切地說,只是查看了ftp的狀態。  
②在出現的結果中可以看到
ftp_home_dir off  
tftpd_disable_trans   off  
之類。我們現在只要把其中之一設置爲on就可以啦。 
③setsebool -P ftpd_disable_trans on 或者setsebool -P  ftp_home_dir  on 
 
無ftpd_disable_trans的可以把allow_ftpd_full_access修改爲 on
setsebool -P allow_ftpd_full_access on  


4、重啓vsftpd:servicevsftpd restart   
問題: 
500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list 
500 OOPS: priv_sock_get_result 遠程主機關閉連接。  
在/etc/vsftpd/目錄創建chroot_list文件:
touch chroot_list
發佈了21 篇原創文章 · 獲贊 13 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章