次の方法で共有


IIS 7 での新しい FTP サイトの作成

作成者: Robert McMurray

互換性

バージョン メモ
IIS 7.5 FTP 7.5 サービスは、Windows 7 および Windows Server 2008 R2 の IIS 7.5 の機能として付属しています。
IIS 7.0 FTP 7.0 および FTP 7.5 サービスは、IIS 7.0 とは別にリリースされ、https://www.iis.net/downloads/microsoft/ftp という URL からサービスをダウンロードしてインストールする必要がありました。

はじめに

Microsoft は、Windows Server® 2008 以降の FTP サービスを更新しました。 この更新された FTP サービスには、Web 作成者が以前よりも適切にコンテンツを公開できるようにする多くの新機能が組み込まれ、Web 管理者により多くのセキュリティとデプロイのオプションが提供されます。

このドキュメントでは、新しい FTP ユーザー インターフェイスを使用して IIS 構成ファイルを直接編集し、FTP サイトをゼロから作成する方法について説明します。 その構成要素を次に示します。

Note

このチュートリアルには、ローカル管理者アカウントを使用して FTP サイトにログインする一連の手順が含まれています。 これらの手順は、必ずサーバー自体でループバック アドレスを使用するか、またはリモート サーバーから SSL 経由で行ってください。 Administrator アカウントではなく別のユーザー アカウントを使用する場合は、適切なフォルダーを作成し、必要に応じてそのユーザー アカウントの適切なアクセス許可を設定する必要があります。

前提条件

