Freigeben über


Was ist Containernetzwerksicherheit?

Containernetzwerksicherheit ist ein Angebot von Erweitert, das eine verbesserte Kontrolle über den Netzwerkdatenverkehr über Container bietet. Containernetzwerksicherheit nutzt Cilium-basierte Richtlinien und bietet einen präziseren und benutzerfreundlicheren Ansatz für die Verwaltung der Netzwerksicherheit im Vergleich zu herkömmlichen IP-basierten Methoden.

Features der Containernetzwerksicherheit

Mit dem Stand von heute ist das erste Feature, das in Containernetzwerksicherheit verfügbar ist, die FQDN-Filterung. Auf diese Weise können Sie Netzwerksicherheitsrichtlinien basierend auf Domänennamen definieren und einen präziseren und benutzerfreundlicheren Ansatz für die Verwaltung des Netzwerkdatenverkehrs bereitstellen.

Übersicht über die FQDN-Filterung

Containerisierte Umgebungen bringen besondere Sicherheitsprobleme mit sich. Herkömmliche Netzwerksicherheitsmethoden, die häufig auf IP-basierte Filterung angewiesen sind, können umständlich und weniger effektiv werden, da sich die IP-Adressen häufig ändern. Darüber hinaus können das Verständnis von Netzwerkdatenverkehrsmustern und die Identifizierung potenzieller Bedrohungen komplex sein.

Die FQDN-Filterung bietet einen effizienten und benutzerfreundlichen Ansatz für die Verwaltung von Netzwerkrichtlinien. Durch Definieren dieser Richtlinien, die auf Domänennamen und nicht auf IP-Adressen basieren, können Organisationen den Prozess der Richtlinienverwaltung erheblich vereinfachen. Dieser Ansatz beseitigt die Notwendigkeit häufiger Aktualisierungen, die in der Regel erforderlich sind, wenn IP-Adressen geändert werden. Dadurch wird der Verwaltungsaufwand verringert, und das Risiko von Konfigurationsfehlern wird minimiert.

In einem Kubernetes-Cluster können sich Pod-IP-Adressen häufig ändern, was es schwierig macht, die Pods mit Sicherheitsrichtlinien mithilfe von IP-Adressen zu sichern. Über die FQDN-Filterung können Sie Richtlinien auf Podebene mithilfe von Domänennamen anstelle von IP-Adressen erstellen, sodass die Notwendigkeit beseitigt wird, Richtlinien zu aktualisieren, wenn sich eine IP-Adresse ändert.

Hinweis

Azure CNI Powered by Cilium und die Kubernetes-Version 1.29 oder höher sind erforderlich, um die Features der Containernetzwerksicherheit von Erweiterte Container-Netzwerkdienste wie FQDN-Filterung verwenden zu können.

Komponenten der FQDN-Filterung

Cilium Agent: Der Cilium-Agent ist eine wichtige Netzwerkkomponente, die als DaemonSet in Azure CNI Powered by Cilium-Clustern ausgeführt wird. Er behandelt Netzwerkverkehr, Lastenausgleich und Netzwerkrichtlinien für Pods im Cluster. Für Pods mit erzwungenen FQDN-Richtlinien leitet der Cilium-Agent Pakete an den ACNS-Sicherheitsagent für die DNS-Auflösung um und aktualisiert die Netzwerkrichtlinie mithilfe der FQDN-IP-Zuordnungen, die vom ACNS-Sicherheitsagent abgerufen wurden.

ACNS-Sicherheitsagent: Der ACNS-Sicherheitsagent wird als DaemonSet in Azure CNI Powered by Cilium-Cluster ausgeführt, wobei erweiterte Containernetzwerkdienste aktiviert sind. Er verarbeitet die DNS-Auflösung für Pods und aktualisiert bei erfolgreicher DNS-Auflösung den Cilium-Agent mit FQDN für IP-Zuordnungen.

Funktionsweise der FQDN-Filterung

Wenn die FQDN-Filterung aktiviert ist, werden DNS-Anforderungen zuerst ausgewertet, um festzustellen, ob sie zugelassen werden sollen. Anschließen können Pods nur auf angegebene Domänennamen basierend auf der Netzwerkrichtlinie zugreifen. Der Cilium-Agent kennzeichnet DNS-Anforderungspakete, die von den Pods stammen, und leitet sie an den ACNS-Sicherheitsagent um. Diese Umleitung erfolgt nur für Pods, die FQDN-Richtlinien erzwingen.

