Cisco Meraki Japan

アカウントをお持ちの場合

  •   パーソナライズされたコンテンツ
  •   製品とサポート

アカウントをお持ちでない場合

アカウントを作成

File Transfer Protocol(FTP)は、TCP ネットワーク間でのファイル転送によく使用されるアプリケーション層プロトコルです。FTP は、アクティブとパッシブの 2 種類のモードをサポートしています。これらのモードでは、使用される接続メカニズムと、アクセスを許可するためのファイアウォールの設定が異なります。この記事では、これらのモードの相違点と、Cisco Meraki MX セキュリティ アプライアンスで必要なファイアウォールの設定について説明します。

アクティブ FTP の概要

アクティブ FTP セッションでは次の操作が実行されます。  

  1. クライアントが FTP サーバに PORT コマンドを送信します。送信元ポートは、ランダムな大きな番号のポートです。宛先ポートは 21 です。

  2. サーバが ACK で応答します。

  3. サーバが送信元ポート 20 と、クライアントの PORT コマンドに指定された宛先ポートを使用して、クライアントへの接続を開始します。

  4. クライアントがサーバに ACK を送信します。 FTP セッションが確立されます。

注:ステートフル ファイアウォール(MX を含む)で保護されているクライアントからインターネット上のサーバへのアクティブ FTP 接続は、ベータ版ファームウェアでサポートされています。サポートに連絡し、アウトバウンド アクティブ FTP をサポートするバージョンのファームウェアを使用していることを確認してください。

注:アウトバウンド アクティブ FTP は、MX ファームウェア バージョン 12.25 + および 13.6 + でサポートされています。

アクティブ FTP の MX 設定

MX アプライアンスの背後でのインバウンド アクティブ FTP の設定は単純です。ポート 21 および 20 での受信接続を許可するファイアウォール ルールを作成する必要があります。ファイアウォール ルールの作成についての詳細情報はここを参照してください。次に示す例では、内部 FTP サーバへの受信接続を許可する 1:1 NAT ルールについて詳しく説明します。
3ae7ca8d-151c-403a-a056-7fecbf99fbf8

 

MX アプライアンスではデフォルトで、すべての発信接続が許可されるので、追加のファイアウォール設定は不要です。次の図に、MX が関わるアクティブ FTP トラフィックのフローを示します。b0ec438c-53b6-416d-a785-204bf7783a69

パッシブ FTP の概要

パッシブ FTP は、クライアント側ファイアウォールで発生した問題を緩和するためにクライアントが要求できる FTP モードです。このプロセスが機能するためには、クライアントとサーバの両方でパッシブ FTP がサポートされている必要があります。パッシブ FTP を使用する場合、クライアントがサーバへの接続を開始します。ほとんどのファイアウォールでは、クライアントが開始したセッションからの着信トラフィックが許可されるため、このプロセスが効果的です。   パッシブ FTP 接続プロセスは次のとおりです。

  1. クライアントがポート 21 で FTP サーバに PASV コマンドを送信します。送信元ポートは、ランダムな大きな番号のポートです。宛先ポートは 21 です。

  2. サーバが PORT コマンドで応答します。PORT コマンドは、クライアントが接続できるランダムな大きな番号の(エフェメラル)ポートを指定します。

  3. クライアントがこのエフェメラル ポートでサーバへの接続を開始します。

  4. サーバが ACK で応答します。FTP セッションが確立されます。

 

クライアントからすべての接続が開始されるため、次に示すようにクライアント ファイアウォールでブロックされるトラフィックはありません。

74dc048f-23cd-4d68-926c-cd509d94ade1

パッシブ FTP の MX 設定

MX アプライアンスでパッシブ FTP を設定するには、FTP アプリケーションに関する追加の知識が必要です。ポート 21 での受信接続を許可し、またクライアントがパッシブ接続を使用して FTP サーバに接続するときに使用するエフェメラル ポートでの受信接続を許可するファイアウォール ルールを作成する必要があります。エフェメラル ポートは、通信に使用される一時的な非登録ポートです。エフェメラル ポートのポート番号は通常大きく、IANA 登録ポートの範囲外です。

 

通常、クライアントがパッシブ FTP を要求する際に使用されるエフェメラル ポートに関する情報は、特定の FTP サーバ ソフトウェアに関するドキュメントに収録されています。たとえば、Microsoft IIS はデフォルトではポート 1024 ~ 65535 を使用します。デフォルト設定の Microsoft IIS サーバでは、ポート 21 とポート 1024 ~ 65535 で受信接続を許可する必要があります。この設定により、クライアントがサーバのパッシブ FTP ポートで受信接続を確立できるようになります。

 

パッシブ FTP が正しく機能するためには、以下の 2 つのファイアウォール ルールが必要です。

  • ファイアウォールにより、ポート 21 での接続が許可される必要がある。
  • ファイアウォールにより、FTP アプリケーションが使用するエフェメラル ポートへの接続が許可される必要がある。


c8a47dbc-9782-4d29-83eb-8ff593fef1bd

 

ファイアウォール ルールの作成の詳細については、こちらを参照してください。次の図に、アクティブ FTP トラフィックの流れと、MX で許可する必要がある追加トラフィックを示します。
3e80bf01-f7ee-4062-b2f9-c434ca3cafd2

 

パッシブ FTP サーバの構成に関する注意事項

パッシブ FTP の設定時には、一般にサーバ側設定に、データ セッションの接続に「この IP アドレスを使用する」ことを指示するフィールドがあります。" デフォルトでは、ほとんどの FTP サーバ アプリケーションはこのフィールドにサーバ IP を使用します。 MX セキュリティ アプライアンスのようなステートフル ファイアウォールの背後に配置されている場合は、プライベート LAN アドレスが使用されることがよくありますが、その場合はクライアント セッションがデータを取得するために、存在しない IP 範囲に接続しようとします。 

ファイアウォールの背後に配置されている場合、このフィールドの内容を、転送元ポートのパブリック IP アドレス、またはファイアウォールの 1:1 NAT アドレスに使用されるパブリック IP アドレスに変更する必要があります。

たとえば、FileZilla Server でのこの設定は次のようになります。

 

注: Microsoft IIS バージョン 6 以前には、設定可能なサーバ IP オプションがありません。これが原因で、ステーフル ファイアウォールの背後でパッシブ FTP を設定するときに問題が発生する可能性があります。

関連リソース

この記事では、アクティブ FTP とパッシブ FTP のメカニズムの概要を説明しました。パッシブ FTP とアクティブ FTP の詳細については、このドキュメントを参照してください。