
[CKS]启用apiserver身份验证
目前的所有题目为2024年10月后更新的最新题库,考试的k8s版本为1.31.1。
·
目前的所有题目为2024年10月后更新的最新题库,考试的k8s版本为1.31.1
专栏其他文章:
- [CKS] K8S Admission Set Up
- [CKS] CIS基准测试,修复kubelet和etcd不安全项
- [CKS] K8S NetworkPolicy Set Up
- [CKS] 利用Trivy对image进行扫描
- [CKS] 利用falco进行容器日志捕捉和安全监控
- [CKS] Audit Log Policy
- [CKS] Create/Read/Mount a Secret in K8S
- [CKS] K8S Dockerfile和yaml文件安全检测
- [CKS] K8S RuntimeClass SetUp
- [CKS] TLS Secrets创建与挂载
- [CKS] falco扫描发现访问指定文件pod
- [CKS] 使用ingress公开https服务
- [CKS] bom工具生成SPDX文档
- [CKS] 执行Pod安全标准
- [CKS] Docker守护进程
- [CKS]启用apiserver身份验证
BackGround
出于测试目的,由 kubeadm 创建的 cluster 的 Kubernetes API 服务器临时配置为,允许未经身份验证和未经授权的访问。
Task
首先,按照以下方式配置集群的API服务器,以确保其安全:
- 禁止匿名身份验证
- 使用授权模式 Node,RBAC
- 使用准入控制器 NodeRestriction
注意:所有kubectl 配置环境/文件也被配置使用未经身份验证和未经授权的访问。
你不必更改它,但请注意,一旦完成集群的安全加固, kubectl 的配置将无法工作。
您可以使用集群位于 /etc/kubernetes/admin.conf 的原始kubectl配置文件来访问受保护的集群。
然后,请删除ClusterRoleBinding system:anonymous 来进行清理。
Practice
Step 1 : 配置集群的API服务器
vi /etc/kubernetes/manifests/kube-apiserver.yaml
如图,将--authorization-mode
设置为Node,RBAC
,--enable-admission-plugins
设置为NodeRestriction
,--anonymous-auth
设置为false
然后重启kubelet
systemctl daemon-reload
systemctl restart kubelet
Step 2: 删除clusterrolebinding
kubectl --kubeconfig=/etc/kubernetes/admin.conf delete clusterrolebinding system:anonymous
更多推荐
所有评论(0)