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