LinuxゲートウェイでFTPにてファイル一覧表示・ファイル取得が行えません - F-Secure Community
<main> <article class="userContent"> <div><h2 id="toc-hId--1329494859">質問</h2><p>FTP で、接続、及び、ログインはできるが、ファイル一覧表示・ファイル送受信で停止する、又は、拒否される。(FTP プロトコルの LIST, NLST, RETR, STOR, STOU コマンドが実行できない)<br>他のプロトコル (HTTP, SMTP, POP) では問題なく動作する。</p> </div><div><h2 id="toc-hId--441991178">回答</h2><p>[原因と対応]<br>FTP プロトコルでは、接続・ログイン時は一つの TCP 接続 (コントロールセッション)<br>のみを利用します。</p> <p>しかし、ログイン後、ファイル一覧表示・ファイル送受信 (FTP プロトコル のLIST, NLST, RETR, STOR, STOU コマンド実行時) は、別のセッション (データセッション) を利用します。</p> <p>そのため、ファイル一覧表示・ファイル送受信を行うには、コントロールセッションとデータセッションの両方について、クライアント => Linux ゲートウェイ => サーバ の間で通信ができる必要があります。</p> <p><br>ファイアウォールの設定でこのような通信を拒否していないかご確認ください。<br>特に、ファイアウォール等で Passive モードでの通信のみ許可している場合、Active モードでの通信ができないことがあります。</p> <p>この場合、ファイアウォールの設定を確認するか、Passive モードでご利用ください。</p> <p> </p> <p>また、透過型でご利用の場合、FTP クライアントからのコントロールセッションの接続先は FTP サーバに、FTP サーバから見たコントロールセッションの接続元 IP アドレスは FTP クライアントになります。</p> <p>しかし、通常、FTP のデータセッションについては、Passive モードではクライアントからの接続先アドレスと Linux ゲートウェイからサーバへの接続元アドレス、Active モードではサーバからの接続先アドレスと Linux ゲートウェイからクライアントへの接続元アドレスが Linux ゲートウェイのアドレスになります。</p> <p>FTP の通信ができない場合、このような場合にファイアウォールが拒否していないかご確認ください。</p> <p> </p> <p>Linux ゲートウェイからサーバへの接続時、および、FTP のデータセッションで IP アドレスを保持する必要がある場合、tproxy パッチ適用済みカーネルが必要になります。</p> </div> </article> </main>