チュートリアル: PKI 証明書で TLS/SSL を使用するようにソフトウェア更新ポイントを構成する

Configuration Manager (現在のブランチ) に適用

WINDOWS SERVER UPDATE SERVICES (WSUS) サーバーとそれに対応するソフトウェア更新ポイント (SUP) を TLS/SSL を使用するように構成すると、潜在的な攻撃者がクライアントをリモートで侵害し、特権を昇格する能力が低下する可能性があります。 最適なセキュリティ プロトコルを確実に導入するには、TLS/SSL プロトコルを使用してソフトウェア更新プログラム インフラストラクチャを保護することを強くお勧めします。 この記事では、各 WSUS サーバーとソフトウェアの更新ポイントを HTTPS を使用するように構成するために必要な手順について説明します。 WSUS のセキュリティ保護の詳細については、WSUS ドキュメントの 「Secure Sockets Layer Protocol を使用した WSUS のセキュリティ 保護」の記事を参照してください。

このチュートリアルの内容:

  • 必要に応じて PKI 証明書を取得する
  • WSUS 管理 Web サイトに証明書をバインドする
  • SSL を必要とするように WSUS Web サービスを構成する
  • SSL を使用するように WSUS アプリケーションを構成する
  • WSUS コンソール接続で SSL を使用できることを確認する
  • WSUS サーバーへの SSL 通信を必要とするようにソフトウェアの更新ポイントを構成する
  • Configuration Managerを使用して機能を確認する

考慮事項と制限事項

WSUS では、TLS/SSL を使用して、クライアント コンピューターとダウンストリーム WSUS サーバーをアップストリーム WSUS サーバーに対して認証します。 WSUS では、TLS/SSL を使用して更新メタデータも暗号化されます。 WSUS は、更新プログラムのコンテンツ ファイルに TLS/SSL を使用しません。 コンテンツ ファイルは署名され、ファイルのハッシュは更新プログラムのメタデータに含まれます。 ファイルがクライアントによってダウンロードおよびインストールされる前に、デジタル署名とハッシュの両方がチェックされます。 いずれかのチェックが失敗した場合、更新プログラムはインストールされません。

TLS/SSL を使用して WSUS 展開をセキュリティで保護する場合は、次の制限事項を考慮してください。

  • TLS/SSL を使用すると、サーバーのワークロードが増加します。 ネットワーク経由で送信されるすべてのメタデータを暗号化すると、パフォーマンスが低下する可能性があります。
  • リモート SQL Server データベースで WSUS を使用する場合、WSUS サーバーとデータベース サーバー間の接続は TLS/SSL によって保護されません。 データベース接続をセキュリティで保護する必要がある場合は、次の推奨事項を検討してください。
    • WSUS データベースを WSUS サーバーに移動します。
    • リモート データベース サーバーと WSUS サーバーをプライベート ネットワークに移動します。
    • ネットワーク トラフィックをセキュリティで保護するために、インターネット プロトコル セキュリティ (IPsec) を展開します。

TLS/SSL を使用するように WSUS サーバーとそのソフトウェアの更新ポイントを構成する場合は、大規模なConfiguration Manager階層の変更を段階的に行う必要があります。 これらの変更を段階的に行う場合は、階層の下部から開始し、中央管理サイトで終わる上方向に移動します。

前提条件

このチュートリアルでは、インターネット インフォメーション サービス (IIS) で使用する証明書を取得するための最も一般的な方法について説明します。 organizationが使用する方法に関係なく、証明書がConfiguration Managerソフトウェアの更新ポイントの PKI 証明書の要件を満たしていることを確認します。 証明書と同様に、証明機関は WSUS サーバーと通信しているデバイスによって信頼されている必要があります。

  • ソフトウェアの更新ポイントの役割がインストールされている WSUS サーバー
  • TLS/SSL を有効にする前に、WSUS のリサイクルを無効にし、メモリ制限を構成する 際のベスト プラクティス に従ったことを確認します。
  • 次の 2 つのオプションのいずれか。
    • WSUS サーバーの 個人用 証明書ストアに既に存在する適切な PKI 証明書。
    • エンタープライズ ルート証明機関 (CA) から WSUS サーバーに適切な PKI 証明書を要求して取得する機能。
      • 既定では、WebServer 証明書テンプレートを含むほとんどの証明書テンプレートは Domain Admins にのみ発行されます。 ログインしているユーザーがドメイン管理者でない場合は、そのユーザー アカウントに証明書テンプレートの [登録 ] アクセス許可を付与する必要があります。

