Middle+
Milyen gyakorlatokat ismer a Kubernetes alkalmazás biztonságának növelésére?
sobes.tech MI
Válasz az MI-től
- Hálózati politikák használata a podok közötti forgalom irányítására.
- Erőforráskvóták és korlát tartományok alkalmazása az erőforrás-felhasználás korlátozására a podok által.
- A privilegizált mód kikapcsolása a konténerek számára.
- A szolgáltatási fiókoknak adott privilégiumok minimalizálása.
- Titkos adatok tárolására szolgáló secrets használata.
- Rendszeres szkennelés a konténerképek sebezhetőségeiért.
- Security Context Constraints (SCC) alkalmazása az OpenShift-ben vagy Pod Security Policies (PSP) (elavult) / Pod Security Standards a tiszta Kubernetes-ben.
- Eszközök használata a klaszter auditálására, mint például Kubesec vagy OpenSCAP.
- A legkisebb privilégiumok elvének végrehajtása a klaszter és az alkalmazások szintjén.
- Podok és névterek szegmentálása.
- Az immutabilitás használata a telepítéseknél.
Példa hálózati politika használatára:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-frontend-to-backend
spec:
podSelector:
matchLabels:
app: backend # Csak ezen címkével ellátott podokra alkalmazható
ingress:
- from:
- podSelector:
matchLabels:
app: frontend # Csak frontend podokból engedélyezi a bejövő forgalmat
ports:
- protocol: TCP
port: 8080 # Csak ezen a porton engedélyezi a forgalmat
Példa a biztonsági kontextus használatára:
apiVersion: v1
kind: Pod
metadata:
name: security-context-demo
spec:
securityContext:
runAsUser: 1000 # A konténer futtatása a felhasználó ID-jával 1000
runAsGroup: 3000 # A konténer futtatása a csoport ID-jával 3000
fsGroup: 2000 # A fájlrendszer a 2000-es csoporthoz tartozik
containers:
- name: sec-ctx-demo
image: busybox
command: [ "sh", "-c", "sleep 1h" ]
securityContext:
allowPrivilegeEscalation: false # Privilegium növelésének tiltása
readOnlyRootFilesystem: true # A gyökér fájlrendszer csak olvashatóvá tétele