Beschreiben von Azure-Netzwerksicherheitsgruppen

Abgeschlossen

Netzwerksicherheitsgruppen (NSGs) ermöglichen es Ihnen, Netzwerkdatenverkehr zu und von Azure-Ressourcen in einem virtuellen Azure-Netzwerk, z. B. einer VM, zu filtern. Eine NSG besteht aus Regeln, die definieren, wie Datenverkehr gefiltert wird. Sie können jedem Subnetz eines virtuellen Netzwerks und jeder Netzwerkschnittstelle eines virtuellen Computers nur eine Netzwerksicherheitsgruppe zuordnen. Dieselbe Netzwerksicherheitsgruppe kann jedoch gemäß Ihren Wünschen beliebig vielen verschiedenen Subnetzen und Netzwerkschnittstellen zugeordnet werden.

Im folgenden, stark vereinfachten Diagramm können Sie ein virtuelles Azure-Netzwerk mit zwei Subnetzen sehen, die über das Internet verbunden sind, und jedes Subnetz verfügt über eine VM. Subnetz 1 wurde eine NSG zugeordnet, die eingehenden und ausgehenden Zugriff auf VM1 filtert. Dafür ist eine höhere Zugriffsebene erforderlich. VM2 hingegen könnte für einen öffentlichen Computer stehen, für den keine NSG erforderlich ist.

Diagram showing a simplified virtual network with two subnets each with a dedicated virtual machine resource, the first subnet has a network security group and the second subnet doesn't.

Sicherheitsregeln für eingehenden und ausgehenden Datenverkehr

Eine NSG besteht aus Sicherheitsregeln für eingehenden und ausgehenden Datenverkehr. NSG-Sicherheitsregeln werden nach Priorität anhand von fünf Informationen (Quelle, Quellport, Ziel, Zielport und Protokoll) ausgewertet, um den Datenverkehr zuzulassen oder zu verweigern. Standardmäßig erstellt Azure mehrere Regeln, drei Eingangs- und drei Ausgangsregeln, um grundlegende Sicherheit bieten zu können. Diese Standardregeln können nicht entfernt werden. Sie können sie jedoch außer Kraft setzen, indem Sie neue Regeln mit einer höheren Priorität erstellen.

Jede Regel gibt eine oder mehrere der folgenden Eigenschaften an:

  • Name: Jede NSG-Regel benötigt einen eindeutigen Namen, der auf den Zweck der Regel hinweist. Ein Beispiel wäre AdminAccessOnlyFilter.
  • Priorität: Die Reihenfolge der Verarbeitung von Regeln richtet sich nach deren Priorität. Regeln mit niedrigeren Zahlenwerten werden vor Regeln mit höheren Zahlenwerten verarbeitet. Wenn Datenverkehr zu einer Übereinstimmung mit einer Regel führt, wird die Verarbeitung angehalten. Das bedeutet, alle anderen Regeln mit niedrigerer Priorität (höhere Zahlen) werden nicht verarbeitet.
  • Quelle oder Ziel: Geben Sie entweder eine einzelne IP-Adresse oder einen IP-Adressbereich, ein Diensttag (eine Gruppe aus IP-Adresspräfixen eines bestimmten Azure-Diensts) oder eine Anwendungssicherheitsgruppe an. Durch das Angeben eines Bereichs, eines Diensttags oder einer Anwendungssicherheitsgruppe haben Sie die Möglichkeit, weniger Sicherheitsregeln zu erstellen.
  • Protokoll: Welches Netzwerkprotokoll wird von der Regel überprüft? Als Werte für das Protokoll sind TCP, UDP, ICMP oder „Any“ zulässig.
  • Richtung: Hierbei geben Sie an, ob die Regel auf eingehenden oder ausgehenden Datenverkehr angewendet werden soll.
  • Portbereich: Sie können einen einzelnen Port oder einen Portbereich angeben. Durch das Angeben von Bereichen können Sie Sicherheitsregeln effizienter erstellen.
  • Aktion: Schließlich müssen Sie entscheiden, was geschehen soll, wenn die Regel ausgelöst wird.

