パッシブモードでポート20番の開放が必要?

このQ&Aのポイント
  • 最近になってFTPサーバーの構築に挑戦し始めたのですが、パッシブモードを使ってデータ通信用ポートにアクセスするためにポート20番の開放が必要なのか疑問に思っています。
  • パッシブモードでFTPサーバーを動かしている際に、データ通信用ポートとして60000~60030番を設定しましたが、外部からの接続を受け付けることができません。試行錯誤の末、ポート20番も開放する必要があることを突き止めましたが、なぜポート20番の開放が必要なのか理解できません。
  • パッシブモードでFTPサーバーを構築しようとしていますが、ポート20番の開放が必要なのか疑問です。データ通信用ポートとして60000~60030番を設定しており、ルーター側もこの範囲のポートを開放しましたが、外部からの接続を受け付けることができません。ポート20番も開放する必要があるのでしょうか?ご教授いただけると助かります。
回答を見る
  • ベストアンサー

パッシブモードでポート20番の開放が必要?

FTPサーバーでパッシブモードを使うことに関してお伺いしたいことがあります。 最近になってFTPサーバーの構築に挑戦し始めたのですが、ソフトウェアには vsFTPdを使い、パッシブモードで動かしています。 データ通信用ポートには60000~60030番を設定しており外部ネットワークからも アクセスしたいので、ルーター側も21番と60000~60030番のポートを開放しました。 調べた限りでは、この設定でパッシブモードが使えるはずなのですが、なぜか外部からの 接続を受け付けてくれません。試行錯誤の末、ルーター側でポート20番も開放しないと パッシブモードが使えないということを突き止めたのですが、僕が調べたどのサイトにも パッシブモードを使用するために20番ポートを開放しなければならないとは書いていませんでした。 データ通信に使用しているポートを調べたところ、確かに60000~60030番のポート を使っていたので、パッシブモードで動いているには違いないようなのですが どうにも腑に落ちない内容なので、どなたかご教授いただけませんでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.3

>「外部からの接続側」というのはクライアント端末のことでしょうか? そうです。 >そうであれば"netstat -n"でクライアントの使用しているポートも確認したのですが、ポートはシステムが決めたポート番号が >ランダムに使用されているような状態でした。 クライアント側の制御ポートに流れるコマンドを……ということだったのですが…。 http://www.aconus.com/~oyaji/router/ftp.htm クライアント側がPASVモードを指定するために発行したコマンドのレスポンスで指定されるポート番号が、 vsftpdで設定しているポート番号の範囲になっているか? を確認します。 範囲外になっていた場合はルータが書き換えた可能性が高いです。 # 書き換えたんならルータが責任持ってポート変換して欲しいトコですけどね…。 ポート番号の算出はこちらとかが参考になるかと。 http://www.nina.jp/server/basic/ftp.html >データ通信用ポートには60000~60030番を設定しており 一つのクライアントから31個もデータ通信用のコネクションが張られる…とも思えませんので、 もう少し減らしてもいいかと思われます。 # 私なら…せいぜい4個くらいでしょうかねぇ。 # まぁFTPサーバを外部公開していませんけど。 >ルーターにはAirMacを使っているのですが http://blog.bluegold.me/2011/08/problem-of-airmac-extreme/ FTPサーバ立てるのには…向かないっぽいですね。 opensshでsftpした方がいいかもしれません。 # SSHは非標準ポートへの変更を勧めますが。

nuko3chi
質問者

お礼

返答遅れて申し訳ございません。 詳しい解説をありがとうございます。おかげさまで原因は掴めたようです。 説明いただいた内容をまだ十分に検証できていないのですが どうやら、クライアントからのPASVコマンドの応答として サーバから通知されるサーバのアドレスがプライベートアドレスで返されているようです。 ルーターにプライベートIPをグローバルIPに変換する機能も無いため そのままパッシブモードでの通信が終了しているようです。 確認が取れていないのですが、パッシブモードで動作していると思っていた点については どうやらパッシブモードの失敗後に、そのままポートモードに移行して動作していたので うまくいっていると勘違いしていたように思われます。 ともあれ、私が所有しているルーター内でパッシブモード+SSLを使ったFTPサーバーは構築できないようなので SFTPを使ってFTPサーバーの構築を試してみたいと思います。 非常に参考になるアドバイスで本当に助かりました。ありがとうございます。

その他の回答 (2)

  • foitec
  • ベストアンサー率43% (1079/2453)
回答No.2

PSVモードでは20番は使いません。 PSVモードではPSVコマンドに応答(認証後)し、FTPサーバー側から待ち受けポートを知らせます。 で、まぁこのあたりの設定はvsFTPdで設定していると思うので問題は >パッシブモードを使用するために20番ポートを開放しなければならないとは書いていませんでした。 はいそのの通りですね。 恐らく静的IPマスカレードはOKでしょう。 なのでパケットフィルタ設定を見直しましょう。 WAN側から順方向にftpを「通過」ですね。

