オフライン環境でWindows Updateのパッチを適用する方法(MBSA)

2014/08/21

Windows

t f B! P L
Windowsを使うならクライアントもサーバーもできれば最新のパッチを当てておきたいもの。
特にインターネットを繋がなくてもパッチ(Windows Update)は構築時点で当てれるものはあてるべき。

だけど、パッチを適用するためにはインターネット環境が必要。
業務サーバは特にインターネットに繋がないので、オフライン環境でのパッチ適用はよく使う話。
メモとして残しておこう。


参考サイト
感謝!

必要なツール
  • インターネットにつながるPC
  • MBSA

対応バージョン
執筆時点では、以下のWindowsが対応している。
Windows XP ~ 8.1(RTは除く)
Windows Server 2003 ~ 2012R2

他にもOffice製品等も対応しているようだけど、ここでは割愛。

手順1.MBSAの導入
では早速手順を見ていこう。
PCにMBSAをインストールする。
Microsoft謹製のツールなのでご安心を。

手順2.カタログファイルのダウンロード
どのパッチが必要なのかの情報が入っているカタログファイルを以下のサイトよりダウンロードする。
http://go.microsoft.com/fwlink/?LinkId=76054
カタログファイル(wsusscn2.cab)をダウンロードしたら
どこか適当なフォルダに突っ込もう。

手順3.MBSAのモジュールとカタログをコピー
適用対象となるサーバ(PC)へ以下のファイルをコピーする。
  • C:\Program Files\Microsoft Baseline Security Analyzer 2\mbsacli.exe
  • C:\Program Files\Microsoft Baseline Security Analyzer 2\wusscan.dll
  • 手順2.でダウンロードしたwsusscn2.cab

MBSAを対象機器へインストールしてもいいんだけど、余計なツールをインストールしたくないよね。
だからこれらのモジュールをコピーする。
そのためにMBSAをインストールするわけ。

手順4.MBSAコマンド実行
対象機器のコマンドラインで以下のコマンドを実行しよう。
手順3.でコピーしたファイル類は全て同じディレクトリにあるものと仮定する。
cd <ファイルコピーしたディレクトリ>
mbsacli.exe /xmlout /unicode /catalog wsusscn2.cab > result.xml

処理が終わると、「result.xml」というXMLファイルができているはず。

手順5.必要なパッチのダウンロード
手順4.で生成したXMLファイルをExcelで開く。

「XMLテーブルとして開く」を選択。
mbsa1

そのまま「OK」。
mbsa2

なんかエラーが出た時は無視して「OK」。
mbsa3

XMLファイルが開かれる。
mbsa4

「IsInstalled」っていう列を探し、フィールド値が「FALSE」となっているものだけに絞り込む。
FALSEとなっているパッチが適用しないといけないパッチ。
この辺はExcelのフィルタが便利だね。
mbsa5

「DonwloadURL」列に適用すべきパッチのURLが書いているので、
ツールを使うなり、手動で落とすなりしてパッチをダウンロードする。
mbsa6

手順6.パッチ適用
さて、ダウンロードしたパッチを適用すればいいんだけど、
1つずつ適用するのもめんどくさい。
Windows Server 2008R2のパッチだと.cab形式なもんで、ちょっとややこしい。
コマンドラインで一括して適用すれば少しは効率化になる。

パッチの拡張子によってコマンドが違うので各々以下のように適用する。

■.msu
forfiles /p . /m *.msu /c "cmd /c wusa @path /quiet /norestart"

■.exe
forfiles /p . /m *.exe /c "cmd /c @path /quiet /norestart"

■.cab
forfiles /p . /m *.cab /c "cmd /c dism /online /add-package=@path /norestart"

適用後、再起動を行い、もう一度手順.4のmbsacliを実行。
「FALSE」が全て「TRUE」になっていればオッケー。

注意点とか
  • パッチが大量にあると、再起動時に適用失敗となる。
    その場合は小分けして順繰りに適用→再起動をすればよろし。
  • MBSAを適用して、更にWindows Updateを実行すると、
    何故か追加で適用パッチが表示される。
    そのため、確実にパッチを当てるにはWindows Update(もしくはWSUS)の方が良い。

いやー、オフライン環境でのパッチ適用は本当にめんどくさい。
台数が多くなればなるほどややこしい。
あと、Windowsをインストール直後にやるんじゃなくて、
必要なアプリやミドルウェアなどをインストールした後でやるのがオススメ。
アプリとかで勝手にSQL Server Expressとか.Net Frameworkとかがインストールされると、
それらに対してもセキュリティパッチが必要になってくるので。


検索

Blog Archive

Popular Posts

About Me

自分の写真
性別:男
年齢:ついに40over
趣味:Snowboard、パソコン、iPhone、子育て

仕事:ユー子の社内SEとしてサーバ、NW等のインフラ全般をやってます

日々生活していく中で思ったことなどをつらつらと書いていきます。

どうぞよろしく!

ブログランキング

ブログランキング・にほんブログ村へ

QooQ