ftp伺服器連接配接失敗,錯誤提示:
500 oops: cannot change directory:/home/*******
500 oops: child died
解決方法: 在終端輸入指令:
setsebool ftpd_disable_trans 1
service vsftpd restart
在安裝完vsftp服務後登陸時可能遇到cannot change directory後面是登陸者的目錄的錯誤。這是因為se設定的關閉了ftp的原因。 使用指令 getsebool ftpd_disable_trans 可以檢視目前的狀态如果不是on 那麼是輸入指令 setsebool ftpd_disable_trans 1 當然也可以加入-p參數 以便不需要每次開機都輸入這個指令 setsebool -p ftpd_disable_trans 1 同理 如果smb服務也遇到相同的問題。
在安裝完vsftp服務後登陸時可能遇到cannot change directory後面是登陸者的目錄的錯誤。這是因為se設定的關閉了ftp的原因。
使用指令
getsebool ftpd_disable_trans
可以檢視目前的狀态如果不是on
那麼是輸入指令
當然也可以加入-p參數 以便不需要每次開機都輸入這個指令
setsebool -p ftpd_disable_trans 1
同理 如果smb服務也遇到相同的問題 ,也可以這麼做。
setsebool -p samba_enable_home_dirs=1
selinux的問題也可以使用 管理工具中的 selinux management 來調整相關設定。
ftp登入時錯誤資訊:
500 oops: cannot change directory:/home/xxxxlogin failed.
421 service not available, remote server has closed connection
開始以為是權限問題,将home/xxxx chmod為777,vsftpd配置檔案全開依然不行。
==================================
i found information at the nsa that indicates you can disable selinux protection of the ftp daemon.
this seems a bit drastic. it certainly works for now though.
原來是新裝系統rhel5 增強的系統安全selinux在作怪,關掉selinux對ftp daemon的保護:
# setsebool ftpd_disable_trans 1
# service vsftpd restart