オペレーティング システムの詳細を表示する


このドキュメントでは、OS Inventory Management の設定方法と使用方法について説明します。OS Inventory Management の概要については、OS Inventory Management をご覧ください。

OS Inventory Management を使用すると、仮想マシン(VM)インスタンスのオペレーティング システムの詳細を収集して表示できます。オペレーティング システムの詳細には、ホスト名、オペレーティング システム、カーネル バージョンなどの情報が含まれます。また、インストールされている OS パッケージ、利用可能な OS パッケージ アップデート、OS の脆弱性に関する情報も取得できます。OS Inventory Management を使用する一般的なシナリオについては、OS Inventory Management を使用するタイミングをご覧ください。

始める前に

サポートされているオペレーティング システム

OS inventory Management をサポートするオペレーティング システムとバージョンの完全なリストについては、オペレーティング システムの詳細をご覧ください。

権限

Google Cloud プロジェクトのオーナーは、インベントリ データへの完全アクセス権を持っています。他のすべてのユーザーには、権限を付与する必要があります。次のいずれかの詳細なロールを付与できます。

  • roles/osconfig.inventoryViewer: インベントリ データを一覧表示し、記述するための権限が含まれます。
  • roles/osconfig.vulnerabilityReportViewer: 脆弱性レポートデータを一覧表示し、記述するための権限が含まれます。

権限を設定するコマンドの例

インベントリ データを表示する権限をユーザーに付与するには、次のコマンドを使用します。

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member user:USER_ID@gmail.com \
    --role roles/osconfig.inventoryViewer

次のように置き換えます。

  • PROJECT_ID: プロジェクト ID
  • USER_ID: ユーザーの Google Workspace のユーザー名

VM を設定する

OS Inventory Management を使用する前に、この機能を使用するように VM を構成する必要があります。OS Inventory Management を使用するように VM を構成するには、VM Manager を設定します。

VM に VM Manager を設定すると、OS インベントリ データと脆弱性レポートを表示できます。

OS インベントリ データの表示

gcloud CLI または API を使用して OS インベントリ データを表示する