必要に応じて CA から証明書を取得する

WSUS サーバーの 個人用 証明書ストアに適切な証明書が既にある場合は、このセクションをスキップして、「証明書の バインド」 セクションから始めます。 内部 CA に証明書要求を送信して新しい証明書をインストールするには、このセクションの手順に従います。

  1. WSUS サーバーから管理コマンド プロンプトを開き、 を実行 certlm.mscします。 ローカル コンピューターの証明書を管理するには、ユーザー アカウントがローカル管理者である必要があります。

    ローカル デバイスの証明書マネージャー ツールが表示されます。

  2. [ 個人用] を展開し、[ 証明書] を右クリックします。

  3. [すべてのタスク]、[新しい証明書の要求] の順に選択します

  4. [ 次へ ] を選択して証明書の登録を開始します。

  5. 登録する証明書の種類を選択します。 証明書の目的は サーバー認証 であり、使用する Microsoft 証明書テンプレートは 、Web Server または サーバー認証拡張キー使用法として指定されているカスタム テンプレートです。 証明書を登録するための追加情報の入力を求められる場合があります。 通常は、少なくとも次の情報を指定します。

    • 共通名: [ サブジェクト ] タブで、値を WSUS サーバーの FQDN に設定します。
    • フレンドリ名: [ 全般 ] タブで、後で証明書を識別するのに役立つわかりやすい名前に値を設定します。

    登録の詳細を指定するための [証明書のプロパティ] ウィンドウ

  6. [ 登録]選択し、[完了] を選択 して登録を完了します。

  7. 証明書の拇印など、証明書の詳細を表示する場合は、証明書を開きます。

ヒント

WSUS サーバーがインターネットに接続している場合は、証明書のサブジェクトまたはサブジェクト代替名 (SAN) に外部 FQDN が必要です。

証明書を WSUS 管理サイトにバインドする

WSUS サーバーの個人用証明書ストアに証明書を作成したら、IIS の WSUS 管理サイトにバインドします。

  1. WSUS サーバーで、インターネット インフォメーション サービス (IIS) マネージャーを開きます。

  2. [サイトの WSUS 管理] > に移動します。

  3. アクション メニューから、またはサイトを右クリックして [ バインド ] を選択します。

  4. [ サイト バインド ] ウィンドウで、 https の行を選択し、[ 編集] を選択します。

    • HTTP サイト バインドを削除しないでください。 WSUS では、更新コンテンツ ファイルに HTTP が使用されます。
  5. [ SSL 証明書 ] オプションで、WSUS 管理サイトにバインドする証明書を選択します。 証明書のフレンドリ名がドロップダウン メニューに表示されます。 フレンドリ名が指定されていない場合は、証明書の IssuedTo フィールドが表示されます。 使用する証明書がわからない場合は、[ 表示 ] を選択し、拇印が取得した証明書と一致することを確認します。

    SSL 証明書が選択された [サイト バインドの編集] ウィンドウ

  6. 完了したら [OK] を 選択し、[ 閉じる] を選択してサイト バインドを終了します。 次の手順では、インターネット インフォメーション サービス (IIS) マネージャーを開いたままにします。

SSL を必要とするように WSUS Web サービスを構成する

  1. WSUS サーバーの IIS マネージャーで、[サイトの WSUS 管理]> に移動します。

  2. WSUS 管理サイトを展開して、WSUS の Web サービスと仮想ディレクトリの一覧を表示します。

  3. 以下の WSUS Web サービスごとに、次の手順を実行します。

    • ApiRemoting30
    • ClientWebService
    • DSSAuthWebService
    • ServerSyncWebService
    • SimpleAuthWebService

    次の変更を行います。

    1. [ SSL 設定] を選択します
    2. [ SSL が必要] オプションを有効にします。
    3. [クライアント証明書] オプションが [無視] に設定されていることを確認します。
    4. [適用] を選択します。

