容器内部操作审计功能可以方便您审计组织内成员或应用程序进入容器后执行的命令操作。本文介绍如何使用容器内部操作审计功能,以及如何通过日志服务收集分析审计日志,并根据需求为审计日志设置自定义的告警规则。
索引
计费说明
容器内部操作审计功能当前处于公测中,可以免费使用。开通容器内部操作审计功能后,使用日志服务的相关功能,会产生相关费用。日志服务相关计费信息,请参见计费概述。
使用限制
集群限制:目前仅支持1.18及以上版本的集群,包括ACK专有版、ACK标准版和ACK Pro版集群。如需升级集群,请参见升级ACK集群。
操作系统限制:集群内节点的操作系统需为Alibaba Cloud Linux。
启用容器内部操作审计功能
您可以通过安装logtail-ds组件和ack-advanced-audit组件启用容器内部操作审计功能。
logtail-ds组件:将审计日志收集到日志服务并创建默认的审计报表。
ack-advanced-audit组件:实现容器内操作审计。
容器内部操作审计功能启用后,默认将在logtail-ds组件使用的日志Project中创建一个名为advaudit-${cluster_id}的日志库,用于保存审计日志。该日志库数据的保存时间为180天。关于如何修改日志保存时间,请参见管理Logstore。
登录容器服务管理控制台,在左侧导航栏选择集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在组件管理页面,安装logtail-ds组件和ack-advanced-audit组件。
单击日志与监控页签,找到logtail-ds组件,单击组件右下方的安装。然后在弹出对话框中单击确定。
单击安全页签,找到ack-advanced-audit组件,单击组件右下方的安装。然后在弹出对话框中单击确定。
查看审计报表
容器内部操作审计功能启用后,默认将在日志Project下创建一个名为Kubernetes容器内部操作审计的报表。
登录日志服务控制台。
在Project列表区域,选择集群使用的日志Project,单击名称进入日志Project页面。
在页面左侧的图标栏单击仪表盘图标,然后单击Kubernetes容器内部操作审计查看审计报表内容。
查看进入Pod容器的次数以及相关Pod信息。
执行操作的Kubernetes操作账号信息、进入容器后执行的命令列表以及常见的高危列表。
查看详细日志记录
您可以通过以下两种方式查看详细的日志记录。
方式一:在审计报表页面查看:适用于查看最近的单个事件的日志记录。
方式二:在日志库页面通过查询语句查看:适用于复杂场景,查看更多的历史信息以及历史事件。
方式一:在审计报表页面查看
在Kubernetes容器内部操作审计报表页面,通过单击风险程序操作列表区域的traceId和eventId表格列的链接,查看对应审计日志的详细信息。
单击traceId表格列的链接,可以查看单次进入容器后执行的所有操作命令的审计日志。
单击eventId表格列的链接,可以查看执行的单个命令的详细信息。
方式二:在日志库页面通过查询语句查看
在日志库页面,通过查询语句查看详细的审计日志记录。
登录日志服务控制台。
在Project列表区域,选择集群使用的日志Project,单击名称进入日志Project页面。
在 页签中,单击名为advaudit-${cluster_id}的日志库(Logstore)。
advaudit-${cluster_id}中,${cluster_id}为您的集群ID。
在输入框中输入查询和分析语句。
查询进入某个Pod的容器后执行的命令操作审计日志:输入* and k8s.pod.namespace: <namespace> and k8s.pod.name: <pod_name>,将<namespace>替换为Pod所在的命名空间,<pod_name>替换为Pod的名称。
查询执行指定程序的操作审计日志:输入* and process.name: <name>,将<name>替换为待查找的程序名称。
更多查询统计方式,请参见日志服务查询分析方法。
单击15分钟(相对),设置查询分析的时间范围。
单击查询/分析,查看查询分析结果。
配置操作审计告警
通过日志服务的告警功能,您可以配置容器内部操作审计的实时告警,便于监控容器内关键的操作事件。告警方式支持钉钉机器人、自定义Webhook和通知中心。更多告警配置方式,请参见告警。
关闭容器内部操作审计功能
您可以通过卸载ack-advanced-audit组件关闭容器内部操作审计功能。
关闭容器内部操作审计功能,不会删除自动创建的advaudit-${cluster_id}日志库,您需要登录日志服务控制台手动删除该日志库。具体操作,请参见删除Logstore。
登录容器服务管理控制台,在左侧导航栏选择集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在组件管理页面,单击日志与监控页签,找到ack-advanced-audit组件,单击组件右下方的卸载。
在弹出的对话框,单击确定。