• ベストアンサー

どのポートに送信されているか確認する方法

質問させていただきます。 知人のftpサーバにログインして作業を行おうとしたところ、コマンドを実行しても反応がありません。(lsコマンドを実行してもうんともすんとも言わず、しばらくして実行に失敗したメッセージが出る) こちら側のiptablesをテーブルを停止させた所、正常にコマンドが実行できたので、原因はポートが開放されていない事だと思うのですが、どのポートを開放すれば良いのか見当がつきません。(20,21番ポートを開放しても駄目した。) どのポートに、データが送信されているか確認する方法は、何か無いものでしょうか。 もしくは、コマンドが実行できない原因など思い当たりませんでしょうか? ちなみに、こちら側の環境は以下の様になっています。 OS : Fedora Core 6 接続 : 非passive お手数をおかけします。

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

  • ベストアンサー
  • lunarosa
  • ベストアンサー率73% (30/41)
回答No.3

FTP ACTIVE MODE による通信(data channel)は、サーバ からコネクションを張ります。 server:20 ── SYN ──> 1024以上:client ● server:20 <─ SYN+ACK ─ 1024以上:client server:20 ── ACK ──> 1024以上:client ● そこで、お手元の環境は「接続 : 非passive」、つまり active ですよね? ということは、少なくともローカル側では ●1, 3way の INPUT は許可しないと自分で自分を拒否することになります。

ryu-e
質問者

お礼

追加の説明の方、大変ありがとうございます。 無事接続できました。

その他の回答 (2)

  • lunarosa
  • ベストアンサー率73% (30/41)
回答No.2

>ftpサーバログインして作業を行おうとしたところ、コマンドを実行しても反応がありません。(lsコマンドを実行してもうんともすんとも言わず... 上からは、はなからログインできないのか、それともログインしてから ls の反応が無いのか解りかねますが...ニュアンスから後者の前提で、 client が間違いなく active であり、フィルタリングを全解除したら実行できたということであれば、 server:20 ─ Syn ─> 1024以上:client を通してやればいいのでは?

ryu-e
質問者

補足

すみません、こちらの理解がたらないので、確認させていただきたいのですが・・・。 server:20 ─ Syn ─> 1024以上:client 上記の意味する所は、「サーバ側、ポート20から、クライアント側、ポート1024以上への通信」ということで良いでしょうか? けど、そうなると、"Syn"の意味が無いですし・・・。 お手数をおかけして申し訳ありません。

回答No.1

Etherealなどでパケットを監視してみては?

ryu-e
質問者

お礼

回答ありがとうざいました。 Etherealは使用経験が無いのですが、次の機会に使用してみようと思います。

関連するQ&A