キッティングを行っていると、キッティングした結果(設定値)をログとして収集したいと考えてことはありませんか?例えば、
- コンピュータ名/シリアル番号の取得
- 正しいIPアドレスに設定されているか
- OSライセンス認証はされているか
- 正しいOSライセンスキーとなっているか
- Bitlockerの回復キーの入手
これらが収集できれば、キッティングミスを格段に減らせることが可能ですよね。そこで、ログ取得用バッチファイルを作成するやり方を記載したいと思います。
はじめに
まずはじめに何を収集したいかを考えてください。また、収集したログの保存方法も併せて考えておくといいでしょう。例として、USBメモリへ保存するやり方や、ネットワーク内のファイルサーバーへの保存方法も記載したいと思います。
- コンピュータ名
- シリアル番号
- IPアドレス
- MACアドレス
- OSライセンス情報
- Bitlocker回復キー
バッチファイルの作成
それではさっそくバッチファイルを作成していきましょう。
1.「C:\test」フォルダの作成
デスクトップなどに作成用フォルダを作ってもかまいませんが、ファイルパスにスペースや日本語が入っていたりするのであまりおすすめしません。Cドライブ直下あたりに適当な名前でフォルダを作ったほうが想定外なエラーに悩まされる心配もないです。
2.「test.bat」ファイルの作成
1で作ったフォルダの中に「test.bat」を作成してください。名前は適当でかまいません。
3.「test.bat」を編集で開く
2で作ったファイルを右クリック>編集をクリックするとメモ帳で開くことが可能です。これでバッチファイルの中身を編集することが可能です。VS Codeとかのほうが、文字が色分けされていたりと編集には便利なので、おすすめです。
4.保存方法の記載
上のほうでも記載しましたが、ログファイルの保存先をどこにするかによって、コマンド内容が異なります。この手順では、以下の2種類を記載します。また、作成されるログファイルの名前はコンピュータ名.csvとしています。そのほうが複数台のログを収集するときに、どのパソコンのログか判断がつきやすいです。
【USBメモリに保存する場合】
rem USBメモリに保存
set savepath=%~dp0
rem ログファイルの作成
echo %computername% > %savepath%%computername%.csv
【ネットワークドライブに保存する場合】
ネットワークドライブに保存する場合は、各々保存先のネットワークパスを設定してください。また、ドライブレターについても各々環境にあうように変更してください。
rem ネットワークドライブに保存
net use y: \\保存先ネットワークパス
set savepath=y:\
rem ログファイルの作成
echo %computername% > %savepath%%computername%.csv
収集目的別コマンド
ここからは各収集別にコマンドを記載しますので、収集されたい項目のコマンドを追記していってください。
シリアル番号
rem シリアル番号の収集
wmic bios get serialnumber >> %savepath%%computername%.csv
IPアドレス
rem IPアドレスの収集
ipconfig /all >> %savepath%%computername%.csv
MACアドレス
rem MACアドレスの収集
getmac >> %savepath%%computername%.csv
OSライセンス情報
rem OSライセンス情報の収集
cscript "C:\Windows\System32\slmgr.vbs" /dli >> %savepath%%computername%.csv
Bitlocker回復キー
rem Bitlocker回復キーの収集
manage-bde -protectors -get c: >> %savepath%%computername%.csv
さいごに
最後に収集完了のメッセージと、ネットワークドライブに保存する場合はアンマウントすれば完了です。
ネットワークドライブに保存する場合は、ネットワークドライブのアンマウントを記載します。
rem ネットワークドライブのアンマウント
net use y: /d /y
以上で、バッチファイルが作成完了です。あとはUSBメモリなどにコピーして収集したいパソコンから実行すれば、ログデータの収集ができます。今回紹介した取集項目以外にも「インストールされているアプリの確認」だったり、「無線LAN情報」など、色々な情報を取得することが可能です。