检测工具
少于1分钟
简要概述
介绍通过 kube-bench 实现定时检测[CIS 基准]中的几个项目。
下载安装
二进制方式
跳转下载地址,根据不同目标选择。
容器化方式
官方地址:https://hub.docker.com/r/aquasec/kube-bench
docker pull docker.io/aquasec/kube-bench:latest
docker pull registry.cn-hangzhou.aliyuncs.com/kube-image-repo/kube-bench:latest
docker pull docker.io/aquasec/kube-bench:v0.6.18
docker pull registry.cn-hangzhou.aliyuncs.com/kube-image-repo/kube-bench:v0.6.18
运行检测示例
运行全部检测
./kube-bench \
run \
--config ./cfg/config.yaml \
--config-dir ./cfg/
指定检测群组
./kube-bench \
run \
--config ./cfg/config.yaml \
--config-dir ./cfg/ \
--group "1.1"
指定检测步骤
./kube-bench \
run \
--config ./cfg/config.yaml \
--config-dir ./cfg/ \
--check "1.1.1,1.1.2"
跳过检测步骤
./kube-bench \
run \
--config ./cfg/config.yaml \
--config-dir ./cfg/ \
--group "1.1" --skip "1.1.19"
指定目标类型
./kube-bench \
run \
--config ./cfg/config.yaml \
--config-dir ./cfg/ \
--group "1.1" --skip "1.1.19" \
--targets "master,node"
其中 targets 可取:[master node controlplane etcd policies]
写入结果至 pgsql
create database kube;
create role kube password 'oracle';
alter role kube with login;
grant all on database kube to kube;
grant all on all tables in schema public to kube;
export KUBE_BENCH_PGSQL_HOST=10.5.17.120
export KUBE_BENCH_PGSQL_USER=kube
export KUBE_BENCH_PGSQL_DBNAME=kube
export KUBE_BENCH_PGSQL_PASSWORD=oracle
export KUBE_BENCH_PGSQL_SSLMODE=disable
./kube-bench --config ./cfg/config.yaml --config-dir ./cfg/ --pgsql
检测 K8S 集群
- 控制节点
- Worker 节点
以 daemonset 定时运行
最后修改 2023.10.19: feat: add kube-bench (e7be518)