この記事の手順を完了するには、次の項目が必要です。

  1. Windows 2008 Server に IIS をインストールし、インターネット インフォメーション サービス マネージャーをインストールする必要があります。

  2. 新しい FTP サービスをインストールする必要があります。 次のいずれかのリンクを使用して、Web サイト (https://www.iis.net/) から FTP サービスをダウンロードしてインストールできます。

    • FTP 7.5 for IIS 7 (x64)
    • FTP 7.5 for IIS 7 (x86)
  3. FTP 公開用のルート フォルダーを作成する必要があります。

IIS マネージャーを使用した新しい FTP サイトの作成

新しい FTP サービスを使用すると、新しい FTP サイトを 0 から作成するために必要なすべての手順を説明するウィザードを提供して、新しい FTP サイトを簡単に作成できるようになります。

手順 1: FTP サイト ウィザードを使用して FTP サイトを作成する

この最初の手順では、匿名ユーザーが開くことができる新しい FTP サイトを作成します。

Note

このチュートリアルに出現する各設定では、FTP サイトへのパスとして %SYSTEMDRIVE%\inetpub\ftproot が指定されています。 必ずしもこのパスを使用する必要はありませんが、サイトの場所を変更する場合は、このチュートリアル全体で使用されるサイト関連のパスを変更しなければならなくなります。

  1. IIS マネージャーを開きます。 [接続] ペインのツリーから [サイト] ノードを開きます。

  2. 次の図に示すように、ツリーの [サイト] ノードを右クリックし、[FTP サイトの追加] をクリックするか、[操作] ペインの [FTP サイトの追加] をクリックします。

    • %SystemDrive%\inetpub\ftproot にフォルダーを作成します。

    • 匿名アクセスを許可するようにアクセス許可を設定します。

      1. コマンド プロンプトを開きます。

      2. 次のコマンドを入力します。

        ICACLS "%SystemDrive%\inetpub\ftproot" /Grant IUSR:R /T
        
      3. コマンド プロンプトを閉じます。

      [I I S Manager] ページのスクリーンショット。[接続] ウィンドウで[アプリケーション プール]が展開され、[ADD F T P Site]\(F T P サイトの追加\) が強調表示されます。

  3. FTP サイトの追加ウィザードが表示されたら次の操作を行います。

    • [FTP サイト名] ボックスに「My New FTP Site」と入力し、「前提条件」セクションで作成した %SystemDrive%\inetpub\ftproot フォルダーに移動します。 コンテンツ フォルダーへのパスを入力したい場合は、パス内で環境変数を使用できることに注意してください。

    • これらの項目が完了したら、[次へ] をクリックします。

      [ADD F T P Wizard Site Information]\(F T P ウィザードのサイト情報の追加\) ページのスクリーンショット。[F T P サイト名] ボックスには、My New F T P Site というテキストが表示されます。

  4. 次のウィザード ページで次の操作を行います。

    • [IP アドレス] ボックスの一覧から FTP サイトの IP アドレスを選択するか、または既定値である [すべて未割り当て] を選択します。このチュートリアルの後半で管理者アカウントを使用するため、必ずサーバーへのアクセスを制限し、[IP アドレス] ボックスには「127.0.0.1」と入力して、コンピューターのローカル ループバック IP アドレスを入力してください。

      Note

      IPv6 を使用している場合は、"::1" の IPv6 localhost バインディングも追加する必要があります。

    • [ポート] ボックスに FTP サイトの TCP/IP ポートを入力します。 このチュートリアルでは、既定のポートである 21 を選択します。

    • このチュートリアルではホスト名を使用しないため、[仮想ホスト] ボックスは必ず空欄にしてください。

    • [証明書] ドロップダウンが [選択されていません] に設定されており、[SSL を許可する] オプションが選択されていることを確認します。

    • これらの項目が完了したら、[次へ] をクリックします。

      [ADD F T P Site Wizard Binding and S S L Settings]\(F T P サイトの追加ウィザードのバインドと S S L 設定\) ページのスクリーンショット。バインド カテゴリには、[I P アドレス] ボックスが含まれています。[F T P サイトを自動的に開始する] チェック ボックスがオンになっています。

  5. 次のウィザード ページで次の操作を行います。

    • [認証] 設定に [匿名] を選びます。

    • [認可] 設定で、[アクセス許可]ドロップダウンから [匿名ユーザー] を選択し、[アクセス許可] オプションの [読み取り] を選択します。

    • これらの項目が完了したら、[完了] をクリックします。

      [ADD F T P Site Wizard Authentication and Authorization Information]\(F T P サイトの追加ウィザードの認証と承認情報\) ページのスクリーンショット。[認証] ボックスの [匿名] チェック ボックスがオンになっています。

まとめ

新しい FTP サービスを使用して、新しい FTP サイトが正常に作成されました。 この手順で完了した項目をまとめます。

  1. "My New FTP Site" という名前の新しい FTP サイトを作成し、サイトのコンテンツ ルートを %SystemDrive%\inetpub\ftproot に設定しました。
  2. FTP サイトをポート 21 のコンピューターのローカル ループバック アドレスにバインドし、FTP サイトに Secure Sockets Layer (SSL) を使用しないことを選択しました。
  3. 匿名ユーザーにファイルへの "読み取り" アクセスを許可する FTP サイトの既定のルールを作成しました。

手順 2: 追加の FTP セキュリティ 設定の追加

匿名ユーザーが参照できる新しい FTP サイトを作成することは、パブリック ダウンロード サイトにとって有益ですが、Web の作成も同様に重要です。 この手順では、管理者アカウントの追加の認証と認可の設定を追加します。 そのためには、次の手順に従います。

  1. IIS マネージャーで、前に作成した FTP サイトのノードをクリックし、[FTP 認証] をダブルクリックして [FTP 認証機能] ページを開きます。
    [I I S Manager] ページのスクリーンショット。[My New F T P Site]\(新しい F T P サイトのホーム ページ\) が表示されます。[F T P 認証] アイコンが強調表示されています。

  2. [FTP 認証] ページが表示されたら、[基本認証] を強調表示し、[操作] ウィンドウで [有効] をクリックします。
    [F T P 認証] ページのスクリーンショット。[基本認証] オプションが強調表示されています。[有効化] ボタンは、[操作] ウィンドウにあります。

  3. IIS マネージャーで、FTP サイトのノードをクリックして、すべての FTP 機能のアイコンをもう一度表示します。

  4. 認可規則を追加して、管理者がログインできるようにする必要があります。 そうするために、FTP 認可規則アイコンをダブルクリックして、[FTP 認可規則機能] ページを開きます。
    [My New F T P Site Home]\(新しい F T P サイトのホーム ページ\) のスクリーンショット。[F T P 承認規則] アイコンが強調表示されています。

  5. [FTP 認可規則] ページが表示されたら、[操作] ウィンドウで [許可ルールの追加] をクリックします。
    [F T P 承認規則] ページのスクリーンショット。[許可ルールの追加] は 、[操作] ウィンドウにあります。

  6. [認可規則の追加] ダイアログ ボックスが表示された場合:

    • [指定されたユーザー] を選択し、ボックスに「administrator」と入力します。
    • [アクセス許可] で、[読み取り][書き込み] の両方を選択します。
    • これらの項目が完了したら、[OK] をクリックします。
      [承認規則の追加] ダイアログ ボックスのスクリーンショット。[指定されたユーザー] の横にあるチェック ボックスがオンになっています。2 つの [アクセス許可] オプションもオンになっています。

まとめ

この手順で完了した項目をまとめます。

  1. FTP サイトに基本認証を追加しました。
  2. FTP サイトの "読み取り" と "書き込み" の両方のアクセス許可を管理者アカウントに許可する認可規則を追加しました。

手順 3: FTP サイトにログインする

手順 1 では、匿名ユーザーがアクセスできる FTP サイトを作成しました。手順 2 では、管理者がログインできるようにする追加のセキュリティ設定を追加しました。 この手順では、Administrator アカウントを使用して匿名でログインします。

Note

この手順では、ローカル管理者アカウントを使用して FTP サイトにログインします。 手順 1 で FTP サイトを作成した際に、FTP サイトをローカル ループバック IP アドレスにバインドしました。 ローカル ループバック アドレスを使用しなかった場合は、SSL を使用してアカウント設定を保護します。 管理者アカウントではなく別のユーザー アカウントを使用する場合は、適切なフォルダーにそのユーザー アカウントの適切なアクセス許可を設定します。

FTP サイトに匿名でログインする

  1. FTP サーバーで、コマンド プロンプト セッションを開きます。

  2. FTP サーバーに接続するには、次のコマンドを入力します。

    FTP localhost
    
  3. ユーザー名の入力を求められたら、「anonymous」と入力します。

  4. パスワードの入力を求められたら、メール アドレスを入力します。

これで、FTP サイトに匿名でログインしました。 手順 1 で追加した認可規則に基づいて、コンテンツ フォルダーへの読み取りアクセス権のみが付与されているはずです。

Administrator アカウントを使用して FTP サイトにログインする

  1. FTP サーバーで、コマンド プロンプト セッションを開きます。

  2. FTP サーバーに接続するには、次のコマンドを入力します。

    FTP localhost
    
  3. ユーザー名の入力を求められたら、「administrator」と入力します。

  4. パスワードの入力を求められたら、管理者パスワードを入力します。

これで、ローカル管理者として FTP サイトにログインしました。 手順 2 で追加した認可規則に基づいて、コンテンツ フォルダーへの読み取りと書き込みの両方のアクセス権が付与されているはずです。

まとめ

この手順で完了した項目をまとめます。

  1. FTP サイトに匿名でログインしました。
  2. ローカル Administrator として FTP サイトにログインしました。

IIS 構成ファイルを編集した新しい FTP サイトの作成

IIS 構成ファイルを編集して、新しい FTP サービスの FTP サイトを作成することもできます。

Note

ApplicationHost.config ファイルを編集するには、完全な管理権限が必要です。 そのためには、次の 2 つの方法のいずれかを使用します。

  • ローカルの "管理者" アカウントを使用してコンピューターにログインします。 - ローカルの "Administrator" アカウントではない管理権限を持つアカウントを使用してログインしている場合は、[管理者として実行] オプションを使用してメモ帳を開きます。

Note

Windows Vista および Windows Server 2008 オペレーティング システムではユーザー アカウント制御 (UAC) セキュリティ コンポーネントによって applicationHost.config ファイルへのアクセスが禁止されているため、上記の手順が必要です。 UAC の詳細については、次のドキュメントを参照してください。

https://go.microsoft.com/fwlink/?LinkID=113664

次の手順では、新しい FTP サイトを最初から作成するために必要なすべての設定について説明します。

  1. Windows のメモ帳などテキスト エディターを使用して ApplicationHost.config ファイルを開きます。既定では、%SystemRoot%\System32\inetsrv\config フォルダーに格納されています。

  2. <sites> セクションを見つけます。 このセクションには、既定の Web サイトが含まれており、まずは次のような操作を行う必要があります。

    <sites>
      <site name="Default Web Site" id="1">
         <application path="/">
            <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
         </application>
         <bindings>
            <binding protocol="http" bindingInformation="*:80:" />
         </bindings>
      </site>
    
  3. 既定の Web サイトのセクション全体をコピーし、</site> のクロージング タグのすぐ下の新しい行に貼り付けます。

  4. サイトの設定を変更して、一意の FTP サイトを作成します。

    • 新しいサイトの 名前ID 属性を変更して、それぞれに "既定の FTP サイト" と "2" が含まれるようにします。

      Note

      サイト ID に対して "2" 以外の番号を選択する必要があるかもしれません (現在、サイトでそのサイト ID が使用されている場合)。

    • バインド要素のプロトコル属性の値を、"ftp" を含む値に変更します。

    • physicalPath 属性を %SystemDrive%\inetpub\ftproot に変更します。

    • bindingInformation 属性のポート値を変更して、"21" が含まれるようにします。

  5. 終了 bindings タグの下に <ftpServer> セクションを追加します。認証設定はここに格納されます。

    <ftpServer>
      <security>
         <authentication>
             <anonymousAuthentication enabled="true" userName="IUSR" />
             <basicAuthentication enabled="true" />
         </authentication>
         <ssl controlChannelPolicy="SslAllow" dataChannelPolicy="SslAllow" />
      </security>
    </ftpServer>
    

    Note

    FTP サイトの認証設定は、URL ごとに構成できる Web サイトの認証とは異なり、サイト レベルで構成されます。

    <sites> セクションには、次の例のような内容が含まれているはずです。

    <sites>
       <site name="Default Web Site" id="1">
          <application path="/">
             <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
          </application>
          <bindings>
             <binding protocol="http" bindingInformation="*:80:" />
          </bindings>
       </site>
       <site name="Default FTP Site" id="2">
          <application path="/">
             <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\ftproot" />
          </application>
          <bindings>
             <binding protocol="ftp" bindingInformation="*:21:" />
          </bindings>
          <ftpServer>
             <security>
                <authentication>
                   <anonymousAuthentication enabled="true" userName="IUSR" />
                   <basicAuthentication enabled="true" />
                </authentication>
                <ssl controlChannelPolicy="SslAllow" dataChannelPolicy="SslAllow" />
             </security>
          </ftpServer>
       </site>
    
  6. ApplicationHost.config ファイルの一番下までスクロールし、既定の FTP サイトの location セクションを追加します。ここには、認可の設定が追加されます。

    <location path="Your FTP Site Name">
       <system.ftpServer>
           <security>
               <authorization>
                   <add accessType="Allow" users="*" permissions="Read" />
                   <add accessType="Allow" users="administrator" permissions="Read, Write" />
               </authorization>
           </security>
       </system.ftpServer>
    </location>
    

    Note

    この例では、FTP サイトの承認設定は URL ごとに構成され、これらの設定では、特にすべてのユーザーの読み取りアクセス許可と管理者アカウントの読み取り/書き込みアクセス許可が有効になります。

  7. ApplicationHost.config ファイルを保存します。

これで、FTP クライアントを使用して、新しく作成した FTP サイトにログインできるようになりました。 IIS サーバーでインターネット エクスプローラーを匿名で使用するには、インターネット エクスプローラー アドレス バーに「ftp://localhost」と入力します。 ログインし、匿名でファイルが表示されるはずです。ユーザー資格情報の入力を求められることはないはずです。

まとめ

このタスクでは、IIS 構成ファイルを編集して FTP サイトを作成しました。 この手順で完了した項目をまとめます。

  1. 既定の Web サイトの設定をテンプレートとして使用して、新しい FTP サイトを作成しました。

  2. FTP サイトに対して次の認可規則を構成しました。

    • すべてのユーザーに読み取りアクセス許可が付与されています。
    • 管理者アカウントには読み取り/書き込みアクセス許可が付与されていました。