ガイド

どのサービスが動いているべきか

正直な答えは、誰にもわかりません。そして、わかると主張する一覧は、あなたのものではないマシンについて書いています。答えられるのは、もっと狭く、はるかに役立つ質問です。このマシンで辻褄が合わないものは何か、動いていたときと何が違うか。

一般的な質問に答えがない理由

  • セットは、Windows のエディション、バージョン、役割によって異なります。ドメイン コントローラー、ノート PC、コンテナー ホストは、ほとんどすべてについて意見が合わず、1 つ向けに書かれた一覧はほかには間違っています。
  • インストールされているものの半分は Windows 由来ではありません。ドライバー、エージェント、更新サービス、ライセンス デーモン。どれも何かが入れたもので、一般的な一覧はそれが何かを知りません。
  • ほとんどのサービスは、停止していることを前提に作られています。最近の Windows は、登録されているもののごく一部しか起動しません。残りはトリガー(デバイスの接続、ポートのオープン、ドメインへの参加)を待っていて、停止しているのが正しい状態です。
  • 「パフォーマンスのためにこれを無効にする」という一覧が、マシンを壊す原因です。アイドルに見えるサービスは、ほかの何かがオンデマンドで開始するものであり、障害は 1 週間後に、全く無関係な場所で現れます。

答えのある質問

起動しているはずなのに起動していないもの

start:auto !status:running

Windows はこれらを開始するように言われていますが、実行されていません。健全なマシンでは短い一覧で、遅れて起動してまた停止する数個のエントリです。それ以外は確認する価値があります。

無効なのに実行されているもの

mismatch:running

構成と状態が食い違っています。たいていは誰かが停止せずに無効にしたもので、次の再起動で驚くことになります。

なくなったファイルを指しているもの

file:missing

登録が残ったままアンインストールされたものです。何かが開始しようとするまでは無害で、このマシンに何があったかを示す手がかりでもあります。

誰も署名していないもの

signed:no peruser:no

それだけで何かの証明にはならず、読み始める場所としてはふさわしいものです。2 番目の用語は、ユーザーごとのファミリーを除外します。そうしないと、似たエントリで一覧が埋まります。

最も強い特権を要求するもの

privilege:SeDebugPrivilege

プロセスがほかのあらゆるプロセスを開けるようになる特権です。正当なサービスの少数がこれを要求しており、ご自身のマシンでどれがそうかを知っておく価値があります。

トリガーを待っているもの

trigger:any status:stopped

何かがおかしいからではなく、まだ誰も要求していないために停止しています。これらがどれかを知っておくと、最初の一覧に不安を覚えなくなります。

すべてに勝つ方法

マシン自身に、動いていたときのことを尋ねます。

マシンが稼働を開始する日にスナップショットを取ります。そうすれば、これは動いているべきかはすべてが動いていたとき、これは動いていたかになります。記事の中のマシンではなく、あなたのマシンについての質問です。

bws snapshot create C:\baselines\web01.json --note "after the build"
# ... 1 週間、パッチ、またはインシデントのあと
bws snapshot diff C:\baselines\web01.json --live

構成は実行状態とは分けて報告されるので、答えはたまたま動いている 40 個のサービスではなく、誰かが変更したスタートアップの種類になります。

ドリフトのためのマシン監査

何かを停止する前に

このツールのすべての停止は、まずプランを表示します。ステップ、一緒に停止するもの、そしてその 1 つがマシンの動作に不可欠なものである場合の警告です。そのようなものの一覧は 7 つの初期リストです。RPC の 2 つの半分と DCOM ランチャー、アカウント マネージャー、キー分離、セッション マネージャー、プラグ アンド プレイで、リモート デスクトップは含まれていません。そのため、リモートセッションではプランを読んでください。