跳到正文
发现
kube-bench:K8s CIS 安全基线检查工具
命令行工具开发者工具

kube-bench:K8s CIS 安全基线检查工具

按 CIS Kubernetes Benchmark 逐项检查 Kubernetes 部署是否安全的命令行工具,适合 K8s 运维与安全人员。

admin
发布于 2026-10-28
浏览
4
访问
0
下载
0
版本
v0.16.0
平台
Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

kube-bench 是一个用 Go 编写的开源工具,用于检查 Kubernetes 是否按照 CIS Kubernetes Benchmark 中记录的安全最佳实践进行部署。它把基准中的检查项以 YAML 文件的形式定义,因此随着测试规范的演进而更新非常方便。

默认情况下,kube-bench 会根据机器上运行的 Kubernetes 版本自动决定要执行的测试集合。

主要功能

  • 依据 CIS Kubernetes Benchmark 对集群执行安全检查,并输出按节点角色(如 Master Node、API Server 等)分组的检查结果。
  • 检查项由 YAML 文件配置,便于跟随 Benchmark 版本更新。
  • 自动识别 Kubernetes 版本,选择对应的测试集。
  • 可以在 Pod 内以 Job 的形式运行,也可以按其他方式运行。

安装与使用

有多种方式运行 kube-bench。在 Pod 内运行时,需要访问宿主机的 PID namespace 以检查运行中的进程,同时需要访问宿主机上存放配置文件等文件的目录。

仓库提供的 job.yaml 文件可以直接以 Job 方式提交并运行测试,结果保存在 Pod 日志中:

$ kubectl apply -f job.yaml
job.batch/kube-bench created

$ kubectl get pods
NAME                      READY   STATUS              RESTARTS   AGE
kube-bench-j76s9   0/1     ContainerCreating   0          3s

# Wait for a few seconds for the job to complete
$ kubectl get pods
NAME                      READY   STATUS      RESTARTS   AGE
kube-bench-j76s9   0/1     Completed   0          11s

# The results are held in the pod's logs
kubectl logs kube-bench-j76s9
[INFO] 1 Master Node Security Configuration
[INFO] 1.1 API Server
...

更多运行方式与详细说明见文档。

注意事项

  • kube-bench 尽可能贴近地实现 CIS Kubernetes Benchmark。如果发现 kube-bench 未正确实现基准中描述的测试,可以在仓库提交 issue;如果认为基准本身存在问题(例如不合适的测试),则应联系 CIS 社区。
  • Kubernetes 的版本与 CIS Benchmark 的版本之间并非一一对应,可参考 CIS Kubernetes Benchmark support 了解不同版本的基准覆盖了哪些 Kubernetes 版本。
  • 本项目采用 Apache-2.0 许可证。

本作品整理自 GitHub 开源项目 aquasecurity/kube-bench,原作者 @aquasecurity,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v0.16.0当前版本

    新增 RHEL 1.9 与 RKE2 CIS 1.9 基准,修正 RKE2 CIS 1.8 检查项以对齐实际行为,修复多个 CVE,并升级 Go、Alpine 及依赖版本。

评论