Über RBAC hinaus: Zusätzliche Sicherheits-Maßnahmen
RBAC in Kubernetes ist rein kumulativer Natur, so etwa kann man nur white-listen. Auch sind bestimmte Befehle wie
kubectl config view
kubectl cluster-info
nicht mit RBAC nutzbar. Beiderlei Befehle liefern unerlässliche Informationen über das Cluster.
Die gefährlichsten Befehle sind:
kubectl get cm -n kube-system
Die gesamten Konfigurations-Dateien, die „kubelet“- oder „kubeadmconfig“ zum Beispiel sind demnach sichtbar.
kubectl cluster-info #Nicht ratsam!
#Enhält alle Informationen über das Cluster
kubectl config <Verb>
Diese Befehle geben Einsicht über die „clusterconfig“ und erlauben entsprechende Modifikationen an der Datei, wie das Ändern oder Erschaffen von Kontexten.
kubectl delete <Verb>
löscht Kubernetes Objekte.
Es muss klar definiert sein, wer welche Dinge steuern darf und zu welchem Ausmaß mithilfe des „kubectl“-Befehls. Geregelt wird dies regulär über RBAC, doch kann es nicht schaden bestimmte Befehle zusätzlich zu deaktivieren, so zum Beispiel „kubectl verb“, dessen entsprechenden Cluster-Rollen sowie Standard-Rollen, eingeschlossen deren Bindings, wie auch der „kubectl config“-Veranschaung, dem „kubectl config“-verb-Kontext und so weiter.