nuko3chi
質問者

補足

回答ありがとうございます。 パケットフィルタの設定については、ルーター側に関しては質問文で申し上げたような設定をしています。 ルーターにはAirMacを使っているのですが、ルーターの設定画面をみても通信を制御する方向を指定するような 設定項目はないようです。 それと、サーバーOSにはCentOS6を使っています。しかしデーモンのiptableに関しては起動すらさせていないので まず、この部分が原因になることも無さそうです。

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

ルータ自体がFTPのコマンドを監視していて、データ通信用のポートを自前で制御している。 なんて場合もありますが、その辺りはどうなんでしょう? # サーバからの返答をルータが書き換えてクライアントに送信する場合があります。 # まぁ、そういう場合はルータ自身に「FTP(コマンド)用のポート番号」を設定する項目があったりしますが…。 外部からの接続側でデータ用ポートがいくつになっているのか。を確認した方が良いかも知れません。

nuko3chi
質問者

補足

ありがとうございますm(__)m ルーターにはAirMacを使っているのですが、WEBサイトやルータの設定画面見た限り 「FTP(コマンド)用のポート番号」は見当たりませんでした。 でもなんとなく設定できないだけで「データ通信用ポートを自動制御」している というのはありそうな気がします。ルーターが何かしている以外に考えられる原因がないんですよね。 CentOS側ではiptableをOFFにしちゃっていますし。。。 「外部からの接続側」というのはクライアント端末のことでしょうか? そうであれば"netstat -n"でクライアントの使用しているポートも確認したのですが、ポートはシステムが決めたポート番号が ランダムに使用されているような状態でした。

