测验:集群初始设置
没有 NetworkPolicy 应用于任何命名空间中的任何 Pod。该 Pod 的通信状态如何?
- 入口和出口均被封锁。
- 允许入口和出口
- 只允许在同一命名空间内
- 这是未知的,因为它遵循 CNI 制定的基本政策。
应用默认拒绝策略后,应用程序无法立即调用外部 API。日志显示名称解析失败,而不是连接拒绝。首先要检查什么?
- Ingress 控制器上的 TLS 证书
- 节点上的 /etc/resolv.conf 权限
- 允许传出 UDP/TCP 53 出口到 kube-dns 的规则
- 在 API 服务器上设置 --anonymous-auth
阻止 Pod 直接访问云节点的实例元数据 (169.254.169.254) 的最合适方法是什么?
- 在 pod 上设置 hostNetwork: true
- 从出口策略的 ipBlock 中删除除 cidr 0.0.0.0/0 之外的地址。
- 将ServiceAccount的automountServiceAccountToken设置为false。
- 应用 PodSecurity 的受限配置文件
存储 Ingress 的 TLS 证书和私钥的正确资源是什么?
- ConfigMap 中的 tls.crt / tls.key 条目
- 类型:kubernetes.io/tls Secret
- 秘密类型:kubernetes.io/dockerconfigjson
- 文件挂载到 PersistentVolume 上
当您遇到 kube-bench 标记为 [FAIL] 的项目时,首先要做的是什么?
- 重新启动集群以重置设置
- 删除etcd快照并重新创建它
- 阅读该项目的修复部分,了解更改的内容及其原因。
- 将 kube-bench 升级到最新版本并再次运行。
kube-apiserver 清单中的哪些设置不符合 CIS 建议?
- --anonymous-auth=false
- --authorization-mode=始终允许
- --authorization-mode=节点,RBAC
- 在 --enable-admission-plugins 中包含 NodeRestriction