web-dev-qa-db-ja.com

PURE-ftpd +パッシブモード+ TLS

私はlinux(debian 7.1 wheezy)を持っています。そこではpure-ftpdを実行し、仮想ユーザーを作成し、ftp用のフォルダーを作成しました。また、opensslをインストールし、tlsのプライベート証明書を作成します。すべて良さそうです。

  • ユーザーがTLSなしでパッシブモードで内部アドレスから接続する場合-正常に動作します。
  • ユーザーがパッシブモードで内部アドレスからTLSを使用して接続すると、正常に機能します。
  • ユーザーがTLSなしでパッシブモードで外部アドレスから接続する場合-正常に動作します。
  • ユーザーがTLSを使用してパッシブモードで外部アドレスから接続する場合-ftpサーバーが外部クライアントのローカルIPアドレスに戻るため、ftpは機能しません。そして、クライアントはこのアドレスを知りません。

また、この問題を解決して、外部アドレスが書き込まれる/etc/pure-ftpd/conf/ForcePassiveIPにconfファイルを作成しようとしました。しかし、ユーザーが外部アドレスから接続すると、外部アドレスを取得しましたが、接続で別のエラーが発生しました。そして、これは良くないと思います。内部ネットワークのユーザーは、ForcePassiveIP confファイルから外部アドレスを取得するため、ftpに接続できなくなります。

設定の異なる2つのftpサーバーを作成できるかもしれませんが、最適ではないと思います。

1
Gury
$ echo '30000 50000' > /etc/pure-ftpd/conf/PassivePortRange
$ service pure-ftpd restart

また、CSFまたはiptablesを使用する場合は、30000から50000までのすべてのポートを開く必要があります。

1
Sibin Grasic