SELINUXが有効になっているサーバではvsftpdのデータ転送が使用できない

CentOSなどでは標準ではSELINUXが有効になっています。
また標準のFTPサーバはvsftpdです。
ここでSELINUXが有効になっていると、vsftpdインストール直後では制御コマンドは使用できますが、データ転送は使用できません。

具体的にはログイン、ディレクトリ変更、ファイル転送のコマンド自体は送信することができますが、ファイル一覧情報の取得、データの転送はできません。
つまりホームディレクトリの情報取得、変更はできません。

ファイルアップロードなどで、putコマンドではエラーが出ずに、実体ファイルを送信しようとしたときに次のようなエラーが出るとき

553 Could not create file.

またファイルの一覧が取得できないにもかかわらず、『 / 』ディレクトリの一覧のみは取得できるときはSELINUXによる制限がかかっています。

このとき、SELINUXを無効にすることで解消されますが、それではそもそもSELINUXの機能は失われます。

SELINUXを有効にした状態での、対処法はSELINUXでFTPのディレクトリ制御を解除します。

/usr/sbin/setsebool -P ftp_home_dir 1

スポンサーリンク

関連記事

スポンサーリンク

elevation 声が聞こえてくる高さを指定する

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る