Kube-bench 是一款通过运行 CIS(互联网安全中心)Kubernetes Benchmark 中定义的检查项目来检查 Kubernetes 部署是否安全的工具。
下面的示例演示了如何安装和运行 Kube-bench,以对 Kubernetes 集群执行安全检查。
【代码清单】
# Install Kube-bench
curl -L https://github.com/aquasecurity/kube-bench/releases/download/v0.6.5/kube-bench_0.6.5_linux_amd64.tar.gz | tar -xz
chmod +x kube-bench
sudo mv kube-bench /usr/local/bin/
# Run Kube-bench to check your Kubernetes cluster security
kube-bench --config-dir cfg --config cfg/config.
# View the detailed report
cat kube-bench-results.json | jq .
【执行结果】
The result of running Kube-bench will be a detailed report that lists each check, its status (pass/fail), and recommendations for remediation. The output may look something like this:[
{
"test_number": "1.1.1",
"test_desc": "Ensure that the API server pod specification file permissions are set to 644 or more restrictive",
"audit": "stat -c %a /etc/kubernetes/manifests/kube-apiserver.yaml",
"type": "file",
"result": "PASS"
},
{
"test_number": "1.1.2",
"test_desc": "Ensure that the API server pod specification file ownership is set to root:root",
"audit": "stat -c %U:%G /etc/kubernetes/manifests/kube-apiserver.yaml",
"type": "file",
"result": "FAIL",
"remediation": "chown root:root /etc/kubernetes/manifests/kube-apiserver.yaml"
}
]
Kube-bench 根据 CIS Kubernetes 基准执行预定义检查,从而实现安全评估流程自动化。Kube-bench 可检查 Kubernetes 集群的各个方面,如 API 服务器配置、etcd 安全性和工作节点安全性。Kube-bench 由容器安全专业公司 Aqua Security 维护。该工具是开源的,在 Kubernetes 社区中广泛用于加强集群安全。
【小知识】
CIS Kubernetes Benchmark 是一份全面的指南,其中包含 200 多项保护 Kubernetes 安全的建议。它涵盖了从 API 服务器配置到网络策略的方方面面。遵守这些指南对于维护安全的 Kubernetes 环境至关重要,尤其是在强制合规的监管行业。