gcloud

  1. 特定のゾーンにおける VM のインベントリ データのリストを表示するには、os-config inventories list コマンドを実行します。

    gcloud compute os-config inventories list \
       --location=ZONE \
       --view=VIEW
    

    次のように置き換えます。

    • ZONE: VM を配置するゾーン。
    • VIEW: 必須の出力情報の種類。使用可能なビュータイプは次のとおりです。

      • basic: OS 情報のみを表示します。
      • full: OS とパッケージの両方に関する情報を表示します。

      指定しない場合は、デフォルトの basic が使用されます。

    例(基本表示)

    gcloud compute os-config inventories list \
       --location=us-central1-c
    

    出力は次のようになります。

    INSTANCE_ID          INSTANCE_NAME  OS                                         OSCONFIG_AGENT_VERSION       UPDATE_TIME
    29255009728795105    centos7        CentOS Linux 7 (Core)                      20210217.00-g1.el7           2021-04-12T22:19:36.559Z
    5138980234596718741  rhel-8         Red Hat Enterprise Linux 8.3 (Ootpa)       20210316.00-g1.el8           2021-09-16T17:19:24Z
    7127836223366142250  windows        Microsoft Windows Server 2019 Datacenter   20210316.00.0+win@1          2021-09-16T17:13:18Z
    

    例(全体表示)

    gcloud compute os-config inventories list \
       --location=us-central1-c \
       --view=full
    

    出力は次のようになります。

    INSTANCE_ID          INSTANCE_NAME  OS                                        INSTALLED_PACKAGES   AVAILABLE_PACKAGES  OSCONFIG_AGENT_VERSION       UPDATE_TIME
    29255009728795105    centos7        CentOS Linux 7 (Core)                     265                  49                  20210217.00-g1.el7           2021-04-12T22:19:36.559Z
    5932621394110773366  rhel8          Red Hat Enterprise Linux 8.3 (Ootpa)      410                  138                 20210217.00-g1.el8           2021-09-16T17:57:16Z
    7127836223366142250  windows        Microsoft Windows Server 2019 Datacenter  36                   6                   20210316.00.0+win@1          2021-09-16T17:53:19Z
    
  2. 特定の VM についてインベントリの詳細を表示するには、前のステップで返された INSTANCE_ID または INSTANCE_NAME を指定して os-config inventories describe コマンドを実行します。

    gcloud compute os-config inventories describe INSTANCE_NAME \
       --location=ZONE \
       --view=VIEW
    

    次のように置き換えます。

    • INSTANCE_NAME: VM の名前
    • ZONE: VM インスタンスを配置するゾーン
    • VIEW: 必須の出力情報の種類。使用可能なビュータイプは次のとおりです。

      • basic: OS 情報のみを表示します。
      • full: OS とパッケージの両方に関する情報を表示します。

      指定しない場合は、デフォルトの basic が使用されます。

    例(基本表示)

    gcloud compute os-config inventories describe centos7 \
       --location=us-central1-c
    

    出力例

    architecture: x86_64
    hostname: centos-7-88tz3
    kernelRelease: 3.10.0-957.1.3.el7.x86_64
    kernelVersion: '#1 SMP Thu Nov 29 14:49:43 UTC 2018'
    longName: CentOS Linux 7 (Core)
    osconfigAgentVersion: 20210429.3-g1.el8
    shortName: centos
    updateTime: '2021-05-11T22:11:53.064Z'
    version: '7'
    

    例(全体表示)

    gcloud compute os-config inventories describe centos7 \
       --location=us-central1-c \
       --view=full
    

    Linux の出力例

    ┌─────────────────────────────────────────────────────────────────────────────────────┐
    │                               Installed Packages (Yum)                              │
    ├─────────────────────────────────────┬──────────────┬────────────────────────────────┤
    │             PACKAGE_NAME            │ ARCHITECTURE │            VERSION             │
    ├─────────────────────────────────────┼──────────────┼────────────────────────────────┤
    │ GeoIP                               │ x86_64       │ 1.5.0-13.el7                   │
    │ NetworkManager                      │ x86_64       │ 1:1.12.0-8.el7_6               │
    │ NetworkManager-libnm                │ x86_64       │ 1:1.12.0-8.el7_6               │
    │ NetworkManager-team                 │ x86_64       │ 1:1.12.0-8.el7_6               │
    │ NetworkManager-tui                  │ x86_64       │ 1:1.12.0-8.el7_6               │
    │ acl                                 │ x86_64       │ 2.2.51-14.el7                  │
    │ yum-cron                            │ all          │ 3.4.3-161.el7.centos           │
    │ yum-metadata-parser                 │ x86_64       │ 1.1.4-10.el7                   │
    │ yum-plugin-fastestmirror            │ all          │ 1.1.31-50.el7                  │
    │ zlib                                │ x86_64       │ 1.2.7-18.el7                   │
    └─────────────────────────────────────┴──────────────┴────────────────────────────────┘
    ┌───────────────────────────────────────────────────────────────────────────────┐
    │                        Package Updates Available (Yum)                        │
    ├───────────────────────────────┬──────────────┬────────────────────────────────┤
    │          PACKAGE_NAME         │ ARCHITECTURE │            VERSION             │
    ├───────────────────────────────┼──────────────┼────────────────────────────────┤
    │ GeoIP                         │ x86_64       │ 1.5.0-14.el7                   │
    │ NetworkManager                │ x86_64       │ 1:1.18.8-2.el7_9               │
    │ NetworkManager-libnm          │ x86_64       │ 1:1.18.8-2.el7_9               │
    │ NetworkManager-team           │ x86_64       │ 1:1.18.8-2.el7_9               │
    │ yum-cron                      │ all          │ 3.4.3-168.el7.centos           │
    │ yum-plugin-fastestmirror      │ all          │ 1.1.31-54.el7_8                │
    │ zlib                          │ x86_64       │ 1.2.7-19.el7_9                 │
    └───────────────────────────────┴──────────────┴────────────────────────────────┘
    architecture: x86_64
    hostname: centos-7-88tz3
    kernelRelease: 3.10.0-957.1.3.el7.x86_64
    kernelVersion: '#1 SMP Thu Nov 29 14:49:43 UTC 2018'
    longName: CentOS Linux 7 (Core)
    osconfigAgentVersion: 20210429.3-g1.el8
    shortName: centos
    updateTime: '2021-05-11T22:21:52.323Z'
    version: '7'
    

    Windows の出力例

    ┌───────────────────────────────────────────────────────────┐
    │                Installed Packages (GooGet)                │
    ├───────────────────────┬──────────────┬────────────────────┤
    │      PACKAGE_NAME     │ ARCHITECTURE │      VERSION       │
    ├───────────────────────┼──────────────┼────────────────────┤
    │ google-osconfig-agent │ x86_64       │ 20210415.4.0+win@1 │
    └───────────────────────┴──────────────┴────────────────────┘
    ┌───────────────────────────────────────────────────┐
    │     Installed Packages (Windows Update Agent)     │
    ├───────┬────────────┬────────────────┬─────────────┤
    │ TITLE │ CATEGORIES │ KB_ARTICLE_IDS │ SUPPORT_URL │
    ├───────┼────────────┼────────────────┼─────────────┤
    │ title │ C1, C2     │ 4589208        │ url.com     │
    └───────┴────────────┴────────────────┴─────────────┘
    ┌───────────────────────────────────────────────────────────────┐
    │           Installed Packages (Quick Fix Engineering)          │
    ├─────────┬─────────────────┬────────────┬──────────────────────┤
    │ CAPTION │   DESCRIPTION   │ HOT_FIX_ID │     INSTALL_TIME     │
    ├─────────┼─────────────────┼────────────┼──────────────────────┤
    │ caption │ Security Update │ KB4470788  │ 2019-03-12T00:00:00Z │
    └─────────┴─────────────────┴────────────┴──────────────────────┘
    ┌───────────────────────────────────────────────────────────────────────────┐
    │                  Installed Packages (Windows Application)                 │
    ├──────────────────┬─────────────────┬───────────────────────┬──────────────┤
    │   DISPLAY_NAME   │ DISPLAY_VERSION │       PUBLISHER       │ INSTALL_DATE │
    ├──────────────────┼─────────────────┼───────────────────────┼──────────────┤
    │ PowerShell 7-x64 │ 7.0.2.0         │ Microsoft Corporation │ 2021-06-08   │
    └──────────────────┴─────────────────┴───────────────────────┴──────────────┘
    ┌───────────────────────────────────────────────────────────┐
    │             Package Updates Available (GooGet)            │
    ├───────────────────────┬──────────────┬────────────────────┤
    │      PACKAGE_NAME     │ ARCHITECTURE │      VERSION       │
    ├───────────────────────┼──────────────┼────────────────────┤
    │ google-osconfig-agent │ x86_64       │ 20210415.4.0+win@1 │
    └───────────────────────┴──────────────┴────────────────────┘
    ┌───────────────────────────────────────────────────┐
    │  Package Updates Available (Windows Update Agent) │
    ├───────┬────────────┬────────────────┬─────────────┤
    │ TITLE │ CATEGORIES │ KB_ARTICLE_IDS │ SUPPORT_URL │
    ├───────┼────────────┼────────────────┼─────────────┤
    │ title │ C1, C2     │ 4589208        │ url.com     │
    └───────┴────────────┴────────────────┴─────────────┘
    ┌───────────────────────────────────────────────────────────────┐
    │       Package Updates Available (Quick Fix Engineering)       │
    ├─────────┬─────────────────┬────────────┬──────────────────────┤
    │ CAPTION │   DESCRIPTION   │ HOT_FIX_ID │     INSTALL_TIME     │
    ├─────────┼─────────────────┼────────────┼──────────────────────┤
    │ caption │ Security Update │ KB4470788  │ 2019-03-12T00:00:00Z │
    └─────────┴─────────────────┴────────────┴──────────────────────┘
    architecture: x86_64
    hostname: windows
    kernelRelease: 10.0.17763.1817
    kernelVersion: 10.0.17763.1817 (WinBuild.160101.0800)
    longName: Microsoft Windows Server 2019 Datacenter
    osconfigAgentVersion: 20210901.00.0+win@1
    shortName: windows
    updateTime: '2021-09-12T22:14:35Z'
    version: 10.0.17763
    