コンテンツなどの特定の機能では HTTP を使用する必要があるため、最上位の WSUS 管理サイトで SSL 設定を設定しないでください。

SSL を使用するように WSUS アプリケーションを構成する

WEB サービスが SSL を必要とするように設定されたら、変更をサポートするために追加の構成を実行できるように、WSUS アプリケーションに通知する必要があります。

  1. WSUS サーバーで管理者コマンド プロンプトを開きます。 このコマンドを実行するユーザー アカウントは、WSUS Administrators グループまたはローカル Administrators グループのメンバーである必要があります。

  2. WSUS のツール フォルダーにディレクトリを変更します。

    cd "c:\Program Files\Update Services\Tools"

  3. 次のコマンドで SSL を使用するように WSUS を構成します。

    WsusUtil.exe configuressl server.contoso.com

    ここで、server.contoso.com は WSUS サーバーの FQDN です。

  4. WsusUtil は、最後に指定されたポート番号を持つ WSUS サーバーの URL を返します。 ポートは 8531 (既定値) または 443 のいずれかになります。 返された URL が想定どおりであることを確認します。 型が間違っていた場合は、コマンドをもう一度実行できます。

    WSUS の HTTPS URL を返す wsusutil configuressl コマンド

ヒント

WSUS サーバーがインターネットに接続している場合は、 の実行時 WsusUtil.exe configuresslに外部 FQDN を指定します。

WSUS コンソールが SSL を使用して接続できることを確認する

WSUS コンソールは、接続に ApiRemoting30 Web サービスを使用します。 Configuration Manager ソフトウェアの更新ポイント (SUP) も、この同じ Web サービスを使用して、WSUS に次のような特定のアクションを実行するよう指示します。

  • ソフトウェア更新プログラムの同期の開始
  • WSUS の適切なアップストリーム サーバーを設定します。これは、SUP のサイトがConfiguration Manager階層内のどこに存在するかによって異なります。
  • 階層の最上位 WSUS サーバーからの同期の製品と分類の追加または削除。
  • 期限切れの更新プログラムの削除

WSUS コンソールを開き、WSUS サーバーの ApiRemoting30 Web サービスへの SSL 接続を使用できることを確認します。 他の Web サービスの一部は後でテストします。

  1. WSUS コンソールを開き、[ アクション>サーバーへの接続] を選択します。

  2. [ サーバー名 ] オプションに WSUS サーバーの FQDN を入力します。

  3. URL で返される ポート番号 を WSUSutil から選択します。

  4. [ Secure Sockets Layer (SSL) を使用してこのサーバーに接続する ] オプションは、8531 (既定値) または 443 が選択されたときに自動的に有効になります。

    HTTPS ポート経由で WSUS コンソールに接続する

  5. Configuration Manager サイト サーバーがソフトウェアの更新ポイントからリモートである場合は、サイト サーバーから WSUS コンソールを起動し、WSUS コンソールが SSL 経由で接続できることを確認します。

    • リモート WSUS コンソールが接続できない場合は、証明書の信頼、名前解決、またはブロックされているポートのいずれかに問題があることを示している可能性があります。

WSUS サーバーへの SSL 通信を必要とするようにソフトウェアの更新ポイントを構成する

WSUS が TLS/SSL を使用するように設定されたら、対応するConfiguration Managerソフトウェアの更新ポイントも SSL を必要とするように更新する必要があります。 この変更を行うと、Configuration Managerは次のようになります。

  • ソフトウェアの更新ポイント用に WSUS サーバーを構成できることを確認する
  • この WSUS サーバーに対してスキャンするように指示されたときに、クライアントに SSL ポートを使用するように指示します。

