Windows Azure Pack: Web サイトの構成
適用対象: Azure Pack Windows
ここでは、SSL 証明書ストアの構成、IP SSL の構成、共有証明書の構成など、プロビジョニング後の追加の構成について説明します。 ソース管理の構成については、「 Configure source control for Windows Azure Pack: Web Sites」を参照してください。 Web サイトのセキュリティに関するベスト プラクティスについては、「 Windows Azure Pack: Web Sites Security Enhancements」を参照してください。
IP SSL の構成
テナント Web サイトで IP ベースの SSL 証明書を使用できるようにする場合は、フロントエンド、コントローラー、および必要に応じて、ハードウェア ロード バランサーで構成する必要があります。
注意
既定では、SNI (Server Name Indication) SSL が有効になっています。 これをテナントが使用できるようにするには、管理者用の管理ポータルで作成するプランに含めます。
IP SSL を構成するには
使用する IP アドレスをバインドします。
各フロントエンド サーバーで、ネットワーク管理インターフェイスを開きます。
[インターネット プロトコル バージョン 6 (TCP/IPv6)] をクリックし、[プロパティ] をクリックします。
[詳細設定] をクリックして、詳細設定プロパティを開きます。
[追加] をクリックして IP アドレスを追加します。
[インターネット プロトコル バージョン 4 (TCP/IPv4)] についてもこの手順を繰り返します。
ヒント
IP SSL を使用する顧客または Web サイトはそれぞれ、各フロントエンド サーバー上に IP アドレスが必要です。 これには多くの労力が必要になる可能性があるため、スクリプトを使用して IP アドレスのバインドを自動化できます。
次に、IP SSL のトラフィック用に IP アドレスを使用するように、Web サイト クラウドを構成します。
管理者用の管理ポータルで、[Web サイト クラウド] をクリックし、構成するクラウドをダブルクリックします。
[ロール] をクリックし、フロントエンド サーバーを選択します。
[IP SSL] をクリックします。
[追加] をクリックして IP アドレス範囲を追加します。
開始アドレスと終了アドレスを入力し、チェックマークをクリックします。
注意
IP アドレス範囲は、各フロントエンド サーバーで一意である必要があります。
IPv4 アドレスと IPv6 アドレスの両方について、この手順を繰り返します。
Web ファームのフロント エンド サーバーごとにこれらのステップを繰り返します。
上流ハードウェア ロード バランサーを使用してフロントエンド サーバーへのトラフィックのバランスを調整する場合、最終的な手順は、Web サイト クラウドがロード バランサーと通信して特定の IP アドレスのロード バランサー プールを作成できるようレジスタを編集し、コールバック スクリプトを登録解除することです。
コールバック スクリプトは、Web ファームの Web サイト クラウド コントローラー上 (パスは C:\Program Files\IIS\Microsoft Web Hosting Framework\Scripts\Provision\Win) に配置されています。
DNS-RegisterSSLBindings.ps1 スクリプトを編集します。 このスクリプトは、ユーザーが IP SSL を使用する Web サイトを作成または編集するたびに使用されます。
$bindingsを使用してロード バランサー プールを作成します。 $hostnameを追跡するためのキーとして使用できます。
ロード バランサー プールに割り当てられた仮想 IP アドレスを返します ($retvalを使用)。
DNS-DeRegisterSSLBindings.ps1 スクリプトを編集します。 このスクリプトは、ユーザーが Web サイトから IP SSL を削除するか、Web サイトを削除またはプロビジョニング解除するたびに使用されます。
空の値を返します ($retvalを使用)。
共有証明書の構成
Web サイト サービスでは、フロントエンド サーバー、パブリッシャー、コントローラーの間でデータを暗号化するために証明書を使用します。
既定では、Windows Azure Pack: Websites は、最初の操作がクリア テキストで行われないように、自己署名証明書を提供します。 自己署名証明書を使用すると証明書の警告メッセージが表示されるため、運用環境では使用しないでください。
運用環境では、Web サイト ファームのエンドポイントをセキュリティで保護するために、3 種類の証明書が必要です。
フロントエンド: フロントエンド証明書は、共有 SSL およびソース管理操作で使用され、"すべて未割り当て" のバインドが含まれています。 フロントエンド証明書は、2 つのサブジェクトの証明書です。
パブリッシャー: パブリッシング証明書は、FTPS および Web デプロイのトラフィックをセキュリティで保護します。
証明機関 (CA) からこれらの証明書を取得し、管理者用の管理ポータルを使用してアップロードします。 証明書をファームにデプロイすることができるように、各証明書のパスワードを指定します。
既定のドメイン証明書
既定のドメイン証明書はフロントエンド ロールに配置され、テナント Web サイトによって、Web サイト ファームに対するワイルドカードまたは既定のドメイン要求で使用されます。 既定の証明書は、ソース管理の操作にも使用されます。
この証明書は .pfx 形式である必要があります。また、2 つのサブジェクトのワイルドカード証明書である必要があります。 これによって、既定のドメインおよびソース管理操作の scm エンドポイントの両方に、1 つの証明書で対応できます。
*.<DomainName.com>
*.scm. <DomainName.com>
ヒント
2 つのサブジェクトの証明書は、サブジェクト代替名 (SAN) 証明書と呼ばれることがあります。 2 つのサブジェクトの証明書の利点として、購入者が購入しなければならない証明書が 2 つではなく、1 つになることが挙げられます。
既定のドメインの証明書の指定
管理者用の管理ポータルで、[Web サイト クラウド] をクリックし、構成するクラウドを選択します。
[構成] をクリックして、Web サイト クラウドの構成ページを開きます。
[Web サイトの既定の証明書] フィールドで、フォルダー アイコンをクリックします。 [既定の Web サイト証明書のアップロード] ダイアログが表示されます。
使用する証明書を参照し、アップロードします。
証明書のパスワードを入力し、チェックマークをクリックします。 証明書は、Web ファーム内のすべてのフロントエンド サーバーに反映されます。
発行用の証明書
パブリッシャー ロールのための証明書は、その Web サイトのコンテンツをアップロードするときに、Web サイト所有者の Web デプロイおよび FTPS のトラフィックをセキュリティで保護します。
管理者用の管理ポータルで、Web サイト クラウドの [構成] ページには [発行の設定] セクションが含まれており、Web デプロイおよび FTP デプロイの DNS エントリを表示または構成できます。
発行用の証明書には、Web デプロイの DNS エントリと一致するサブジェクトと、FTPS デプロイのエントリと一致するサブジェクトが含まれている必要があります。
注意
既定の証明書でワイルドカードを使用した場合、パブリッシャー用に既定の証明書を使用することもできます。 ただし、別の証明書を指定する方が安全性に優れています。
発行用の証明書の指定
管理者用の管理ポータルで、[Web サイト クラウド] をクリックし、構成するクラウドを選択します。
[構成] をクリックして、Web サイト クラウドの構成ページを開きます。
[パブリッシャー証明書] フィールドで、フォルダー アイコンをクリックします。 [パブリッシャー証明書のアップロード] ダイアログが表示されます。
使用する証明書を参照し、アップロードします。
証明書のパスワードを入力し、チェックマークをクリックします。 証明書は、Web ファーム内のすべてのパブリッシング サーバーに反映されます。
Web デプロイの発行設定を HTTPS に変更する
インストール時に、Web デプロイの DNS 発行設定は既定で HTTP (ポート 80) に設定されます。 ベスト プラクティスとして、これを HTTPS (ポート 443) に変更する必要があります。 そのためには、次の手順を実行します。
管理者用の管理ポータルで、[Web サイト クラウド] をクリックし、構成するクラウドを選択します。
[構成] をクリックして、Web サイト クラウドの構成ページを開きます。
[発行の設定] セクションで、 [Web デプロイ DNS] エントリに ":443" を追加します (たとえば、publish.domainname:443)。
ポータル ページの下部にあるコマンド バーで、 [保存]をクリックします。
証明書のベスト プラクティス
証明書のサブジェクトの一致が正しいことを確認します。 Windows Azure Pack:Websites では証明書をアップロードできません。
最も安全なセットアップは、別の証明書を使用し、ドメインを分離することです。 これにより、フィッシングのシナリオとソーシャル エンジニアリング攻撃を防ぐことができます。
証明書の有効期限に注意します。 ある程度定期的に証明書を更新します。
Windows Azure Pack 自体で、信頼されていない自己署名証明書を信頼された証明書に置き換えることについては、 Post-installation best practices ガイドの「 Deploy Windows Azure Pack for Windows Server 」参照してください。
PowerShell コマンドのサポートの有効化
Windows Azure Pack Websites システムには、システムを管理するための豊富な PowerShell コマンドのセットが用意されています。 システム管理者は、これらのコマンドを使用して、ポータルで実行できるすべての操作に加えて、ポータルでは実行できない操作も実行できます。
Windows Azure Pack Websites 用の PowerShell コマンドにアクセスするには、次の PowerShell コマンドを使用します。
import-module websitesdev
各コマンドにはヘルプ情報が用意されています。 コマンドの一覧を取得するには、次のコマンドを使用します。
get-commands –module websitesdev
特定のコマンドに関する情報を取得するには、次のコマンドを使用します。
get-help <コマンド名>
ISAPI/クラシック モードの有効化
PowerShell コマンドを使用して、Windows Azure Pack: Websites の ISAPI/クラシック モードを有効にすることができます。
Web サイトのクラシック モードを設定するには、次のコマンドを実行します。 サイト名>を Web サイトの名前に置き換えます<。
Add-pssnapin webhostingsnapin
Set-Site -ClassicPipelineMode 1 -SiteName <サイト名>
クラシック モードが設定されていることを確認するには、次のコマンドを実行します。このコマンドにより、Web サイト構成のダンプが生成されます。 サイト名>を Web サイトの名前に置き換えます<。
Get-websitessite –rawview –name <sitename>