API

  1. 特定のゾーンにおける VM のインベントリ データのリストを表示するには、projects.locations.instances.inventories.list メソッドに対する GET リクエストを作成します。

    GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/–/inventories
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: OS ポリシー割り当てを配置するゾーン
  2. 特定の VM についてインベントリの詳細を表示するには、projects.locations.instances.getInventory メソッドに対する GET リクエストを作成します。

    GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/INSTANCE/inventory
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: VM インスタンスを配置するゾーン
    • INSTANCE: インスタンス ID または VM の名前

Cloud Asset Inventory の OS インベントリ データを表示する

OS Inventory Management は、インベントリ データと脆弱性レポートデータを保存し、Cloud Asset Inventory に転送します。Cloud Asset Inventory は、Google Cloud 全体のアセットを表示、モニタリング、分析できるメタデータ インベントリ サービスです。Cloud Asset Inventory で情報をポーリングし、データの変更を表示できます。

Cloud Asset Inventory の OS インベントリと脆弱性レポートデータにアクセスするには、次の手順を完了する必要があります。

詳細については、VM Manager データの表示をご覧ください。

脆弱性レポートを表示する

ソフトウェアの脆弱性は、偶発的なシステム障害や悪意のあるアクティビティを引き起こす可能性がある弱点です。詳細については、脆弱性レポートをご覧ください。

