web-dev-qa-db-ja.com

vsFTPdとiptables-CentOS5.5でそれらを構成する方法は?

CentOS 5.5のtwoサーバーにvsFTPdをインストールし、このルールをiptablesに追加しました。

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

あるサーバーから別のサーバーにファイルをアップロードしようとすると、次の結果が得られるため、これでは不十分なようです(IPアドレスはマスクされています)。

# ftp 99.99.99.99
Connected to 99.99.99.99 (99.99.99.99).
220 (vsFTPd 2.0.5)
Name (99.99.99.99:root): vinny
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (99,99,99,99,107,74)
ftp: connect: No route to Host

iptablesに追加する必要のある2番目のルールに関する記事をネットでいくつか見つけましたが、正しい構文が見つかりませんでした。手伝ってもらえますか?

ps。 vsFTPdのデフォルトのインストールがあり、その構成ファイル内の何も変更したくありません(/etc/vsftpd/vsftpd.conf)、 可能なら。

4
yegor256

/ etc/sysconfig/iptables-configを編集して、次の行を追加します。

IPTABLES_MODULES = "ip_conntrack_ftp"

保存してiptablesを再起動します。
これは、パッシブモードでは非標準のポートを使用して通信するため、ftp接続を追跡する必要があり、iptablesは必要に応じてそれらを許可します。

6
PiL