連載
» 2014年09月01日 18時00分 UPDATE

ITプロ必携の超便利システム管理ツール集(6):新しい仲間「Sysmon」はトラブルシューティングの必携ツールになりそうな予感

本連載では「Windows Sysinternals」の便利なツールをいくつか紹介してきました。2014年8月、新しい仲間となる「Sysmon」が追加されたので紹介しましょう。なかなか使えそうなヤツですよ。

[山市良,テクニカルライター]
「ITプロ必携の超便利システム管理ツール集」のインデックス

連載目次

今回紹介するツール

[ツール名]Sysmon(System Monitor)

[対象]Windows

[提供元]マイクロソフト

[ダウンロード先][URL]http://technet.microsoft.com/ja-jp/sysinternals/dn798348


Windowsトラブルシューティングツールの老舗に新参者現る

 「Windows Sysinternals」には60を超えるさまざまな無償ツールがありますが、つい先日、2014年8月5日(米国時間)に新しいツールとなる「Sysmon(System Monitor)」が仲間入りしました。8月20日には更新版の「v1.01」が公開され、イベントログ表示の改善やUDPデータグラムのログ機能が追加されました。

 Sysinternalsツールの出入りは非常に珍しいことなので、それだけでニュースといえます。前回追加されたのは2013年3月の「Ru(Registry Usage)」、その前は2012年10月の「PsPing」です。一方、最後に引退したツールは、2011年9月の「ProcFeatures」になります(提供終了の理由は、当時リリースされた「Coreinfo v3.0」に機能が包含されているため)。

 SysmonはWindowsのシステムサービスおよびドライバーとしてインストールされ、システムのスタートアップからシャットダウンまでの間、プロセスの作成、ネットワーク接続、ファイルの作成日変更のアクティビティを監視して、イベントログに記録します。

 Windowsの起動直後からシャットダウンシーケンスの最終段階までのアクティビティが記録されるため、動作の不安定なシステムの原因調査、スタートアップやシャットダウンの問題調査、特定ユーザーのログオン/ログオフ問題の調査、マルウェアの挙動調査などに役立ちそうです。

 本連載では紹介していませんが「Procmon(Process Monitor)」も起動直後からシャットダウンまで、プロセスのアクティビティをモニタリングできますが、こちらはいわば“プロ仕様のツール”。Procmonの場合、膨大な記録の中から問題となる情報を見つけ出すには、高度なワザや知識が要求されます(画面1)。

画面1 画面1 同じような使い方ができる「Procmon」は、プロ向けのツール。収集された膨大な情報からトラブルの原因を見つけ出すのは至難の技(【注】このツールは今回のSysmonとは関係ありません)

 Sysmonは“万人向けのツール”になります。Sysmonの記録するイベントログはシンプルであり、調査も容易です。もちろん、ProcmonやSysmonによる調査で、原因の特定や問題解決ができるかどうかは、また別の話となりますが……。

Sysmonはコマンドライン一つでインストール/削除可能

 Sysmonは、Windowsの「システムサービス」(%SystemRoot%\Sysmon.exe)と「BOOT_START」ドライバー(%SystemRoot%\Sysmondrv.sys)からなるツールです。Sysinternalsのサイトからダウンロードした「Sysmon.zip」を解凍して、「Sysmon.exe」を次のコマンドラインで実行すると、これらのファイルがインストールおよびシステムに登録され、ドライバーが読み込まれ、サービスが開始します(画面2)。

画面2 画面2 「Sysmon -i -n」を実行すると、Sysmonサービスと監視用ドライバーがインストールされる。Sysmonを削除して監視を終了するには、「Sysmon -u」を実行する

Sysmon -i -n


 「-i」オプションはインストールのため、「-n」オプションはネットワークアクティビティ(IPv6、IPv4、TCP、UDP)を記録するためのオプションになります。

 インストールされたSysmonは、削除されるまでシステムで動作し続けます。Sysmonのサービスやドライバーをシステムから削除するには、次のコマンドラインを実行します。

Sysmon -u


 Sysmonの「BOOT_START」ドライバーは、次回のWindows起動時にスタートアッププロセスのかなり早い段階で他のドライバーよりも先に読み込まれ、アクティビティの監視を開始します。そして、Sysmonサービスが開始した段階で、すでに収集したスタートアップ中のログを含めて、イベントログへの書き込みを開始します。

 そのため、トラブルの原因がスタートアップ中にある場合は、その痕跡が記録される可能性があります(画面3画面4)。また、このドライバーはシャットダウンシーケンスの最終段階まで残るため、シャットダウンに時間がかかる、またはシャットダウンが完了しないなどの問題の調査にも使えるでしょう。

画面3 画面3 Sysmonが記録したプロセス作成イベント。このログの例の「Autochk.exe」は、Windowsが起動する前に実行されるディスクチェックのプロセス。Sysmonがかなり早い段階からアクティビティを監視していることを示す分かりやすい例だ
画面4 画面4 Sysmonが記録したネットワーク接続の検出イベント。接続を開始したプロセス、TCP接続やUDPデータグラムのIPアドレスやFQDN(Fully Qualified Domain Name:完全修飾ドメイン名)、ポート番号などの情報が記録されている

 Sysmonは、イベントログの「Microsoft-Windows-Sysmon/Operational」に、システムのアクティビティに関する次の3種類のイベントを記録します。各イベントの詳細は、イベントプロパティの詳細から参照することが可能です。

  • イベントID 1 Process Create(プロセスの作成)
  • イベントID 2 File creation time changed(ファイル作成日時の変更)
  • イベントID 3 Network connection detected(ネットワーク接続の検出)

Sysmonで保存されたイベントログを参照するには?

 Sysmonをシステムから削除すると「Microsoft-Windows-Sysmon/Operational」はアクティブなログではなくなり、イベントログの「アプリケーションとサービス」には表示されなくなります。しかし、ログファイルは「%SystemRoot%\System32\Winevt\Logs\Microsoft-Windows-Sysmon%4Operational.evtx」として残るため、同じPCまたは別のPCで保存されたログとして開いて参照することが可能です。

 Sysmonをシステムから削除すると、このイベントログを表示させるための「イベントマニフェスト」もまた削除されるため、「イベントビューアー」はログを正しく表示することができません。ログを正しく表示するには、次のコマンドラインを実行してください。これにより、Sysmonのサービスやドライバーをインストールせずに、イベントマニフェストのみをインストールすることができます(画面5)。

Sysmon -m


画面5 画面5 Sysmonのイベントマニフェストのみをインストールして、Sysmonのログファイルを参照する
「ITプロ必携の超便利システム管理ツール集」バックナンバー

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP:Hyper-V(Oct 2008 - Sep 2014)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。マイクロソフト製品、テクノロジを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手がける。個人ブログは『山市良のえぬなんとかわーるど』。


Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。