Aller au contenu
Conteneurs & Orchestration medium

CKS, Guide de préparation complet

25 min de lecture

logo kubernetes

La CKS valide votre capacité à sécuriser un cluster Kubernetes et ses workloads dans un environnement réel. Elle prolonge naturellement la CKA et se concentre sur six domaines : sécurité du cluster, durcissement système, sécurité des workloads, supply chain, admission et sécurité runtime.

Cette page est le hub de préparation CKS. Elle vous guide vers les ressources du site et vous donne une stratégie structurée pour réussir.

  • Ce que valide la CKS et en quoi elle diffère de CKA/CKAD
  • Le format de l'examen et les conditions de passage
  • Les 6 domaines du blueprint avec leur pondération officielle
  • Ce que vous devez savoir faire sans hésiter le jour J
  • Un plan de préparation sur 8 semaines avec les ressources du site

La CKS certifie que vous êtes capable de sécuriser la plateforme Kubernetes et les workloads pendant tout leur cycle de vie : build, déploiement et runtime.

  • Durcir le cluster (API Server, RBAC, ServiceAccounts, composants)
  • Réduire la surface d'attaque (Seccomp, AppArmor, SecurityContext)
  • Sécuriser les workloads (Pod Security Standards, admission, secrets)
  • Protéger la supply chain (scan d'images, signature, admission controllers)
  • Détecter et investiguer à l'exécution (audit logs, Falco, comportements suspects)

CKS = CKA + sécurité appliquée au build, au déploiement et au runtime.

AspectValeur
Durée2 heures
TypeExamen pratique supervisé (performance-based)
Score minimum67%
Validité2 ans
Reprise1 retake inclus
Éligibilité12 mois pour passer l'examen après achat
Prix445 USD
Version Kubernetesv1.35 (actuellement)
PrérequisCKA réussie (active ou non)
Simulateur2 sessions incluses
Documentation autoriséeRessources officiellement autorisées selon le handbook

Le blueprint officiel CNCF définit les domaines et leur pondération :

DomainePoidsCe que ça couvre
Cluster Setup15%NetworkPolicies, CIS benchmarks, Ingress TLS
Cluster Hardening15%RBAC, ServiceAccounts, API Server restrictions
System Hardening10%Seccomp, AppArmor, réduction surface d'attaque
Minimize Microservice Vulnerabilities20%SecurityContext, PSA, gestion secrets
Supply Chain Security20%Scan images, signature, admission controllers
Monitoring, Logging and Runtime Security20%Audit logs, Falco, détection runtime

Ces pondérations bougent : la page officielle de la Linux Foundation fait foi et ne coïncide pas toujours avec le dépôt cncf/curriculum, dont le PDF accuse parfois une version de retard. Relisez-la avant de bâtir votre planning, et vérifiez au passage la version de Kubernetes sur laquelle l'examen est aligné : l'environnement suit la dernière version mineure sous quatre à huit semaines après sa sortie.

BlocTemps conseillé
Minimize Vulnerabilities20%
Supply Chain Security20%
Runtime Security20%
Cluster Hardening15%
System Hardening10%
Cluster Setup15%

Ce second tableau n'ajoute pas d'information nouvelle : il traduit les pondérations en répartition de votre temps de révision. L'idée est de résister à la tentation inverse, qui consiste à passer ses soirées sur les sujets qu'on aime déjà. Si vous venez de l'administration système, vous serez à l'aise sur le durcissement et perdrez vos points sur la supply chain ; si vous venez du développement, ce sera l'inverse.

Le jour de l'examen, ces actions doivent être automatiques :

C'est le bloc qui revient le plus souvent, sous des formulations variées. Le réflexe à acquérir n'est pas d'apprendre les champs par coeur mais de savoir partir d'un manifeste existant et le durcir champ par champ, parce que l'examen vous donne presque toujours un Pod déjà déployé à corriger plutôt qu'une page blanche.

  • Lire et corriger un SecurityContext (runAsNonRoot, readOnlyRootFilesystem, capabilities)
  • Appliquer Pod Security Standards sur un namespace (labels PSA)
  • Vérifier les permissions d'un ServiceAccount (kubectl auth can-i)
  • Configurer le chiffrement des Secrets dans etcd

Le piège classique du RBAC en examen est de créer un Role correct mais de le lier au mauvais sujet, ou d'utiliser un ClusterRoleBinding là où un RoleBinding était attendu. Prenez l'habitude de terminer chaque tâche RBAC par une vérification avec kubectl auth can-i, qui donne la réponse en une seconde.

  • Créer des Roles/ClusterRoles avec moindre privilège
  • Identifier les permissions excessives dans un cluster
  • Restreindre l'accès à l'API Server
  • Désactiver l'auto-montage des tokens ServiceAccount

Ces quatre points forment une chaîne : on scanne l'image, on la signe, on la référence par digest pour qu'elle ne puisse plus changer sous le même nom, et on fait refuser le reste par un contrôleur d'admission. Le point le plus souvent bâclé est le dernier : savoir scanner ne rapporte aucun point si rien n'empêche l'image vulnérable d'être déployée quand même.

  • Scanner une image avec Trivy et interpréter les résultats
  • Configurer une admission policy pour bloquer les images non conformes
  • Utiliser des digests au lieu de tags
  • Signer et vérifier une image avec Cosign

Ce bloc mesure votre capacité à investiguer après coup, pas à empêcher. La difficulté est rarement conceptuelle : elle tient au volume. Un journal d'audit brut est illisible sans filtrage, et l'exercice consiste presque toujours à réduire ce flux à la poignée d'événements qui répondent à la question posée.

  • Lire et interpréter les audit logs Kubernetes
  • Configurer une politique d'audit
  • Identifier un comportement suspect dans les logs Falco
  • Créer une NetworkPolicy deny-all puis autoriser le trafic nécessaire

Pour ne pas vous disperser, voici ce qui est hors scope :

  • Développement applicatif → CKAD
  • Installation kubeadm complète → déjà couvert en CKA
  • Provisioning d'infrastructure → hors scope
  • Hardening OS avancé (kernel tuning, SELinux policies) → limité aux bases
  • Outils de sécurité avancés non standards → focus sur les primitives K8s

La CKS valide une vision end-to-end de la sécurité Kubernetes, pas une expertise pointue sur un outil spécifique.

Avant d'attaquer la préparation CKS, assurez-vous de maîtriser :

  1. CKA réussie

    C'est le prérequis officiel. Vous devez être à l'aise avec l'administration d'un cluster Kubernetes.

  2. Bon niveau Linux

    Lecture de fichiers de configuration, navigation filesystem, commandes système de base.

  3. kubectl fluide

    Création, modification, inspection de ressources, l'autocomplétion doit être naturelle.

  4. RBAC et NetworkPolicies maîtrisés

    Ces concepts CKA sont fondamentaux pour la CKS. Révisez-les si besoin.

  5. Compréhension de l'architecture cluster

    API Server, etcd, kubelet, composants du control plane, vous devez savoir où se configure quoi.

Objectif : Consolider les bases CKA et découvrir Pod Security Standards.

Ce que vous devez faire :

  • Revoir RBAC (Roles, ClusterRoles, bindings)
  • Revoir NetworkPolicies (default deny, autorisation sélective)
  • Comprendre SecurityContext (runAsNonRoot, capabilities)
  • Lire la documentation Pod Security Standards
  • Revoir la gestion des ServiceAccounts et des Secrets
  • Installer un lab local (Kind + Falco + Trivy)

Critère de validation : Créer un RBAC complet (Role + Binding + ServiceAccount) et une NetworkPolicy deny-all en moins de 5 minutes.

Guides du site :

Dès le début de l'examen, configurez votre environnement :

Fenêtre de terminal
# Alias indispensables
alias k=kubectl
alias kn='kubectl config set-context --current --namespace'
export do="--dry-run=client -o yaml"
# Autocomplétion
source <(kubectl completion bash)
complete -F __start_kubectl k
# Vérifier le contexte actuel
kubectl config current-context
kubectl config get-contexts

Ce bloc n'est pas à apprendre par coeur : c'est une liste des gestes de vérification qui font gagner des points parce qu'ils confirment qu'une tâche est réellement terminée. Repérez surtout les commandes de contrôle (auth can-i, describe netpol, la lecture brute d'etcd) : sur un examen chronométré, la principale cause de perte de points n'est pas l'ignorance mais l'oubli de vérifier ce qu'on vient d'appliquer.

Fenêtre de terminal
# RBAC : vérifier les permissions
k auth can-i --list --as=system:serviceaccount:ns:sa
k auth can-i create pods --as=user@example.com
# Pod Security : appliquer PSA sur un namespace
k label ns production pod-security.kubernetes.io/enforce=restricted
k label ns production pod-security.kubernetes.io/warn=restricted
# SecurityContext : générer un Pod sécurisé
k run secure-pod --image=nginx $do | \
yq '.spec.containers[0].securityContext = {"runAsNonRoot": true, "readOnlyRootFilesystem": true}'
# Scan d'images
trivy image nginx:1.28
trivy k8s --report summary
# Audit : vérifier la politique d'audit
cat /etc/kubernetes/audit-policy.yaml
k -n kube-system logs -l component=kube-apiserver | grep audit
# Secrets : vérifier le chiffrement etcd
k get secret -n kube-system -o json | jq '.items[0].data'
ETCDCTL_API=3 etcdctl get /registry/secrets/default/mysecret | hexdump -C | head
# NetworkPolicies : deny-all puis autoriser
k create -f deny-all.yaml
k describe netpol -n production
# CIS Benchmark
kube-bench run --targets=master
kube-bench run --targets=node

Aucun de ces outils ne demande une expertise poussée, mais chacun doit être lancé sans consulter sa documentation. La colonne de droite indique le geste exact attendu : trivy pour repérer une vulnérabilité, kube-bench pour situer le cluster face au CIS Benchmark, cosign pour établir la provenance d'une image. jq est le seul de la liste qui n'est pas un outil de sécurité, mais c'est celui qui vous fera gagner le plus de temps sur les sorties JSON.

OutilUsage CKS
kubectlAdministration, RBAC, inspection
jqParsing des sorties JSON
trivyScan d'images et de clusters
kube-benchVérification CIS Benchmark
cosignSignature et vérification d'images
falcoDétection runtime (selon le lab)

Lisez la colonne « Solution » plutôt que la colonne « Piège » : ces six lignes décrivent des habitudes à installer pendant l'entraînement, pas des consignes à se rappeler le jour J. Sous pression, on n'applique que ce qui est devenu automatique. Les deux premières lignes coûtent le plus cher, parce qu'une contrainte de sécurité manquée invalide toute la réponse même quand le reste est juste.

PiègeConséquenceSolution
Ne pas lire l'énoncé en entierVous oubliez une contrainte de sécuritéLisez TOUT, notez les exigences
Bloquer sur une questionVous perdez du temps précieuxPassez après 10 minutes, revenez après
Appliquer une policy sans testerVous bloquez le workloadUtilisez --dry-run=server d'abord
Oublier de vérifier vos réponsesErreurs non détectéesUn kubectl get rapide pour confirmer
Ignorer les audit logsVous ne savez pas investiguerPratiquez la lecture des logs
Oublier de changer de contexteVous travaillez sur le mauvais clusterVérifiez le contexte à chaque question

Ce tableau se lit ligne par ligne, de haut en bas : les premières lignes décrivent le cadre administratif, les suivantes montrent la progression réelle du niveau attendu sur un même sujet. Les deux dernières lignes techniques sont les plus parlantes : supply chain et runtime security n'apparaissent tout simplement pas dans les deux autres certifications. C'est là que se joue l'écart de préparation, pas dans le RBAC que vous connaissez déjà.

AspectCKADCKACKS
FocusApplicationsClusterSécurité
PrérequisAucunAucunCKA réussie
Score minimum66%66%67%
RBACBasiqueCompletAvancé + audit
NetworkPoliciesBasiquesCouvertAvancées + isolation
SecretsUsageUsage+ Chiffrement etcd
Supply chainNon couvertNon couvertScan, signature, admission
Runtime securityNon couvertBasesAudit, Falco, détection
Public cibleDéveloppeursAdministrateursSecurity engineers

Le simulateur Killer.sh est fourni avec l'inscription et se joue en deux sessions. Gardez-les pour la fin de la préparation : il est calibré nettement plus difficile que l'examen réel, et l'utiliser trop tôt donne surtout une impression décourageante sans vous apprendre grand-chose. Chaque session ouvre un accès prolongé après la tentative, et c'est en relisant les corrections que vous progresserez le plus.

  • Killer.sh, 2 simulations incluses avec l'inscription (utilisez-les en semaines 7-8)
  • KodeKloud CKS, Cours structuré avec labs pratiques

Ces quatre pages font partie de la documentation consultable pendant l'examen. Il ne s'agit donc pas de les mémoriser mais de savoir y retrouver un exemple en moins d'une minute. Entraînez-vous à la navigation autant qu'au contenu : repérez à l'avance où se trouvent le manifeste de politique d'audit et les labels Pod Security Standards, ce sont les deux blocs que vous recopierez le plus souvent.

Montez ce lab avant même de commencer le programme de huit semaines. Le point important est d'avoir un cluster que vous pouvez casser puis recréer en une commande : une bonne partie des exercices CKS consiste à modifier les manifestes statiques du control plane, et un cluster jetable évite de bloquer votre progression sur une API Server qui ne redémarre plus.

  • Kind, Cluster local pour expérimenter
  • kube-bench, Scanner CIS Benchmark
  • Trivy, Scanner de vulnérabilités
  • Falco, Détection runtime
  1. CKS = CKA + sécurité : consolidez vos bases avant de passer
  2. 60% sur 3 domaines : Minimize Vulnerabilities, Supply Chain, Runtime
  3. Score minimum 67% contre 66% pour CKA/CKAD
  4. CKA réussie obligatoire (mais pas forcément active)
  5. Validité 2 ans, 1 retake inclus, vous avez le droit à l'erreur
  6. Utilisez les 2 simulations avant l'examen réel
  7. Maîtrisez SecurityContext et PSA, ils reviennent constamment
  8. Pratiquez Trivy et les audit logs, domaines à 20%

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn