拿到了CKA的證照後,對k8的維運有基本的瞭解,
在公司維運一段時間的k8後,開始需要注意k8的資安事項,
於是就開始準備Certified Kubernetes Security Specialist這張證照
前前後後大概準備至少3個月以上,也在12月底考取到這張證照。
有關CKA的考試分享經驗可以看我之前po的這篇連結: https://kubeguts.com/2021/11/21/cka-experience/
大概都在考什麼??
從官方網站可得知
考試內容有下面幾大項
- Custer Setup:
- Network security policies 設置, 這個在CKA也會出現過, 但會針對default deny配置以及namespace範圍要求去做設置
- CIS benchmark, 工具檢測k8 component的配置是否合規
- Ingress TLS setup, 提供https的ingress
- 驗證k8s binary來源是否ok
-
Cluster Hardening
- 在Admission Controller中使用NodeRestriction保護metadata以及endpoint
- 使用RBAC限制資源,這個在CKA也會出現過, 為基本題需注意
- serviceaccount的token管理
- 更新kubernetes cluster版本
- k8 component TLS版本的指定
-
System Hardening
- 使用 AppArmor, seccomp來限制k8s pod存取kernel mode的功能
- Minimize Microservice Vulnerabilities
- 管理k8s secrets
- 在k8s內透過securityContext去規範OS level的security (如避免存取root身份, filesystem需要readonly等)
- pod與pod之間實現mTLS
- Supply Chain Security
- 在Dockerfile內修正資安問題
- image的sign& validation, 設置image registries 的whitelist
- 透過static analysis分析k8s yaml和Dockerfile
- 透過trivy掃描image有無問題
- Monitoring, Logging and Runtime Security
- 使用Audit log模式確認k8s cluster目前發生了什麼狀況,container被存取的狀態等
- 透過Falco工具產生audit log
以上大概列出我在考試有遇到特別印象深刻要注意的關鍵字或內容,都可以在下一章節我之前上過的學習資源,了解其介紹與怎麼應用
學習資源
- KodeKloud
KodeKloud有提供CKS的學習資源,
上面可以提供像CKS那樣 有實際Lab可供操作演練
全部完成的話還會給一張像這樣的證明
由於CKS考試的項目在平常k8開發貨維運中初期會挺少碰到的,故建議先來KodeKloud上個課會對打底挺有幫助的
- Udemy: Kubernetes CKS 2022 Complete Course - Theory - Practice
蠻推薦這門課的,因為這門課也是針對CKS內的內容做很扎實的介紹,且也提供在Kodakiller上的模擬試題供練習
KodaKiller上面可以看到這門課提供的練習題: https://killercoda.com/killer-shell-cks
- Killer.sh for CKS
這是考試前一定要親自做完的模擬試題
小結
個人認為CKS內容是蠻需要針對課程題目以及模擬考不斷練習再練習的考題,假如上面學習資源都有上完,且Killer.sh也練習的得心應手,基本上考試就能穩穩pass囉
文章版權聲明:請勿抄襲,本部落格採用創用CC, 姓名標示-非商業性-相同方式分享授權
欲轉載請標註出處與作者-Kubeguts 庫柏格,thanks!