目录
免费获取并激活 CKA_v1.31_模拟系统
3)、直接按照考试题目要求修改kube-apiserver.yaml
免费获取并激活 CKA_v1.31_模拟系统
1.kube-bench 修复不安全项
题目
您必须在以下Cluster/Node上完成此考题:
Cluster Master node Worker node
CKS00101 master node01
.
设置配置环境:
[candidate@node01]$ kubectl config use-context CKS001001.
Context
.
针对 kubeadm 创建的 cluster 运行 CIS 基准测试工具时,发现了多个必须立即解决的问题。
.
Task
.
通过配置修复所有问题并重新启动受影响的组件以确保新的设置生效。
修复针对 API 服务器发现的所有以下违规行为:
1.2.7 Ensure that the --authorization-mode argument is not set to AlwaysAllow FAIL
1.2.8 Ensure that the --authorization-mode argument includes Node FAIL
1.2.9 Ensure that the --authorization-mode argument includes RBAC FAIL
1.2.18 Ensure that the --insecure-bind-address argument is not set FAIL
修复针对 kubelet 发现的所有以下违规行为:
Fix all of the following violations that were found against the kubelet:
4.2.1 Ensure that the anonymous-auth argument is set to false FAIL
4.2.2 Ensure that the --authorization-mode argument is not set to AlwaysAllow FAIL
注意:尽可能使用 Webhook 身份验证/授权。
修复针对 etcd 发现的所有以下违规行为:
Fix all of the following violations that were found against etcd:
2.2 Ensure that the --client-cert-auth argument is set to true FAI
开始操作:
1)、切换集群
kubectl config use-context CKS00101
2)、登录到Master节点并提权
ssh master
sudo -i
3)、直接按照考试题目要求修改kube-apiserver.yaml
#配置文件备份
cp /etc/kubernetes/manifests/kube-apiserver.yaml /tmp
#编辑配置文件
vim /etc/kubernetes/manifests/kube-apiserver.yaml
具体修改配置如下:
#修改、添加、删除相关内容
#修改 authorization-mode,注意 Node 和 RBAC 之间的符号是英文状态的逗号,而不是点。
- --authorization-mode=Node,RBAC
#删除 insecure-bind-address。实际考试中,有可能本来就没写这行。
- --insecure-bind-address=0.0.0.0
4)、修改 kubelet
#查看kubelet配置文件位置
systemctl status kubelet
CKS模拟系统截图
修改配置文件
vim /var/lib/kubelet/config.yaml
具体内容
apiVersion: kubelet.config.k8s.io/v1beta1
authentication:
anonymous:
enabled: false #将true改成false
webhook:
cacheTTL: 0s
enabled: true #将false改成true
x509:
clientCAFile: /etc/kubernetes/pki/ca.crt
authorization:
mode: Webhook #模式改成Webhook,注意W大写
webhook:
cacheAuthorizedTTL: 0s
cacheUnauthorizedTTL: 0s
CKS模拟系统截图
5)、修改 etcd
改之前,备份一下配置文件
cp /etc/kubernetes/manifests/etcd.yaml /tmp
vim /etc/kubernetes/manifests/etcd.yaml
修改具体配置项
- --client-cert-auth=true #将值改为true
6)、编辑完后重新加载配置文件,并重启 kubelet
systemctl daemon-reload
systemctl restart kubelet
7)、再检查一下所有 pod
kubectl get pod -A
8)、退回到node01
exit
CKA高仿真环境简短演示视频
CKA高仿真环境简短视频演示