WSUS サーバーへの SSL 通信を必要とするようにソフトウェア更新ポイントを構成するには、次の手順を実行します。

  1. Configuration Manager コンソールを開き、編集する必要があるソフトウェア更新ポイントの中央管理サイトまたはプライマリ サイト サーバーに接続します。

  2. [ 管理>の概要>] [サイト構成>サーバー] と [サイト システムの役割] に移動します。

  3. WSUS がインストールされているサイト システム サーバーを選択し、ソフトウェア更新ポイントのサイト システムの役割を選択します。

  4. リボンから [プロパティ] を選択 します

  5. [WSUS サーバーへの SSL 通信が必要] オプションを有効にします。

    WSUS サーバーへの SSL 通信を要求するオプションを示す SUP プロパティ

  6. サイトの WCM.log に、変更を適用すると次のエントリが表示されます。

    SCF change notification triggered.
    Populating config from SCF
    Setting new configuration state to 1 (WSUS_CONFIG_PENDING)
    ...
    Attempting connection to local WSUS server
    Successfully connected to local WSUS server
    ...
    Setting new configuration state to 2 (WSUS_CONFIG_SUCCESS)
    

ログ ファイルの例を編集して、このシナリオの不要な情報を削除しました。

Configuration Managerを使用して機能を確認する

サイト サーバーが更新プログラムを同期できることを確認する

  1. Configuration Manager コンソールをトップレベル サイトに接続します。

  2. [ソフトウェア ライブラリの>概要>] [ソフトウェア 更新すべてのソフトウェア 更新>] に移動します。

  3. リボンから、[ソフトウェア 更新の同期] を選択します。

  4. ソフトウェア更新プログラムのサイト全体の同期を開始するかどうかを確認する通知に対して [ はい ] を選択します。

    • WSUS 構成が変更されたので、差分同期ではなく完全なソフトウェア更新プログラムの同期が行われます。
  5. サイトの wsyncmgr.log を開きます。 子サイトを監視する場合は、親サイトが最初に同期を完了するまで待つ必要があります。 次のようなエントリのログを確認して、サーバーが正常に同期されることを確認します。

    Starting Sync
    ...
    Full sync required due to changes in main WSUS server location.
    ...
    Found active SUP SERVER.CONTOSO.COM from SCF File.
    ...
    https://SERVER.CONTOSO.COM:8531
    ...
    Done synchronizing WSUS Server SERVER.CONTOSO.COM
    ...
    sync: Starting SMS database synchronization
    ...
    Done synchronizing SMS with WSUS Server SERVER.CONTOSO.COM
    

クライアントが更新プログラムをスキャンできることを確認する

ソフトウェアの更新ポイントを SSL を必要とするように変更すると、クライアントConfiguration Managerソフトウェアの更新ポイントの場所要求を行ったときに更新された WSUS URL を受け取ります。 クライアントをテストすることで、次のことができます。

  • クライアントが WSUS サーバーの証明書を信頼するかどうかを判断します。
  • SimpleAuthWebService と ClientWebService for WSUS が機能している場合。
  • クライアントがスキャン中に EULA を取得した場合、WSUS コンテンツ仮想ディレクトリが機能していること
  1. TLS/SSL を使用するように最近変更されたソフトウェアの更新ポイントに対してスキャンするクライアントを特定します。 クライアント 識別に関するヘルプが必要な場合は、次の PowerShell スクリプトでスクリプトを実行します。

    $Last = (Get-CIMInstance -Namespace "root\CCM\Scanagent" -Class "CCM_SUPLocationList").LastSuccessScanPath
    $Current= Write-Output (Get-CIMInstance -Namespace "root\CCM\Scanagent" -Class "CCM_SUPLocationList").CurrentScanPath
    Write-Host "LastGoodSUP- $last"
    Write-Host "CurrentSUP- $current"
    

    ヒント

    コミュニティ ハブでこのスクリプトを開きます。 詳細については、「 コミュニティ ハブ項目への直接リンク」を参照してください。

  2. テスト クライアントでソフトウェア更新プログラムのスキャン サイクルを実行します。 次の PowerShell スクリプトを使用してスキャンを強制できます。

    Invoke-WMIMethod -Namespace root\ccm -Class SMS_CLIENT -Name TriggerSchedule "{00000000-0000-0000-0000-000000000113}"
    

    ヒント

    コミュニティ ハブでこのスクリプトを開きます。 詳細については、「 コミュニティ ハブ項目への直接リンク」を参照してください。

  3. クライアントの ScanAgent.log を 確認して、ソフトウェアの更新ポイントに対してスキャンするメッセージが受信されたことを確認します。

    Message received: '<?xml version='1.0' ?>
    <UpdateSourceMessage MessageType='ScanByUpdateSource'>
       <ForceScan>TRUE</ForceScan>
       <UpdateSourceIDs>
     		<ID>{A1B2C3D4-1234-1234-A1B2-A1B2C3D41234}</ID>
       </UpdateSourceIDs>
     </UpdateSourceMessage>'
    
  4. LocationServices.log を確認して、クライアントに正しい WSUS URL が表示されていることを確認します。 LocationServices.log

    WSUSLocationReply : <WSUSLocationReply SchemaVersion="1
    ...
    <LocationRecord WSUSURL="https://SERVER.CONTOSO.COM:8531" ServerName="SERVER.CONTOSO.COM"
    ...
    </WSUSLocationReply>
    
  5. WUAHandler.log を確認して、クライアントが正常にスキャンできることを確認します。

    Enabling WUA Managed server policy to use server: https://SERVER.CONTOSO.COM:8531
    ...
    Successfully completed scan.
    

HTTPS で構成された WSUS サーバーをスキャンするデバイスの TLS 証明書のピン留め

(2103 で導入)

Configuration Manager 2103 以降では、証明書のピン留めを適用することで、WSUS に対する HTTPS スキャンのセキュリティをさらに強化できます。 この動作を完全に有効にするには、WSUS サーバーの証明書をクライアントの新しい WindowsServerUpdateServices 証明書ストアに追加し 、[クライアント設定] を使用して証明書のピン留めが有効になっていることを確認します。 Windows Update エージェントの変更の詳細については、「変更と証明書のスキャン」を参照してください。更新プログラムに WSUS を使用して Windows デバイスのセキュリティを強化する - Microsoft Tech Community

クライアントの TLS 証明書のピン留めを適用するための前提条件Windows Update

  • Configuration Manager バージョン 2103
  • WSUS サーバーとソフトウェアの更新ポイントが TLS/SSL を使用するように構成されていることを確認する
  • WSUS サーバーの証明書をクライアントの新しい WindowsServerUpdateServices 証明書ストアに追加する
    • クラウド管理ゲートウェイ (CMG) で証明書のピン留めを使用する場合、ストアには WindowsServerUpdateServices CMG 証明書が必要です。 クライアントがインターネットから VPN に切り替える場合、ストアには CMG サーバー証明書と WSUS サーバー証明書の WindowsServerUpdateServices 両方が必要です。

注:

デバイスのソフトウェア更新プログラム スキャンは、更新プログラムクライアントを検出するためのクライアントに TLS 証明書のピン留めを適用する設定の既定値である [はい] を使用Windows Update引き続き正常に実行されます。 これには、HTTP と HTTPS の両方に対するスキャンが含まれます。 証明書のピン留めは、証明書がクライアントの WindowsServerUpdateServices ストアにあり、WSUS サーバーが TLS/SSL を使用するように構成されるまで有効になりません。

HTTPS で構成された WSUS サーバーをスキャンするデバイスの TLS 証明書のピン留めを有効または無効にする

  1. Configuration Manager コンソールから、[管理>クライアント設定] に移動します。
  2. [既定のクライアント設定] またはクライアント設定のカスタム セットを選択し、リボンから [プロパティ] を選択します。
  3. [クライアント設定] の [ソフトウェア 更新] タブを選択します
  4. [更新プログラムを検出するためにクライアントに TLS 証明書のピン留めを適用する] 設定Windows Update次のいずれかのオプションを選択します。
    • いいえ: WSUS スキャンの TLS 証明書ピン留めの適用を有効にしない
    • はい: WSUS スキャン中のデバイスに対する TLS 証明書のピン留めを有効にします (既定)
  5. クライアント が更新プログラムをスキャンできることを確認します。

次の手順

ソフトウェアの更新プログラムを展開する