• ベストアンサー

ftpサーバーのデータ転送について

ftpサーバーからクライアントへのデータの転送は可能だったのですが ftpサーバーへクライアントからのデータの転送が叶いません いろいろしらべ回ったかぎり原因はパッシブモードを使用する際の 1024番以上の任意のポートの開放を行っていないためだということがわかりました そのため"vsftpd.conf"に #passive pasv_enable=YES pasv_min_port=10100 pasv_max_port=10150 を追加してvsftpdを再起動したのですが ポートを確認してもそれ等は解放されておらず データの転送もできませんでした 何が間違っているのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

FTPはいろいろと面倒な場合があるんですけどねぇ……。 >pasv_enable=YES >pasv_min_port=10100 >pasv_max_port=10150 >を追加してvsftpdを再起動したのですが >ポートを確認してもそれ等は解放されておらず 実際のデータ転送が始まるまで、netstatしてもオープンと表示されることは無かったかと思われますが…。 故に、外部のポート開放チェックとか使っても閉じている。と判定されるかと思われます。 ・FTPサーバはルータの内側(該当サーバ機のiptables以外のファイヤーウォールの内側)にあるのか? ・ルータ(ファイヤーウォール)はFTPのコマンドポート(21番)を監視しているものではないか? ・pasv_addr_resolveオプションやpasv_addr_resolveオプションの設定は? ルータによっては、コマンドポートのパケットを監視していて、PASVコマンドに記述されているIPアドレスとポート番号を書き換えてクライアントに送信するモノがあります。 ローカルIPアドレスをグローバルIPアドレスに書き換えてくれるだけなら問題はない(というかこっちは必須かな)、ポート番号まで書き換えた場合に クライアントからの接続を正しく中継できない。なんてことが発生する場合があります。 # 書き換えた結果、クライアントにそうしされる接続ポートが別のモノになる。 # ルータがちゃんとポート番号変換して接続してくれれば問題ないハズなんですが…。 サーバ側とクライアント側でパケットキャプチャして、コマンドポートの内容がどうなっているのか確認する。というのもありでしょう。 # 監視&書き換えを行っていることを明示していないモノもありますし。 ルータの製造元に問い合わせる。というのも、まぁアリでしょうかね。 「LAN内部にFTPサーバを構築してWAN側からアクセスする際に問題はあるか?」みたいな。 まぁ、FTPSにしない限り経路の途中でパケット盗聴されるとユーザー名とパスワードが漏れますから…「FTPは使わずにSFTP(SSH)を使う」とかいうのが ある意味で主流…なんですかね。 # ウチの自宅サーバも必要があればSFTPで。 # LAN内だとFTPも使いますけどね、手軽だから。(LAN内でもSFTPってのが増えてるかなぁ)

参考URL:
http://www.aconus.com/~oyaji/router/ftp.htm

その他の回答 (1)

noname#259146
noname#259146
回答No.2

ネットワーク環境が不明なので正しい回答ができませんが、多分ftpサーバー側の問題です。 ftpサーバー側のルータのパッシブモードで使うポートを解放してください。 クライアント側のルータは通常変更することはないですが、サーバ側は追加したサーバソフトが使うポートは開けないといけません。

関連するQ&A