ブラウザを介して私のFTPサーバーにアクセスしようとするのに問題があります。
Filezillaを使用してアクセスすると、ディレクトリがよく見えます。ただし、ブラウザではディレクトリのリストを取得できません。
問題が解決することを願って、このエントリをiptablesに追加しましたが、変更されませんでした。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
答え1
簡単な解決策は、このFTPサーバーに接続するときにFilezillaを手動モードを使用するように切り替えることです。
FTPに接続するときは、制御チャネルと呼ばれるポート21を使用してください。コマンドを送信し、実行されたコマンドの結果に関する通知を受信するために使用される接続。ファイルリスト(として出力LIST
)、ファイル転送(ファイルのインポートRETR
とファイルの挿入STOR
)、および実際にデータ転送を必要とするその他の操作では、データチャネルと呼ばれる別々のチャネルが作成されます。 FTPはこのデータチャネルをアクティブモードまたはパッシブモードで動作できます。どちらもデータチャネルの設定方法を示します。
You issue a LIST (in active mode)
CLIENT FIREWALL FTP SERVER
_ (port 21) _
__ _ (port 21) |=| ---------- LIST command ---------> |=|
[__]|=| ----- LIST command issued -- > |=| |=|
/::/|_| . |_| <----- FTP server attempts to ---- |_|
`\___ now listening on arbitrary connect and gets denied
port for data channel say 8000 by firewall
アクティブモードでは、クライアントは自分が作成したすべてのリスニングポートを広告します。FTPサーバークライアントコンピュータがこの広告されたアドレスとポートに接続します。これは通常、ファイアウォールがトラフィックをブロックする場所です。これは、FTPデータチャネルを通知するクライアントホストのランダムな(頻繁に変更される)親ポート番号です。 Filezillaはデフォルトで6000から7000のポートを使用します。ファイアウォールがこの接続をブロックしない場合、LIST
コマンド出力はこの別々のチャネルを介して送信されます。
You issue a LIST (in passive mode)
CLIENT FIREWALL FTP SERVER
_ (port 21) _
__ _ (port 21) |=| ---------- LIST command ---------> |=|
[__]|=| --- LIST command issued -- > |=| |=|
/::/|_| |_| <--- FTP server advertises the --- |_|
listening data port over \___ server with
the control channel listening data
channel
CLIENT FIREWALL FTP SERVER
_ (port 21) _
__ _ <--- open control channel ---> |=| ---- open control channel ----> |=|
[__]|=| |=| |=|
/::/|_| --- client establishes a ----> |_| ---- passive data channel ----> |_|
connection to the connection allowed
advertised data channel by firewall
手動モードでは、役割が変更され、FTPクライアントはコマンドの前にPASV
コマンドを実行しますLIST
。これFTPサーバーその後、受信TCPポートを作成し、クライアントが接続するポートを広告チャネルでデータチャネルを確立します。ほとんどのファイアウォールは通常これを許可します(クライアントがすべてのポートにアウトバウンド接続を作成できるため)。
FTPサーバーとインターネットの間にファイアウォールがある場合、ファイアウォール返品手動接続を許可するには、これらのポートを開くように設定する必要があります。ほとんどのFTPサーバーには広告されるポート範囲を設定する機能があり、これらのポートを開いてこれらの接続を許可できます。
制限があり、手動操作を実行できないクライアントがある場合、Filezillaはこの機能を提供します(編集 - >設定... - >接続/ FTP /アクティブモードで使用するポート設定)。その後、このポートをコンピュータに追加できます。ファイアウォール。