Sobes.tech
Middle

Kaip apriboti sąveiką tarp skirtingų namespace'ų veikiančių programų?

sobes.tech AI

Atsakymas iš AI

  • Tinklo politikos: Nustato, kurie podų rinkiniai leidžiami sąveikauti tarpusavyje ir su išorinėmis galinėmis taškais. Taikoma Namespace, Pod arba Egress lygiuose.

    apiVersion: networking.k8s.io/v1
    kind: NetworkPolicy
    metadata:
      name: deny-cross-namespace
      namespace: default # Politikos taikymo Namespace
    spec:
      podSelector: {} # Taikoma visiems podams 'default' Namespace
      policyTypes:
        - Ingress
        - Egress
      ingress:
        - from:
            - podSelector: {} # Leidžia įeinantį srautą iš tų pačių Namespace podų
      // Egress skiltis nėra, kas automatiškai uždraudžia visą išeinantį srautą
      // Išskyrus aiškiai leidžiamus atvejus.
    
  • Service Meshes (pvz., Istio, Linkerd): įveda šalutinius konteinerius į podus ir valdo tinklo srautą programų lygyje. Leidžia įgyvendinti saugumo politiką, įskaitant Namespace tarpusavio sąveikos apribojimus.

    • МTLS (Mutual TLS): Šifruoja ir autentifikuoja visą srautą tarp paslaugų.
    • Authorization Policies: Nustato, kurios paslaugos gali sąveikauti tarpusavyje pagal tapatybę.
  • Namespace-Specific SecurityContextConstraints (SCC) OpenShift: Ribojama galimybė podams konkrečiuose Namespace, įtakoja tinklo galimybes.

  • Atskiras klasteris skirtingoms saugumo zonoms: Labiausiai griežtas metodas, bet ir brangiausias. Visai izoliuoja programas, veikiančias skirtinguose klasteriuose.

  • Ugnies sienos taisyklės: Tinklo infrastruktūros lygio konfigūracija (pvz., AWS Security Groups, GCP Firewall Rules), leidžianti arba draudžianti srautą tarp subnetworkų, kuriuose yra įrengti skirtingi Namespace darbo mazgai.

  • Tinklo segmentacija hipervisor lygmenyje: Naudojama dirbant su virtualiomis mašinomis, kur kiekvienas Namespace arba Namespace grupė yra atskirame subnetworke su atitinkamais maršrutizavimo ir ugniasienės taisyklėmis.