IIS : SSL/TLS の設定2022/01/26 |
SSL/TLS を有効化して、暗号化通信ができるように設定します。
|
|
[1] |
事前に SSL証明書を 購入 または 作成 または 取得 しておきます。
|
[2] |
PowerShell を管理者権限で起動して設定します。
他ホストで取得した SSL証明書を転送してきた場合、証明書ストアにインポートしておきます。( [1] のリンク先のように、自ホスト上で自己署名の証明書を作成した場合等は、すでに証明書ストアに証明書が存在しているため作業不要 ) |
Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. # 証明書に設定したエクスポートパスワードを格納 PS C:\Users\Administrator> $Password = ConvertTo-SecureString -AsPlainText -Force "P@ssw0rd" # [Cert:\LocalMachine\My] にインポート # ⇒ GUI で見た場合の [証明書 - ローカルコンピューター] - [個人] 配下 PS C:\Users\Administrator> Import-PfxCertificate -FilePath C:\Users\Administrator\rx-7.pfx -CertStoreLocation Cert:\LocalMachine\My -Password $Password PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\My Thumbprint Subject ---------- ------- 3B751FE86B523386DFC10D3225AC8D2BFD35C575 CN=rx-7.srv.world |
[3] | サイトに SSL/TLS の設定をします。 証明書は [Cert:\LocalMachine\My] 配下にインポートしていることを前提とします。 |
# 証明書を確認 PS C:\Users\Administrator> Get-ChildItem Cert:\LocalMachine\My PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\My Thumbprint Subject ---------- ------- 3B751FE86B523386DFC10D3225AC8D2BFD35C575 CN=rx-7.srv.world # 対象の証明書を $Cert に格納 PS C:\Users\Administrator> $Cert = Get-ChildItem Cert:\LocalMachine\My\3B751FE86B523386DFC10D3225AC8D2BFD35C575 PS C:\Users\Administrator> Get-Website Name ID State Physical Path Bindings ---- -- ----- ------------- -------- Default Web Site 1 Started %SystemDrive%\inetpub\wwwroot http *:80: RX-7.srv.world 2 Started C:\inetpub\newsite http *:80:rx-7.srv.world # [RX-7.srv.world] サイトに SSL Binding を設定 PS C:\Users\Administrator> New-WebBinding -Name "RX-7.srv.world" -IPAddress "*" -HostHeader "rx-7.srv.world" -Port 443 -Protocol https # 設定した SSL Binding に $Cert を設定 PS C:\Users\Administrator> New-Item IIS:\SslBindings\0.0.0.0!443!rx-7.srv.world -Value $Cert PS C:\Users\Administrator> Get-Website Name ID State Physical Path Bindings ---- -- ----- ------------- -------- Default Web Site 1 Started %SystemDrive%\inetpub\wwwroot http *:80: RX-7.srv.world 2 Started C:\inetpub\newsite http *:80:rx-7.srv.world https *:443:rx-7.srv.world sslFlags=0 # アクセスして動作確認 # 自己署名の証明書を使用している場合は [-k] (--insecure) オプションが必要 PS C:\Users\Administrator> curl.exe https://rx-7.srv.world/ IIS Virtual Host Test Page |
IIS : SSL/TLS の設定 (GUI)
|
GUI で設定する場合は以下のように実行します。
|
|
[4] | 事前に SSL証明書を証明書ストアにインポートしておきます。 当例では、以下のように [証明書 - ローカルコンピューター] - [個人] 配下にインポートしています。 なお、他ホストで取得して PKCS12 形式に変換した証明書をインポートするには、ファイルをダブルクリックして、証明書ストアに [ローカルコンピューター] を選択し、その後はデフォルトのまま次へ次へ進めていけば、以下のような配置になります。 |
[5] | Web サイトへの SSL の設定です。 [スタート] - [サーバーマネージャー] から [ツール] - [インターネット インフォメーション サービス マネージャー] を起動し、左ペインの [サイト] から、SSL バインド を設定したいサイトを右クリックして、[バインドの編集] を選択します。 |
[6] | [追加] ボタンをクリックします。 |
[7] | [種類] に [https] を選択し、[ホスト名] にはホスト名を入力します。 [SSL 証明書] には、当例のように証明書ストアにインポートした場合は、セレクトボックスの選択肢に表示されるため、選択して OK します。 |
[8] | SSL バインディングが追加されました。 |
[9] | 任意のホストから設定したホスト名宛てに HTTPS アクセスして動作を確認します。(自己署名の証明書の場合は警告が表示されます) |
Sponsored Link |