脆弱性レポートデータを表示するには、次のいずれかのオプションを使用します。

gcloud CLI または API を使用して脆弱性レポートを表示する

gcloud

  1. 特定のゾーンにおける VM の脆弱性レポートを表示するには、os-config vulnerability-reports list コマンドを使用します。

    たとえば、インベントリ データを持つすべての VM を一覧表示するには、次のコマンドを実行します。

    gcloud compute os-config vulnerability-reports list \
       --location=ZONE
    

    ZONE は、VM を配置するゾーンに置き換えます。

    gcloud compute os-config vulnerability-reports list \
       --location=us-west2-a
    

    出力は次のようになります。

    INSTANCE_ID         VULNERABILITY_COUNT  UPDATE_TIME
    29255009728795105   2                    2021-04-13T19:10:10.303046Z
    307058717116242358  1                    2021-04-13T19:10:10.303046Z
    
  2. 特定の VM について脆弱性レポートを表示するには、前のステップで返された INSTANCE_ID または INSTANCE_NAME を指定して os-config vulnerability-reports describe コマンドを実行します。

    gcloud compute os-config vulnerability-reports describe INSTANCE_NAME \
       --location=ZONE
    

    次のように置き換えます。

    • INSTANCE_NAME: VM の名前
    • ZONE: VM インスタンスを配置するゾーン

    gcloud compute os-config vulnerability-reports describe centos7 \
       --location=us-west2-a
    

    出力例

    ┌───────────────────────────────────────────────────────────────────┐
    │                          Vulnerabilities                          │
    ├──────────────────┬──────────┬───────────────┬─────────────────────┤
    │       CVE        │ SEVERITY │ CVSS_V3_SCORE │     CREATE_TIME     │
    ├──────────────────┼──────────┼───────────────┼─────────────────────┤
    │ CVE-2012-6655    │ LOW      │ 3.3           │ 2021-04-29T22:19:53 │
    │ CVE-2016-1585    │ MEDIUM   │ 9.8           │ 2021-04-29T22:19:53 │
    │ CVE-2016-2781    │ LOW      │ 6.5           │ 2021-04-29T22:19:53 │
    │ CVE-2019-7306    │ LOW      │ 7.5           │ 2021-04-29T22:19:53 │
    │ CVE-2020-13776   │ LOW      │ 6.7           │ 2021-04-29T22:19:53 │
    │ CVE-2021-31879   │ MEDIUM   │ 6.1           │ 2021-05-05T06:11:53 │
    └──────────────────┴──────────┴───────────────┴─────────────────────┘
    name: projects/384587888288/locations/us-west2-a/instances/29255009728795105/vulnerabilityReport
    updateTime: '2021-05-11T22:29:50'
    

