vsftpdでパッシブモードを設定する
vsftpdでPASVモードとF/Wの設定について
FTPサーバーのvsftpdでパッシブモードも有効にして、F/W(iptables)でパッシブモードで利用するポートを開放する手順を説明します
vsftpdでパッシブモードを有効にします
vsftpdの設定は既にFTPサーバーの設定が済んでいる事が前提で説明します。
vsftpd.confを編集して、「pasv_enable=YES」としてパッシブモードも有効します。但しデフォルトでパッシブモードが有効にしているので明示的に設定しないくても大丈夫です。
使用するポートは「pasv_min_port」、「pasv_max_port」でパッシブモードで利用するポートを指定します。
パッシブモードも設定を変更したら、vsftpdを再起動します
$ sudo vi /etc/vsftpd/vsftpd.conf # パッシブモードも有効にする pasv_enable=YES # パッシブモードで使用するポート範囲設定 pasv_min_port=40000 pasv_max_port=40030
F/W(iptables) で「ip_conntrack_ftp」を利用する
vsftpdでパッシブモードも有効にしたら、F/Wでパッシブモードで利用するポートでの通信を通すように設定を変更します
F/Wの設定を行なわないとパッシブモードで接続しても、ファイル一覧が取得できないので、F/Wでパッシブモードで使用するポートを開放します。
パッシブモードで利用するするポートをF/Wで通すには、「ip_conntrack_ftp」モジュールも有効にしてアプリケーションレベルでFTPプロトコルを通す方法と、パッシブモードで使用するポートをF/Wにポートレベルで通す方法があります
下記では、「ip_conntrack_ftp」モジュールを利用して、アプリケーションレベルでFTPプロトコルを通す方法を説明します
FTPで利用する「21」番ポートの通信を許可します
$ sudo iptables -I INPUT 4 -p tcp --dport 21 -j ACCEPT
21番ポートの設定が終わると、iptables-configの設定ファイルで「ip_conntrack_ftp」を有効してモジュールをロードする設定にします。IPマスカレードを利用している場合は「ip_nat_ftp」モジュールも設定します
$ sudo vi /etc/sysconfig/iptables-config IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp"
設定が終わるとiptablesを再起動します
# /etc/init.d/iptables restart
F/W(iptables) でパッシブモードで利用するポートを許可する
iptablesで「ip_conntrack_ftp」のモージュルを利用しない場合は、iptablesで許可するポートを追加する手順と同様でパッシブモードで利用する40000から40030を許可する設定をおこない、iptablesを再起動します
# 21番ポートの通信を許可します $ sudo iptables -I INPUT 4 -p tcp --dport 21 -j ACCEPT # パッシブモードで利用する4000から40030の通信を許可します $ sudo iptables -I INPUT -p tcp --dport 40000:40030 -j ACCEPT # iptablesを再起動します $ sudo /etc/init.d/iptables restart
ディスカッション
コメント一覧
まだ、コメントがありません