21.7. Podman イベントを使用した監査
以前は、イベントを正しく解釈するには、イベントをイベントに接続する必要がありました。たとえば、どのイメージが使用されたかを知るには、container-create
イベントを image-pull
イベントにリンクする必要がありました。また、container-create
イベントには、セキュリティー設定、ボリューム、マウントなどのすべてのデータが含まれているわけではありません。
Podman v4.4 以降、コンテナーに関するすべての関連情報を 1 つのイベントと journald
エントリーから直接収集できるようになりました。データは podman container inspect
コマンドからのものと同じ JSON 形式であり、コンテナーのすべての設定とセキュリティー設定が含まれます。監査目的でコンテナー検査データを添付するように Podman を設定できます。
前提条件
-
containers-tool
メタパッケージがインストールされている。
手順
~/.config/containers/containers.conf
ファイルを変更し、events_container_create_inspect_data=true
オプションを[engine]
セクションに追加します。$ cat ~/.config/containers/containers.conf [engine] events_container_create_inspect_data=true
システム全体の設定の場合は、
/etc/containers/containers.conf
または/usr/share/container/containers.conf
ファイルを変更します。コンテナーを作成します。
$ podman create registry.access.redhat.com/ubi8/ubi:latest 19524fe3c145df32d4f0c9af83e7964e4fb79fc4c397c514192d9d7620a36cd3
Podman イベントを表示します。
podman events
コマンドを使用します。$ now=$(date --iso-8601=seconds) $ podman events --since $now --stream=false --format "{{.ContainerInspectData}}" | jq “.Config.CreateCommand" [ "/usr/bin/podman", "create", "registry.access.redhat.com/ubi8" ]
-
--format "{{.ContainerInspectData}}"
オプションは検査データを表示します。 -
jq ".Config.CreateCommand"
は、JSON データをより読みやすい形式に変換し、podman create
コマンドのパラメーターを表示します。
-
journalctl
コマンドを使用します。$ journalctl --user -r PODMAN_EVENT=create --all -o json | jq ".PODMAN_CONTAINER_INSPECT_DATA | fromjson" | jq ".Config.CreateCommand" [ "/usr/bin/podman", "create", "registry.access.redhat.com/ubi8" ]
podman events
とjournalctl
コマンドの出力データは同じです。
関連情報
-
podman-events
の man ページ -
containers.conf
の man ページ - コンテナーイベントと監査