Der ACNS-Sicherheitsagent entscheidet dann, ob eine DNS-Anforderung basierend auf den Richtlinienkriterien an den DNS-Server weitergeleitet werden soll. Wenn dies zulässig ist, wird die Anforderung an den DNS-Server gesendet, und beim Empfang der Antwort aktualisiert der ACNS-Sicherheitsagent den Cilium-Agent mit FQDN-Zuordnungen. Dadurch kann der Cilium-Agent die Netzwerkrichtlinie innerhalb der Richtlinien-Engine aktualisieren. Die folgende Abbildung zeigt den allgemeinen Fluss der FQDN-Filterung.

Screenshot der Funktionsweise des ACNS-Sicherheitsagents bei der FQDN-Filterung.

Hauptvorteile

Skalierbare Sicherheitsrichtlinienverwaltung: Cluster- und Sicherheitsadministratoren müssen Sicherheitsrichtlinien nicht jedes Mal aktualisieren, wenn eine IP-Adresse geändert wird, sodass Vorgänge effizienter ablaufen.

Verbesserte Sicherheitscompliance: Die FQDN-Filterung unterstützt ein Zero Trust-Sicherheitsmodell. Der Netzwerkdatenverkehr ist nur auf vertrauenswürdige Domänen beschränkt, sodass Risiken durch nicht autorisierten Zugriff verringert werden.

Resiliente Richtlinienerzwingung: Der mit FQDN-Filterung implementierte ACNS-Sicherheitsagent stellt sicher, dass die DNS-Auflösung nahtlos fortgesetzt wird, auch wenn der Cilium-Agent ausfällt, und Richtlinien weiterhin erzwungen werden. Diese Implementierung stellt kritisch sicher, dass Sicherheit und Stabilität in dynamischen und verteilten Umgebungen beibehalten werden.

Überlegungen:

  • Features der Containernetzwerksicherheit erfordern Azure CNI unterstützt von Cilium und Kubernetes, Version 1.29 und höher.

Einschränkungen:

  • Platzhalter-FQDN-Richtlinien für werden teilweise unterstützt. Dies bedeutet, dass Sie Richtlinien erstellen können, die bestimmten Mustern mit einem führenden Platzhalter entsprechen (z. B. .example.com), aber Sie können keinen universellen Platzhalter () verwenden, um alle Domänen im Feld abzugleichenspec.egress.toPorts.rules.dns.matchPattern
  • Unterstütztes Muster:

    *.example.com - Dies ermöglicht den Datenverkehr zu allen Unterdomänen unter example.com.

  • Nicht unterstütztes Muster

    * Dieser Versuch, einem beliebigen Domänennamen zuzuordnen, der nicht unterstützt wird.

  • FQDN-Filterung wird derzeit nicht mit node-local-DNS unterstützt.
  • Dualer Stapel wird nicht unterstützt.
  • Kubernetes-Dienstnamen werden nicht unterstützt.
  • Andere L7-Richtlinien werden nicht unterstützt.
  • FQDN-Pods können Leistungsbeeinträchtigungen aufweisen, wenn mehr als 1000 Anforderungen pro Sekunde verarbeitet werden.
  • Bei Alpine-basierten Containerimages können Probleme mit der DNS-Auflösung auftreten, wenn sie mit Cilium-Netzwerkrichtlinien verwendet werden. Dies ist auf die eingeschränkte Suchdomäneniteration von musl libc zurückzuführen. Um dies zu umgehen, definieren Sie alle Suchdomänen in den DNS-Regeln der Netzwerkrichtlinie mithilfe von Wildcardmustern explizit, wie im folgenden Beispiel
rules:
  dns:
  - matchPattern: "*.example.com"
  - matchPattern: "*.example.com.*.*"
  - matchPattern: "*.example.com.*.*.*"
  - matchPattern: "*.example.com.*.*.*.*"
  - matchPattern: "*.example.com.*.*.*.*.*"
- toFQDNs:
  - matchPattern: "*.example.com"

Preise

Wichtig

Die erweiterten Container-Netzwerkdienste werden in Zukunft ein kostenpflichtiges Angebot sein. Weitere Informationen zu den Preisen finden Sie unter Erweiterte Container-Netzwerkdienste – Preise.

Nächste Schritte