Sobes.tech
Middle+

Kubernetes-те қолданбаның қауіпсіздігін арттыру үшін қандай тәжірибелерді білесіз?

sobes.tech AI

AI-дан жауап

  • Трафикті бақылау үшін желі саясаттарын пайдалану.
  • Ресурстарды пайдалану шектеулерін қою үшін ресурстар квоталары мен шектеу диапазондарын қолдану.
  • Контейнерлер үшін артықшылық режимін өшіру.
  • Қызметтік есептік жазбаларға берілетін құқықтарды азайту.
  • Құпия деректерді сақтау үшін құпиялылық кілттерін пайдалану.
  • Қауіпсіздікке арналған контейнерлердің суреттерін тұрақты сканерлеу.
  • OpenShift-те қауіпсіздік контексті шектеулері (SCC) немесе Pod қауіпсіздік саясаттары (PSP) (ескірген) / таза Kubernetes-те Pod қауіпсіздік стандарттарын қолдану.
  • Кубесек немесе OpenSCAP сияқты кластерді аудиттеу құралдарын пайдалану.
  • Кластер деңгейінде және қолданбаларда ең аз құқықтар принципін енгізу.
  • Подтар мен атау кеңістіктерін сегменттеу.
  • Жарияланымдар үшін өзгермейтіндікті пайдалану.

Желі саясатының мысалы:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-frontend-to-backend
spec:
  podSelector:
    matchLabels:
      app: backend # Бұл лейбл бар подтарға ғана қолданылады
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: frontend # Тек frontend подтарынан кіретін трафикті рұқсат етеді
    ports:
    - protocol: TCP
      port: 8080 # Бұл портқа ғана трафикті рұқсат етеді

Қауіпсіздік контекстінің мысалы:

apiVersion: v1
kind: Pod
metadata:
  name: security-context-demo
spec:
  securityContext:
    runAsUser: 1000 # Контейнерді 1000 пайдаланушы ID-мен іске қосу
    runAsGroup: 3000 # Контейнерді 3000 топ ID-мен іске қосу
    fsGroup: 2000 # Файл жүйесі 2000 тобына тиесілі болады
  containers:
  - name: sec-ctx-demo
    image: busybox
    command: [ "sh", "-c", "sleep 1h" ]
    securityContext:
      allowPrivilegeEscalation: false # Артықшылықты арттыруды тыйым салу
      readOnlyRootFilesystem: true # Негізгі файл жүйесін тек оқу режимінде жасау