Microsoft FTP 7.5 の変更点

この記事では、Microsoft FTP 7.5 で導入された変更の一部について説明します。

元の製品バージョン:  インターネット インフォメーション サービス 8.0、 8.5
元の KB 番号:   2505047

一部の NLST コマンド ライン オプションが機能しない

FTP 7.5 では、FTP クライアントは NLST コマンドを使用して 、またはコマンド ライン オプション -C -1 -l -F -a -A のみを使用できます。 たとえば、オプション (逆の並べ替え方向の場合) とオプション (最後の書き込み時に並べ替える -r -t 場合) は機能しなくなりました。 これらのコマンド ライン オプションは RFC に記載されていないので、Microsoft は機能バージョンの FTP で実装を変更する場合があります。

バックグラウンドで FTP データ接続が確立され、非同期的に切断される

FTP データ接続の確立と切断は、コントロール接続の応答のバックグラウンドで処理されます。 FTP 7.5 は、3 ウェイ ハンドシェイクを開始してデータ接続を確立してから、コントロール接続へのコマンドへの応答として 200 PORT コマンドの成功を PORT 返します。 226 Transfer Complete 応答は、データ接続を切断するハンドシェイクが終了する前に、コントロール接続に対するコマンドと応答として LIST RETR 返されます。

IisFtp.vbs FTP 7.5 ではサポートされていません

FTP 7.5 から、IisFtp.vbsスクリプトはサポートされなくなったので、FTP 7.5 インストール パッケージの一部として含まれません。 そのため、FTP 7.5 でIisFtp.vbsを実行する必要がある場合は、この機能を使用して実行できる機能があります。 たとえば、インターネット インフォメーション サービス (IIS) 6.0 で Active Directory 分離モードで FTP サイトを作成するために使用できるコマンドは IIsFtp.vbs /setadprop 、FTP 7.5 では使用できません。 代わりに、ADSI エディターを使用して、Active Directory 分離モードでホーム ディレクトリをポイントするプロパティ msIIS-FTPRoot msIIS-FTPDir とプロパティを設定します。

ADSI エディターは、Active Directory のオブジェクトと属性の管理に使用できるライトウェイト ディレクトリ アクセス プロトコル (LDAP) エディターです。 これは、既定Windows Server 2008 ドメイン コントローラーにインストールされ、メンバー サーバーに手動でインストールする必要があります。

Active Directory モードでユーザーを分離するには、次の 3 つの主要な手順があります。

  • IIS で、分離する FTP サイトを作成して構成します。
  • ファイル サーバーを構成します。
  • Active Directory を構成します。

分離する FTP サイトを作成および構成するには、「FTP Active Directory ユーザー分離 」を参照してください

ファイル サーバーを構成する場合は、匿名ユーザーを偽装するように構成されたユーザーを含め、FTP サービスへの接続が許可されているすべてのユーザーの共有ディレクトリとユーザー ディレクトリを作成する必要があります。 この手順を完了する前に、予想されるディスク領域の使用量、記憶域の管理、ネットワーク トラフィックなどの要因を検討してください。

Active Directory を構成するには、代わりに ADSI エディターを使用 IisFtp.vbs。 Active Directory 分離モードで FTP 7.5 サイトを構成するには、次の手順を実行します。

  1. [ スタート] を 選択し、[ 実行] を選択し 、adsiedit.msc と 入力して ADSI エディターを実行します。
  2. 必要に応じて、FTP サーバーのドメインに接続します。 既定では、ドメイン コントローラーが属するドメインに接続します。
  3. コンソール ウィンドウで、FTP サーバーのドメインを展開し 、[%Domain Name%] を 展開し 、[CN=Users] を選択します
  4. 詳細ウィンドウで 、CN=%User% を右クリックし、[プロパティ] を 選択します
  5. [属性 エディター] タブ、[msIIS-FTPRoot] または [msIIS-FTPDir] を選択し、[編集] を 選択します
  6. [編集] をクリックし 、[OK] を選択します

FTP 7.5 は、FTP クライアントがパッシブ モードでデータ接続を必要とするコマンドを送信すると、125 または 150 の応答を返します。

以前のバージョンの IIS では、FTP サービスは、クライアントとサーバーがパッシブ モード接続を使用して通信している場合に 、125 データ 接続が既に開いている、転送開始応答 APPESTOU および STOR FTP クライアントによって送信されるコマンドを返します。 さらに、FTP は 150 ファイルの状態を返します。データ接続を開く予定です。 、および APPE アクティブ STOU モード STOR 接続を使用したコマンドに対する応答。

FTP 7.5 以降のバージョンでは、応答メッセージは、データ接続の要求がパッシブ モードまたはアクティブ モードを超えるかどうかに依存しません。 代わりに、データ接続が既に確立されている場合、FTP 7.5 は 125 データ 接続が既に開いていると応答します。転送が開始されます。 データ接続が確立されていない場合、FTP は 150 ファイル の状態で応答します。データ接続を開きます。

注意

FTP 7.5 では、以前の FTP 要求のデータ接続が切断されるまで、データ接続またはコマンドの確立は PASV EPSV 開始されません。

FTP クライアントが行末として CRLF を使用しない場合、FTP 7.5 は 451 エラー応答を返します

以前のバージョンの IIS では、FTP サービスは行末マークの両方 CRLF LF を受け入れ、その両方を受け入れていました。 FTP 7.5 から、行末マーカーとしての使用 LF はサポートされなくなりました。 RFC 959 によると、FTP は Telnet プロトコルの仕様に従う必要があります。有効な行末マーカーは CRLF ここでのみです。 FTP クライアントが LF で行を終了しようとすると、FTP 7.5 は次のエラー メッセージを返します。

451 パラメーターが正しくありません。

FTP クライアントがデータ接続に 1024 より低いポートを使用しようとすると、FTP 7.5 はデータ接続をリセットします。

以前のバージョンの IIS では、FTP クライアントは、パッシブ モードとアクティブ モードの両方の FTP 通信で、データ接続に 1024 より低いポートを使用できます。 FTP 7.5 から、FTP クライアントがデータ接続に 1024 より低いポートを使用しようとすると、FTP 7.5 は基になる TCP 接続をリセットします。 たとえば、FTP クライアントがコマンドを使用してファイルのパッシブ モードアップロードを試み、データ接続に 1024 より低いポートを使用しようとすると、アップロードは失敗し、次のようなエントリが FTP ログに書き込まれます STOR

2012-01-15 02:08:16 123.456.789.0 user01 123.1.1.1 40063 DataChannelOpened - - 0 0
2012-01-15 02:08:16 123.456.789.0 user01 123.1.1.1 40063 DataChannelClosed - - 1236 38
2012-01-15 02:08:16 123.456.789.0 user01 123.1.1.1 21 STOR file.txt 425 1236 0

注意

1024 未満のデータ ポートを使用したアクティブ モードの FTP アップロードの場合、Win32 の状態は 1236 ではなく 87 になります。

この動作は、0 ~ 1023 の範囲の FTP 7.5 ポートがシステム プロセスまたは特権ユーザーによって実行されるプログラム用に予約されたためです。

開いているファイルの FTP RETR

FTP サービス (FTPSVC) ではなく、別のプロセスによって既に開いているファイルの FTP 7.5 RETR(GET) は、 で失敗します ERROR_SHARING_VIOLATION

詳細情報

FTP 7.5 の詳細については、次の記事を参照してください。