パッシブモード
パッシブモード
FTP(File Transfer Protocol)は、ファイルを転送するためのプロトコルであり、通常は2つの接続を使用します。データ転送用の「データ接続」と、制御用の「制御接続」です。FTPは、通常、ポート21を制御接続のために使用し、ポート20をデータ接続のために使用します。
FTPのパッシブモードは、データ接続を確立するために、制御接続に加えてさらに1つの接続を使用する方法です。パッシブモードでは、クライアントがデータ接続を確立するために、制御接続を使用せずにFTPサーバーに接続し、サーバーからポート番号を受信します。その後、クライアントは、指定されたポート番号を使用してデータ接続を確立します。
パッシブモードの利点は、ファイアウォールの背後にいるクライアントがFTPサーバーに接続できるようになることです。ファイアウォールは、通常、送信元のポートを記録して、そのポートに対するレスポンスを許可します。しかし、FTPの通常の動作では、ポート20を使用するため、ファイアウォールによってブロックされる可能性があります。パッシブモードでは、クライアントがデータ接続のポート番号を指定するため、ファイアウォールによる問題を回避することができます。
一方、パッシブモードの欠点は、追加のポートが必要であるため、ネットワークの管理がより複雑になることです。また、パッシブモードは、FTPサーバーの管理者がポート範囲を指定する必要があるため、慎重な管理が必要となります。
したがって、FTPのパッシブモードは、ファイアウォールの背後にいるクライアントがFTPサーバーに接続する必要がある場合に便利な方法です。ただし、ネットワーク管理者は、追加のポートの設定や管理に注意する必要があります。
FTPのパッシブモードでは、データ転送用のポート番号を指定するために、PASVコマンドを使用します。PASVコマンドを使用すると、FTPサーバーがポート番号を返し、クライアントはそのポート番号を使用してデータ接続を確立します。
以下は、パッシブモードでFTP接続を確立する例です。
- クライアントがFTPサーバーに接続し、USERコマンドを使用してユーザー名を送信します。
- クライアントがPASSコマンドを使用してパスワードを送信します。
- クライアントがPASVコマンドを送信し、FTPサーバーからデータ転送用のポート番号を受信します。
- クライアントは、FTPサーバーから受信したポート番号を使用して、データ接続を確立します。
- ファイルの転送が行われます。
このように、パッシブモードでは、データ接続のポート番号を指定するためにPASVコマンドを使用するため、ファイアウォールの背後にあるクライアントがFTPサーバーに接続できるようになります。ただし、FTPサーバーの管理者は、ポート範囲を指定する必要があるため、設定には注意が必要です。