第 5 章 检查审计日志
您可以使用审计日志来识别 pod 安全违反情况。
5.1. 通过审计日志识别 pod 安全违反情况 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
您可以通过查看服务器审计日志来识别工作负载中的 pod 安全准入违反情况。以下流程演示了如何访问审计日志,并解析它们以在工作负载中查找 pod 安全准入违反情况。
先决条件
-
您已安装了
jq
。 -
您可以使用具有
cluster-admin
角色的用户访问集群。
流程
要检索节点名称,请运行以下命令:
<node_name>=$(oc get node -ojsonpath='{.items[0].metadata.name}')
$ <node_name>=$(oc get node -ojsonpath='{.items[0].metadata.name}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要查看审计日志,请运行以下命令:
oc adm node-logs <node_name> --path=kube-apiserver/
$ oc adm node-logs <node_name> --path=kube-apiserver/
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <node_name > 替换为从上一步中检索的节点的名称。
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要解析受影响的审计日志,请输入以下命令:
oc adm node-logs <node_name> --path=kube-apiserver/audit.log \ | jq -r 'select((.annotations["pod-security.kubernetes.io/audit-violations"] != null) and (.objectRef.resource=="pods")) | .objectRef.namespace + " " + .objectRef.name + " " + .objectRef.resource' \ | sort | uniq -c
$ oc adm node-logs <node_name> --path=kube-apiserver/audit.log \ | jq -r 'select((.annotations["pod-security.kubernetes.io/audit-violations"] != null) and (.objectRef.resource=="pods")) | .objectRef.namespace + " " + .objectRef.name + " " + .objectRef.resource' \ | sort | uniq -c
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 将 <node_name > 替换为从上一步中检索的节点的名称。