만약 selinux 설정이 되어 있을 경우에 vsftpd설치 후 클라이언트에서 접속시 다음과 같은 오류 발생할 수 있습니다.
(/etc/vsftpd/vsftp.conf를 수정했는데도 불구하고 500 오류가 나오면서 접속이 안될때는 SELinux 을 의심을 해 볼 것)
500 OOPS: cannot change directory:/home/*******
Linux 설치시 SELinux 로 설정했다면 디폴트로 사용자의 home 디렉토리에 쓰기를 막아놓습니다.
이럴 경우 SELinux 설정에서 FTP 부분을 변경하면 됩니다.
setsebool 을 이용하여 FTP접속시 디렉토리 접근을 할 수 있도록 변경
# setsebool -P ftp_home_dir 1
이렇게 하면, ftp directory에 대한 접근을 허가 하게 됩니다.
P옵션(-P)은 Rebooting 될더라도 값을 저장하여, 정상적으로 동작 하도록 합니다.
home 디렉토리의 읽고쓰기를 1(True)로 변경하시고 vsftpd 를 재시작.
# service vsftpd restart
FTP 에 관하여 SELinux 정책을 아예 적용하지 않는 옵션을 설정
# setsebool -P ftpd_disable_trans 1
FTP 접근 허용 (centos 6)
# setsebool allow_ftpd_full_access on
옵션확인
# getsebool -a | grep ftp