Middle+
Quelles pratiques connaissez-vous pour améliorer la sécurité de l'application dans Kubernetes?
sobes.tech IA
Réponse de l'IA
- Utilisation des politiques réseau pour contrôler le trafic entre les pods.
- Application de quotas de ressources et de plages de limites pour restreindre la consommation de ressources par les pods.
- Désactivation du mode privilégié pour les conteneurs.
- Minimisation des privilèges accordés aux comptes de service.
- Utilisation de secrets pour stocker des données sensibles.
- Analyse régulière des images de conteneurs à la recherche de vulnérabilités.
- Application de contraintes de contexte de sécurité (SCC) dans OpenShift ou de politiques de sécurité des pods (PSP) (obsolètes) / normes de sécurité des pods dans Kubernetes pur.
- Utilisation d'outils pour l'audit du cluster, tels que Kubesec ou OpenSCAP.
- Mise en œuvre du principe du moindre privilège au niveau du cluster et des applications.
- Segmentation des pods et des espaces de noms.
- Utilisation de l'immutabilité pour les déploiements.
Exemple d'utilisation de la politique réseau:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-frontend-to-backend
spec:
podSelector:
matchLabels:
app: backend # S'applique uniquement aux pods avec cette étiquette
ingress:
- from:
- podSelector:
matchLabels:
app: frontend # Permet le trafic entrant uniquement depuis les pods frontend
ports:
- protocol: TCP
port: 8080 # Permet le trafic uniquement sur ce port
Exemple d'utilisation du contexte de sécurité:
apiVersion: v1
kind: Pod
metadata:
name: security-context-demo
spec:
securityContext:
runAsUser: 1000 # Exécuter le conteneur en tant qu'utilisateur avec l'ID 1000
runAsGroup: 3000 # Exécuter le conteneur en tant que groupe avec l'ID 3000
fsGroup: 2000 # Le système de fichiers appartiendra au groupe 2000
containers:
- name: sec-ctx-demo
image: busybox
command: [ "sh", "-c", "sleep 1h" ]
securityContext:
allowPrivilegeEscalation: false # Interdire l'élévation des privilèges
readOnlyRootFilesystem: true # Rendre le système de fichiers racine en lecture seule