题目
针对kubeadm创建的 cluster运行CIS基准测试工具时,发现了多个必须立即解决的问题。
通过配置修复所有问题并重新启动受影响的组件以确保新的设置生效
参考
Kubelet 配置 (v1beta1) | Kubernetes
解答
1 apiserver
kube-bench master
修改 /etc/kubernetes/manifests/kube-apiserver.yaml,改前最好保存一下
修改 - --authorization-mode=Node,RBAC
添加 - --insecure-port=0
删除 - --insecure-bind-address=0.0.0.0
2 kubelet
kube-bench node
apiVersion: kubelet.config.k8s.io/v1beta1
authentication:
anonymous:
enabled: false #改为false
webhook:
cacheTTL: 0s
enabled: true
x509:
clientCAFile: /etc/kubernetes/pki/ca.crt
authorization:
mode: Webhook #改为Webhook
webhook:
cacheAuthorizedTTL: 0s
cacheUnauthorizedTTL: 0s
cgroupDriver: systemd
clusterDNS:
- 10.96.0.10
修改 /var/lib/kubelet/config.yaml 这个(记得备份一下),改完后重启kubelet(这个运行完命令其实都有提示)
systemctl daemon-reload
systemctl restart kubelet.service
3 etcd
kube-bench
修改 /etc/kubernetes/manifests/etcd.yaml (运行完命令后,这个位置也会有提示的)
- --client-cert-auth=true #修改为true