2022年2月我的CKS备考记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2022年2月我的CKS备考记录相关的知识,希望对你有一定的参考价值。

参考技术A CKA 和 CKS 是 LINUX 基金会联合 CNCF社区组织的云原生技术领域权威认证,考试采用实操方式进行。CKS全称是Kubernetes安全专家认证,它在一个模拟真实的环境中测试考生对Kubernetes和云安全的知识。在参加CKS考试之前,必须已经通过CKA(Kubernetes管理员认证),在获得CKA认证之后才可以预约CKS考试。CKS 的考试难度相对于 CKA 提高了很多,2个小时的考试时间很紧张,因为考试是在外网上进行,这两个考试又是实操考试,网络条件不好,很影响效率,如果不抓紧的话,很可能做不完所有实操题。提醒备考的同学善用考试软件提供的 notepad 功能,先把 yaml 文件或命令写到notepad里,再粘贴到 terminal里。

我因为上次 CKA 考试还是比较顺利,94 高分通过,所以这次的 CKS 考试有点疏忽了,搞忘带身份证和护照,CKA/CKS 考试需要身份证+护照/信用卡,因此跟监考老师沟通了很久时间,最后修改了考试人姓名为中文,是用驾驶证完成的考试。意外之喜是 CKS 给我的证书是中文名的。

我这次考试的 kubernetes 版本是 1.22,特意记录了一下考试会考到的知识点,分享给需要的同学。

通常使用标签选择器来选择pod,控制流量。所以要对 kubectl label的使用方法熟悉起来。

网络策略的实用方法见注释

查看当前节点加载的 apparmor profile ,如果没有加载,要手工加载

cks 考试的 apparmor profile 文件内容:

注意: nginx-profile-3 这一行要确保注释掉,考试环境提供的可能没有注释,加载配置文件按时会报错

修改 pod yaml 文件,在注释里设置为 podx 加载 apparmor profile

yaml 文件内容如下:

kube-bench 是一个 CIS 评估工具,扫描 kubernetes 集群存在的安全问题,基本上按照 扫描结果的修复建议进行修复就可以了,系统会给出很具体的修复措施。

这个题要注意 serviceaccount 有个选项 automountServiceAccountToken, 这个选项决定是否自动挂载 secret 到 pod。
有这个选项,我们可以控制 pod 创建并绑定 serviceaccount 时,不自动挂载对应的 secret,这样 pod 就没有权限访问 apiserver,提高了业务 pod 的安全性。

可以在 serviceaccount 和 pod 的 spec 里设置,pod的设置优先于 serviceaccount 里的设置。

删除未使用的 serviceaccount

这道题是送分题,设置默认拒绝所有出站和入站的 pod 流量,基本上可以参考官网的案例直接改一下名字就可以了
默认网络策略

这道题也基本是送分题,参考官网文档,根据题目要求,设置 role 的 资源访问权限,绑定到 serviceaccount 就可以了。
RBAC

这道题稍复杂,需要按照要求启动日志审计,包括两个步骤:
(1) 编写日志审计策略文件
日志审计策略

(2) 修改 kube-apiserver.yaml配置文件,启用日志审计策略,日志策略配置文件位置、日志文件存储位置、循环周期。
启动日志配置

vi /etc/kubernetes/manifests/kube-apiserver.yaml

重启 kubelet

这道题考解码 secret 的 base64 编码信息,创建新的 secret 并 mount 到 pod 的特定位置。
解码 secret

创建secret

使用secret

这道题也是送分题,主要是把 dockerfile里两个 使用了 root 用户的指令删除,把添加特定能力的 securityContext 安全上下文注释掉。

给出了 支持安全沙箱容器运行时 handler runsc , 我们需要创建一个 RuntimeClass 并在 pod spec里指定是用该 RuntimeClass
参考资料

注意:运行中的 pod 只能修改有限的几个属性,不支持修改 RuntimeClass,需要将所有 pod 的 yaml 解析出来,修改 yaml 后,再重新创建 pod

还需要修改deployment

参考链接

这道题考察对于镜像扫描工具 trivy 的使用

本体考察是否掌握 sysdig 的基本用法,记住两个帮助命令:

另外 sysdig 支持指定 containerid 分析特定容器

这道题考察是否掌握 psp 的用法,包括5步骤
(1) 创建 psp
参考链接

(2) 创建 clusterrole,使用 psp

(3) 创建 serviceaccount

(4) 绑定 clusterrole 到 serviceaccount

(5) 启用 PodSecurityPolicy

这道题同前面 kube-bench 的考核内容有点重合,题目中是用 kubeamd创建的 kubernetes服务器权限设置有问题,允许未经授权的访问。
参考链接
需要进行以下修改:

这道题考察 ImagePolicyWebhook 准入控制器的使用,分4个步骤

vi /etc/kubernetes/epconfig/admission_configuration.json

以上是关于2022年2月我的CKS备考记录的主要内容,如果未能解决你的问题,请参考以下文章

2022下半年《软考-系统架构设计师》备考经验分享

2022下半年《软考-系统架构设计师》备考经验分享

软考详细备考攻略,肝了

2019年蓝桥杯Scratch备考攻略-小橙编程教育

2018.3.24-PMP 考试备考经验回顾-童童

越努力越幸运 —— 51CTO PMP百日备考记