리눅스 설치 후 FTP 설정은 잘 되어 있는데 500 OOPS : cannot change directory 에러 메세지와 함께 연결 안될 때가 있다.
SELINUX 가 활성화 되어 있는 상태에서 관련 정책 허용(ALLOW)가 되어 있지 않아 발생하는 것이다.
웁스 500 에러
SELINUX 정책에서 FTP 관련으로 확인한다.
# getsebool -a |grep ftp
allow_ftpd_anon_write –> off
allow_ftpd_full_access –> off
allow_ftpd_use_cifs –> off
allow_ftpd_use_nfs –> off
ftp_home_dir –> off
ftpd_connect_db –> off
ftpd_use_fusefs –> off
ftpd_use_passive_mode –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off
tftp_use_cifs –> off
tftp_use_nfs –> off
ftp_home_dir 가 off 로 되어 있는데 on 으로 세팅해준다.
# setsebool ftp_home_dir on
# getsebool -a |grep ftp
allow_ftpd_anon_write –> off
allow_ftpd_full_access –> off
allow_ftpd_use_cifs –> off
allow_ftpd_use_nfs –> off
ftp_home_dir –> on
ftpd_connect_db –> off
ftpd_use_fusefs –> off
ftpd_use_passive_mode –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off
tftp_use_cifs –> off
tftp_use_nfs –> off
# /etc/init.d/vsftpd restart
권한이 변경된 것을 확인하였고, FTP 데몬을 재시작 한 다음,
FTP 계정 로그인 시도 해보면 정상적으로 되는 것을 확인할 수 있다.