Der folgende Screenshot zeigt die Standardregeln für eingehenden und ausgehenden Datenverkehr, die in allen NSGs enthalten sind.

Screenshot showing the default inbound and outbound rules for an Azure network security group.

Die Standardregeln für eingehenden Datenverkehr sind wie folgt beschrieben:

  • AllowVNetInBound: Die AllowVNetInBound-Regel wird zuerst verarbeitet, da sie den niedrigsten Prioritätswert besitzt. Denken Sie daran, dass Regeln mit dem niedrigsten Prioritätswert zuerst verarbeitet werden. Diese Regel lässt Datenverkehr von einer Quelle mit dem VirtualNetwork-Diensttag an ein Ziel mit dem VirtualNetwork-Diensttag an einem beliebigen Port zu, wobei ein beliebiges Protokoll verwendet wird. Wenn für diese Regel eine Übereinstimmung gefunden wird, werden keine anderen Regeln mehr verarbeitet. Wird keine Übereinstimmung gefunden, wird die nächste Regel verarbeitet.

  • AllowAzureLoadBalancerInBound: Die AllowAzureLoadBalancerInBound-Regel wird anschließend verarbeitet, da der Prioritätswert höher als der Prioritätswert der AllowVNetInBound-Regel ist. Diese Regel lässt Datenverkehr von einer Quelle mit dem Diensttag AzureLoadBalancer zu einem Ziel mit dem Diensttag AzureLoadBalancer an jedem Port zu, wobei ein beliebiges Protokoll verwendet wird. Wenn für diese Regel eine Übereinstimmung gefunden wird, werden keine anderen Regeln mehr verarbeitet. Wird keine Übereinstimmung gefunden, wird die nächste Regel verarbeitet.

  • DenyAllInBound: Die letzte Regel in dieser NSG ist die Regel „DenyAllInBound“. Diese Regel verweigert den gesamten Datenverkehr von jeder Quell-IP-Adresse auf jedem Port zu jeder anderen IP-Adresse auf jedem Port, wobei ein beliebiges Protokoll verwendet werden kann.

Zusammenfassend gilt: Alle VNet-Subnetze oder Netzwerkschnittstellenkarten, denen diese NSG zugewiesen ist, lassen nur eingehenden Datenverkehr von einem Azure Virtual Network oder Azure Load Balancer zu (je nachdem, was in dem jeweiligen Diensttag definiert ist). Anderer eingehender Netzwerkdatenverkehr wird vollständig unterbunden. Diese Standardregeln können nicht entfernt werden. Sie können sie jedoch außer Kraft setzen, indem Sie neue Regeln mit einer höheren Priorität (einem niedrigeren Prioritätswert) erstellen.

Was ist der Unterschied zwischen Netzwerksicherheitsgruppen (Network Security Groups, NSGs) und Azure Firewall?

Nachdem Sie nun mehr über Netzwerksicherheitsgruppen und über Azure Firewall erfahren haben, fragen Sie sich vielleicht, wie diese sich unterscheiden, da sie beide Ressourcen des virtuellen Netzwerks schützen. Der Azure Firewall-Dienst ergänzt die Funktionen der Netzwerksicherheitsgruppen. Zusammen bieten sie eine bessere „Defense-in-Depth“-Netzwerksicherheit. Netzwerksicherheitsgruppen bieten verteilte Filterung des Datenverkehrs der Netzwerkschicht, um den Datenverkehr zu Ressourcen innerhalb virtueller Netzwerke in jedem Abonnement zu beschränken. Azure Firewall ist eine vollständig zustandsbehaftete, zentralisierte Netzwerkfirewall-as-a-Service-Lösung, die gemeinsamen Schutz auf Netzwerk- und Anwendungsebene über verschiedene Abonnements und virtuelle Netzwerke hinweg bietet.