FTPのエラー → 500 OOPS: cannot change directory

SELinuxを有効にすると、

500 OOPS: cannot change directory: /home/developers

というようなエラーが出る。

これは、SELinuxがhomeディレクトリへのアクセスを禁止しているため。

次のコマンドで設定を変更する。

sudo setsebool -P ftp_home_dir 1

ただし、デフォルトではSELinuxは全てのFTPの設定を許可していません。

次のコマンドを入力すると、次のように出力されます。

sudo 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
httpd_enable_ftp_server –> off
sftpd_anon_write –> off
sftpd_enable_homedirs –> off
sftpd_full_access –> off
sftpd_write_ssh_home –> off
tftp_anon_write –> off

原則的には、意味を確認しながら一つずつ許可していくのですが、一般的には次のコマンドで全てを許可します。

sudo setsebool allow_ftpd_full_access on

個別に許可が必要な場合は、意味を調べて、必要な権限だけ許可して下さい。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です