API

  1. 特定のゾーンにおける VM の脆弱性レポートを表示するには、projects.locations.instances.vulnerabilityReports メソッドに対する GET リクエストを作成します。

    GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/–/vulnerabilityReports
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: OS ポリシー割り当てを配置するゾーン
  2. 特定の VM について脆弱性レポートを表示するには、projects.locations.instances.getVulnerabilityReport メソッドに対する GET リクエストを作成します。

    GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/INSTANCE/vulnerabilityReport
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: VM インスタンスを配置するゾーン
    • INSTANCE: インスタンス ID または VM の名前

Security Command Center のダッシュボードを使用して脆弱性レポートを表示する

Security Command Center は、脆弱性と脅威の報告を一元的に行う Google Cloud のサービスです。

Security Command Center のプレミアム ティア ユーザーは、組織内の VM で実行されているオペレーティング システムの脆弱性レポートデータにアクセスできます。

Security Command Center のダッシュボードの [検出] タブでは、オペレーティング システムに影響する脆弱性の共通脆弱性識別子(CVE ID)を確認できます。

Security Command Center ダッシュボードを使用して、オペレーティング システムの脆弱性データを確認する方法については、VM Manager をご覧ください。

Cloud Asset Inventory の脆弱性レポートデータを表示する

OS Inventory Management は、インベントリ データと脆弱性レポートデータを保存し、Cloud Asset Inventory に転送します。Cloud Asset Inventory は、Google Cloud 全体のアセットを表示、モニタリング、分析できるメタデータ インベントリ サービスです。Cloud Asset Inventory で情報をポーリングし、データの変更を表示できます。

Cloud Asset Inventory の OS インベントリと脆弱性レポートデータにアクセスするには、次の手順を完了する必要があります。

詳細については、VM Manager データの表示をご覧ください。

OS Inventory Management(以前のバージョン)

引き続き以前のバージョンの OS Inventory Management を使用している場合は、次のセクションを展開して Google Cloud CLI の手順を確認できます。

OS Inventory Management(以前のバージョン)

VM を一覧表示する

OS Inventory Management が設定されている VM の一覧を表示するには、instances os-inventory list-instances コマンドを実行します。

たとえば、インベントリ データを持つすべての VM を一覧表示するには、次のコマンドを実行します。

gcloud compute instances os-inventory list-instances

出力は次のようになります。

  NAME                 ZONE          MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP STATUS
  inventory-instance   us-east1-b    e2-standard-2               192.0.2.1    RUNNING
  instance-inventory1  us-west1-b    e2-standard-2               192.0.2.2    RUNNING
  instance-inventory2  asia-east2-b  e2-standard-2               192.0.2.3    RUNNING
  

フィルタで結果を絞り込むこともできます。たとえば、次のコマンドを実行すると、OS Inventory Management が設定されてホスト名が正規表現 instance-* と一致するすべての VM を一覧表示できます。

gcloud compute instances os-inventory list-instances
      --inventory-filter="Hostname~instance-*"

出力は次のようになります。

  NAME                 ZONE         MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP STATUS
  inventory-instance   us-east1-b   e2-standard-2               192.0.2.1    RUNNING
  instance-inventory1  us-west1-b   e2-standard-2               192.0.2.2    RUNNING
  instance-inventory2  asia-east2-b e2-standard-2               192.0.2.3    RUNNING
  
インベントリ データを表示する

VM のインベントリ データを表示するには、instances os-inventory describe コマンドを使用します。

VM について収集されたインベントリ データを表示するには、次のコマンドを実行します。

gcloud compute instances os-inventory describe VM-NAME \
      --zone=ZONE

次のように置き換えます。

  • VM-NAME: VM の名前。
  • ZONE: VM を配置するゾーン。

出力で返される情報の種類については、OS Inventory Management で提供される情報をご覧ください。

次のステップ