VSFTPD 500 OOPS: 디렉터리를 변경할 수 없습니다.

VSFTPD 500 OOPS: 디렉터리를 변경할 수 없습니다.

실수:

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

문제가 해결되었으며 더 이상 오류가 발생하지 않습니다.

관련 정보