間違い:
Response: 500 OOPS: cannot change directory:/home/visitor
Error: Critical error: Could not connect to server
ユーザーは訪問者で、グループはftpuseronlygroupです。
grep guest/etc/passwd
visitor:x:1000:1001::/home/visitor:/sbin/nologin
chown visitor:ftpusersonlygroup /home/visitor
chmod 777 /home/visitor
chmod -R ugo+rwx /home/visitor
フォルダ権限/home/visitor
合計12K `
drwxrwxrwx 3 visitor ftpusersonlygroup 69 Oct 3 20:10 .
drwx------. 3 root root 20 Oct 3 20:04 ..
-rwxrwxrwx 1 visitor visitor 18 Aug 2 16:00 .bash_logout
-rwxrwxrwx 1 visitor visitor 193 Aug 2 16:00 .bash_profile
-rwxrwxrwx 1 visitor visitor 231 Aug 2 16:00 .bashrc
drwxrwxrwx 2 visitor ftpusersonlygroup 6 Oct 3 20:19 www
vsftpd.conf
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100
SFTPは機能できますが、FTPは機能しません。次のテストに示すように、ファイアウォールはありません。 21/tcp open ftp vsftpd 3.0.2
FTPログ
Mon Oct 3 21:41:46 2016 [pid 26091] CONNECT: Client "XX.XXX.XX.XXX"
Mon Oct 3 21:41:46 2016 [pid 26090] [visitor] OK LOGIN: Client
「XX.XXX.XX.XXX」
グループゲストユーザはセクション0fに属する。
visitor : visitor ftpusersonlygroup
SELinuxが無効になっています。
getenforce Disabled
別のアイデアがありますか?
答え1
ユーザーホームディレクトリ(/home
この場合)の親ディレクトリを700ではなく755権限に設定します。 vsftpdユーザー(この場合は訪問者)もこのディレクトリを参照できる必要があります。
答え2
私の場合、この問題を解決した方法は次のとおりです。
私がこれを行うとき:
cd /var/www/vhosts/
usermod -d example.com usernameexample
エラーが発生します。
500 OOPS: can not change directory
それから私がこれをするとき:
usermod -d /var/www/vhosts/example.com usernameexample
問題が解決され、エラーが発生しなくなりました。