2014年2月16日日曜日

【vsfrpd】FTPが接続できない

お名前.comのVPS(以降、FTPサーバ)にvsftpdをインストールして設定した。
早速、FTPクライアントで接続すると以下のエラーが返ってきてFTPサーバに接続できない。

エラー -203: miscellaneous error occurred while trying to login to the host

設定を確認するけど間違っているところはない。おかげで1時間程はまってしました。
ファイアウォールやいろいろチェックしていくと「SELINUX」が有効になっていたことが原因だった。

「SELINUX」が有効であるか以下のコマンドを実行して確認する。

#/usr/sbin/getenforce

コマンドを実行して以下のメッセージが表示すれば「SELINUX」が有効だということになる。

Enforcing

「SELINUX」を無効にする方法は即時に反映する方法と設定に保存してサーバ再起動時に反映する方法がある。
前者の場合、以下のコマンドを実行する。

#setenforce 0

「SELINUX」が無効になっているか以下のコマンドを実行して確認する。

#/usr/sbin/getenforce

コマンドの実行して以下のメッセージが表示すれば「SELINUX」が無効だということになる。

Permissive

確認のためにFTPクライアントでFTPサーバに接続すると成功した。ただ、この方法だとvsftpdをインストールしているFTPサーバを再起動すると「SELINUX」が有効なった状態になってしまう。
そこで後者の方法も行なっておく。
以下のSELINUXの設定ファイルを編集する。

#vi /etc/selinux/config

設定ファイルの以下の箇所を

SELINUX=enforcing

以下のように修正する。

SELINUX=disabled

確認のために再起動してFTPクライアントでFTPサーバに接続すると成功した。