<link href='https://www.blogger.com/dyn-css/authorization.css?targetBlogID=1894205398638095613&amp;zx=8da17a03-42dd-4222-84d5-ef3aa340502a' rel='stylesheet'/>

2018/02/16

WSUS と WUfB の関係とデュアルスキャン問題がわかった(気がする)+ KB4023057 の謎

Windows 10 を Windows Server Update Services (WSUS) でパッチ管理しようという場合、いろいろトラブルがあるようです。そんなトラブルに対する修正を含め、WSUS は後追いで Windows 10 に対応してきた感じです。

中でも、Windows 10 バージョン 1607 からは WSUS と Windows Update for Business (WUfB) の組み合わせがサポートされたんですが(WUfB の実装はバージョン 1511 から)、デュアルスキャン問題というのがあります。これが非常に分かり難い。以下のドキュメントやブログで理解しようとしてもかなり複雑。バージョン間でポリシーの名称とか変わっているのが、さらに分かり難くしている。

Windows Server Update Services (WSUS) を使った Windows 10 更新プログラムの展開
[URL] https://docs.microsoft.com/ja-jp/windows/deployment/update/waas-manage-updates-wsus
Windows Update for Business の管理ソリューションとの統合
[URL] https://docs.microsoft.com/ja-jp/windows/deployment/update/waas-integrate-wufb

WSUS での Windows 10 管理まとめ (Japan WSUS Support Team Blog)
[URL] https://blogs.technet.microsoft.com/jpwsus/2018/01/26/win10-matome/

まずは、基本から。WSUS クライアントは WSUS サーバーから、WUfB クライアントは Microsoft Update サービスから直接に更新を受け取ります。これは、WSUS と WUfB を組み合わせた場合でも変わらない。ここが重要...


WSUS クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー ←(同期)← Microsoft Update 
WUfB クライアント ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update

WSUS クライアントとは WSUS サーバーを設置し、「Windows Update\イントラネットの Microsoft 更新サービスの場所を指定する」ポリシーを構成したクライアント。WUfB クライアントとは「Windows Update\Windows Update for Business」(バージョン1703 以前は「Windows Update\Windows Update の延期」)ポリシーを構成したクライアント。トラブルを避けたい人はいずれか一方で管理するのがベスト。


WSUS クライアントには、WSUS で管理者が承認(自動承認含む)した品質更新プログラム(QU)、機能更新プログラム(FU、Windows 10 の新バージョンへのアップグレード)、その他の更新プログラム(Microsoft 製品、ドライバー、WSUS にインポートしたサードベンダーの更新やドライバー)がすべて問答無用で(ただしその更新を必要とする場合に)適用されます。

WUfB は更新チャネルの宣言とその更新チャネルでの延期日数、および一時停止を管理するポリシー設定。 WUfB ポリシーに従って WSUS サーバーから更新を受け取ることはありません。ここが重要。

デュアルスキャン問題への対策が良く理解できない人は、おそらく、WSUS からすべて更新をダウンロードさせたい、インストールする更新は WUfB ポリシーで制御したいと思っているんだと思います。つまり、WUfB クライアントの接続先を Microsoft Update サービスではなく、社内の WSUS サーバーに中継(一本化)させるという使い方。そもそもそれは不可能なこと。

想定された WUfB & WSUS クライアントのシナリオとは、次のようなもの。

クライアント ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update 
       ←(その他の更新) ← WSUSサーバー

Microsoft 製品(MSI 版 Office など)の更新や Microsoft Update 提供ドライバーがどちらのルートで配布されるは、「Windows Update\自動更新を構成する」ポリシーの「他の Microsoft 製品の更新プログラムのインストール」のオン/オフと「Windows Update\Windows Update からドライバーを除外する」ポリシーの有効/無効で決まる。

問題は、QU/FU を WSUS サーバーから配布したいけど、意図せず Microsoft Update から取得してしまうというトラブル。すべて試してみたわけではないけど、理論上の動きを 6 つのケースで考えてみました(ただし、私の理解が正しければですが)。