関連するQ&A

  • FTPのパッシブモードの設定がうまくいきません

    FTPのパッシブモードの設定をしたいのですが、うまくいきません。 FTPサーバはvsftpdです。 vsftpd.confに次の設定はしました。 ------------------------------ pasv_addr_resolve=YES pasv_address=WANのアドレス pasv_min_port=60000 pasv_max_port=60099 ------------------------------ /etc/sysconfig/iptables-configに ------------------------------ IPTABLES_MODULES="ip_conntrack_ftp" ------------------------------ を設定しました。 lsmodで nf_conntrack_ftpがロードされているのを確認しました。 ルーターはNTTのRT-200NEで、 静的IPマスカレード設定で上記のTCP:21とTCP:60000-60099をFTPサーバのアドレスに設定しました。 iptables でも上記のポートは許可しています。 パソコンおやじさんのFTPサーバテストでPASVモードで接続テストを行いました。 http://www.aconus.com/~oyaji/ftp_tst/ftp_tst.htm すると、60101とかpasv_max_portで設定した値より上のポートで接続しようとしてタイムアウトになるようです。どうやら、ルーターで設定した値の少し上のポートで接続をしようとするようです。ルーターの設定を変更すると、ポート番号がそれにつれて変更します。 環境は OS: Fedora Core 6 FTPサーバ: vsftpd (Fedora Core 6に付属のものをアップデートしたもの) ルーター: NTT RT-200NE 回線: Bフレッツ (固定IP) どなたか、解決策をご存知の方教えていただけないでしょうか? よろしくお願いいたします。

  • ポートの開放

    当方FTPサーバーを利用してWANからの接続を設定中であります そこでルーターのポートを開放しているのですが 20番と21番の開放設定をおこないましたが 下記URLのポートチェックをかけると21番は開放できているのですが20番ポートがアクセスできない表示が出ます http://www.cman.jp/network/support/page_put.cgi ルーターのメーカーサポートに問い合わせたところ設定に問題がないようです ルーターはNTTモデムに直接接続しており、ルータを通じてFTPサーバー(バッファローテラステーション)に接続しております テラステーションには特にファイアウォール機能はないのでルーター以外に原因があるとは思えないのですが・・・ FFFTPというフリーウェアでFTPサーバーにアクセスするとユーザー認証はできているのですが、ファイル一覧が表示されない状況になっており原因は20番ポートがふさがっているからだと考えております ルーターの設定やサーバーの設定はメーカーサポートの指示通りおこないに詰まってしまっています どなたか対応等ご教示いただけたら幸いです

  • FTPサーバーでパッシブモードを使えるようにしたい

    当方、FTPサーバーを立ち上げています。 セキュリティ等も多少考慮してルーター経由で必要なポートだけあけるようにし、DMZ機能でサーバーマシンへIPを割り振ってます。 さて、FTPサーバーを立ち上げたのですが、クライアントがパッシブモードにチェックするとアクセスできなくなります。 外せば繋がる人もいますが、外すとまったくリストが取得できなくなり、結局いれても外しても接続不可能ってクライアントもいます。 当サーバーでもパッシブモードを有効になるようにしたいのですが、具体的にどうしたらいいのでしょうか? ルーターはマイクロ総研のNetGenesisOPT50です。 サーバーのOSはWIN2Kpro FTPサーバーはBPFTPv2.15です。 ルーターからはポート20と21はサーバーに割り振るようDMZ設定をしてあります。 他にあけなければならないポートがあるのでしょうか? よろしくお願いします。

  • ポート開放 9987番

    ポート開放のことについてです。 TeamSpeak3のサーバー構築で IP固定(LAN側固定IP払い出し)を行い ファイアウォールの設定(例外で) それとポート変換設定(IP指定)を行いました。 すると TCP30033番は開放できたのですがUDP9987番が開放できませんでした。 ルーター?CTUの機種は 2004(S) です。 わかる方お願いします。

  • 80番 433番 ポート開放ができずに困っています。

    80番 433番 ポート開放ができずに困っています。 osはWin7 モデムはRT-200KI 無線ルーターはWZR2-G300Nを使用しています。 ファイアウォールの停止、ウィルスソフトの停止、ルーターのポート開放設定も試してみたのですが ポート開放ができません。 80・433番 以外は開放できてるようなのですが… モデムにもルーター機能が付いているようなのですが、開放の為に何か設定が必要なのでしょうか? 回答お願い致します。

  • 80番ポートの開放が出来ない

    検証用Webサーバを構築しようとしています。 外部からサーバにアクセスできるようポートを開放したいのですが、今一よくわかりません。 やりたいこと Webサーバ(SV1)に外部からアクセスできるようにしたい 使用しているルータ Aterm BL170HV 設定したこと ルータにポートマッピング設定をした →LAN側ホスト:192.168.0.3 プロトコル:TCP ポート番号:any  LAN側ホスト:192.168.0.3 プロトコル:UDP ポート番号:any (最終的には必要ポートのみに絞る予定) DHCPはオフにし、各々のPC・SVで固定プライベートIPアドレスを設定した LAN環境                    PC1(192.168.0.2) onu-ルータ(192.168.0.1)∠SV1(192.168.0.3) 現在、PC1でhttp://192.168.0.3 と入力すると、SV1内にあるホームページのindex.htmが見られます。 一方、PC1でhttp://(プロバイダから割り当てられてるグローバルIPアドレス)と入力すると、ルータの設定画面に入ってします。 これを、ルータの設定画面ではなく、SV1のindex.htmが開くようにしたいです。 どうしたらいいのか、ご教授ください。       

  • Bフレッツのポート開放

    21番のポート開放をしたいのですが、開放できないので、ご質問します。 あまり通信には詳しくないので、変な表現があればお許しください。 現在、インターネット接続環境はNTTの光ファイバーマンションタイプ(Bフレッツ)を使用しています。モデムはBフレッツのVH-70Eを使用しています。ルーターは使用していません。 接続時はフレッツ接続ツールを使用しています。 プロバイダーはASAHIネットです。 パソコンは自作を使用しています。 OSは1つのパソコンに2000とXPが入っていますが、 どちらもポート開放しません。 なぜポートを開放したいのかというと、FTPサーバーでデータのやり取りをしたいのです。その際21番のポートが開放していないので、FTPサーバーにアクセスできないのです。NTTに問い合わせたところ、ルーターじゃないのでポート開放する方法などないと回答されました。 ウィルスソフトもFTPにアクセスする際には無効にしています。 私のIPアドレスがよく変わるそうです。それも原因があるのでしょうか?もし原因の1つならばどうすれば変わらないのでしょうか? ご回答よろしくお願い致します。

  • ポートの開放と共有フォルダ

    ポートの開放と共有フォルダの関係をご存知の方がおられましたら、 教えていただけますでしょうか。 現在、FTPサーバを  PCのOS :Windows2000サーバー  PCの場所 :ルータ内  ルータ設定 :サーバPCのIPアドレスのポート20,21を開放  FTPサーバの指定パス :c:\ftp (例)  Windowsの共有フォルダ:c:\share (例) という環境で動かしています。 外部からのアクセスは  FTPサーバの指定パス :FTP経由のみアクセス許可  Windowsの共有フォルダ:いかなる方法でも外部からのアクセス不可 としたいのですが、この状態で、外部からWindowsの共有フォルダに アクセスされてしまう事はあるのでしょうか? また、  ルータ設定 :サーバPCのIPアドレスのポート20,21を開放  ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓  ルータ設定 :サーバPCのIPアドレスのポート全てを開放 とした場合は、また違うのでしょうか?

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

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

  • minecraft ポート開放出来ない

    マインクラフトを友人としたいため、ubuntuでサーバを建てたのですが、外部(友人)が入ることが出来ません、自分はローカルで入ることは出来ます。ポート開放が出来ているか、確認できるサイトで確認したところ、「25565番は開放されていません」と出ました。サーバとルータのポート開放設定、ファイアウォール設定は済ませています。友人が建てたサーバには接続できます。 どう対処すればいいですか?