ケース 1:WSUS クライアント
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ×(最新の QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリック
クライアント  ←(最新の QU/FU)← Microsoft Update

※ユーザーによる操作で、意図せず WSUS で承認していない QU/FU が適用される(→解決策はケース 2)
※バージョン 1607 の場合、ユーザーが「詳細オプション」で「更新を延期する」をオンにしちゃうと、WUfB クライアントとみなされる(ケース 3 と同じ状況、→解決策はケース 5)。 バージョン 1703 からは WSUS クライアントになると、クライアント側の「詳細オプション」の更新チャネル選択オプションは非表示になるので、この問題はなし。

ケース 2:WSUS クライアント+「Windows Update\インターネット上のWindows Updateに接続しない:有効」または「インターネット通信の設定\Windows Update のすべての機能へのアクセスをオフにする:有効」
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ×(最新の QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」は非表示
クライアント ×(最新の QU/FU)← Microsoft Update

※「Windows Update\インターネット上のWindows Updateに接続しない:有効」は、ストアアプリのインストールと更新をできなくしちゃうらしいので要注意。「インターネット通信の設定」の方のポリシーなら大丈夫らしい。

ケース 3:WSUS&WUfB クライアント
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリック
クライアント ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update

※自動更新または手動更新時にデュアルスキャン問題発生(→解決策はケース 5)

ケース 4:WSUS&WUfB クライアント+「Windows Update\インターネット上のWindows Updateに接続しない:有効」または「インターネット通信の設定\Windows Update のすべての機能へのアクセスをオフにする:有効」
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」は非表示
クライアント ×(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update
※自動更新または手動更新時にデュアルスキャン問題発生。Windows Update に接続させない設定は WUfB の検索をブロックしない(→解決策はケース 5)

ケース 5:WSUS&WUfB クライアント+「Windows Update\インターネット上のWindows Updateに接続しない:有効」または「インターネット通信の設定\Windows Update のすべての機能へのアクセスをオフにする:有効」+「Windows Updateに対するスキャンを発生させる更新遅延ポリシーを許可しない:有効」
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ×(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」は非表示
クライアント ×(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update 

「Windows Updateに対するスキャンを発生させる更新遅延ポリシーを許可しない(Do not allow update deferral policies to cause scans against Windows Update)」の更新遅延ポリシーとは WUfB ポリシーのこと。WSUS クライアントの自動更新、「更新プログラムのチェック」のクリックのときにデュアルスキャンをさせないためのもの。「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリックについては(ケース 5 では非表示)、WUfB ポリシーに基づいて更新を取得。
※ ユーザー操作により意図せず WUfB クライアントになってしまうことがあるバージョン 1607 の場合、「詳細オプション」の「機能の更新を延期する」をユーザーがチェックできないように、WUfB ポリシーを適当に構成する(これで選択オプションがグレーアウト)

ケース 6:WSUS&WUfB クライアント+「Windows Updateに対するスキャンを発生させる更新遅延ポリシーを許可しない:有効」
●自動更新または「更新プログラムのチェック」のクリック
クライアント ←(WSUS で承認されたQU/FU) ← WSUSサーバー
       ×(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update
●「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリック
クライアント ←(WUfBの遅延ポリシーに基づいた QU/FU)← Microsoft Update

「Windows Updateに対するスキャンを発生させる更新遅延ポリシーを許可しない」ポリシーは、WSUS クライアントの自動更新、「更新プログラムのチェック」のクリックのときにデュアルスキャンをさせないためのもの。「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリックについては、WUfB ポリシーに基づいて更新を取得。
※ 社内は WSUS サーバーから、外出時に Microsoft Update から更新を取得できるようにするシナリオ。WUfB ポリシーで最大限延期することで、WSUS で承認していない FU でアップグレードされないようにする。QU (定義の更新は除く)は WSUS ポリシーの承認/拒否に関係なく適用されちゃうけど、WUfB ポリシーで最大 30 日延期することは可能。

書いてる途中で混乱してきた。間違っていたらごめんなさい。WUfB で WSUS から QU/FU を取得することはできない(管理者が承認した QU/FU が来る)ということが分かれば、なんとなくわかった気がすると思います。

おまけ

WSUS と WUfB の併用時の動作を確認していたら、これまでがんばって維持してきたバージョン 1607(CBB の延期設定は当の昔に過ぎ去り、Show or Hide ツールで 1703 と 1709 の FU を非表示にしてきたもの)で、2 月の Windows Update を実行したら、突然、アップグレードのダウンロードが始まっちゃいました。これって、英語が苦手な人にとっては、マルウェアにしか見えないんでは。


とりあえず、「Hide」ボタンをクリックして閉じ(それで中止になるのではないと思う、バックグラウンドで継続だと思う)、インストールされた更新をを探してみると、「プログラムと機能」のほうに怪しげな 「Update for Windows 10 ... (KB4023057)」と「Windows 10 Update Assistant」が。これらをアンインストールして再起動したら、アップグレードは収まった模様。その後、Show or Hide ツールを実行しても KB4023057 は現れず。

KB4023057 のサポート情報(https://support.microsoft.com/ja-jp/help/4023057/)には、アップグレード云々の話は出てこない。更新プログラムの信頼性のための更新プログラムで、バージョン 1507、1511 にも来るらしい。これが犯人なら、誠実さのかけらもない。

仮想マシンだったのでロールバックして、Windows Update 前に「プログラムと機能」を除いてみたら、既に 1 月下旬(前回更新時)に KB4023057 が入り込んでいて、未発動で待機していた模様。KB4023057 を削除後に、Show or Hide ツールを実行して、検出された KB4023057 を非表示にしたら... それでも次に Windows Update を実行したときに 強引?に KB4023057 がインストールされ、発動しました。また、KB4023057 と Update Assistant を削除して、もう一度、Show or Hide ツールを実行すると、今度も KB4023057 は現れず。なんだかとても怪しい。テスト環境のために残しているものなので、アップグレードは困るんですけど。永久に「機能更新しない(最後のその日まで QU だけ頂戴)」という塩漬けオプションが欲しい。

WSUS 環境では、Microsoft Update 接続時にこんなこともあるので注意しないといけませんね。「オンラインでMicrosoft Updateから更新プログラムを確認します」のクリックで取り込まれちゃいました。なお、KB4023057 は Microsoft Update Catalog では提供されず、Windows Update のみの提供のため、WSUS には同期されないと思います。

0 件のコメント: