Für die Netzwerksicherheit bietet Azure zahlreiche Dienste wie virtuelle Netzwerke, Netzwerksicherheitsgruppen, VNet-Peering, Dienstendpunkte oder die Azure Firewall. Bei Letzterer handelt es sich um einen skalierbaren und hoch verfügbaren PaaS-Dienst, der keinen Vergleich mit herkömmlichen Produkten scheuen muss.
Legen Sie ein virtuelles Netzwerk in der Azure Cloud an, dann ist dieses rein privat und existiert nur in der Cloud. Benötigen Sie Layer-3-Konnektivität zwischen Ihrem lokalen Standort und einem Azure VNet, dann müssen Sie beide über ein VPN oder Express Route verbinden. Virtuelle Maschinen in einem Azure Netzwerk können das Internet über das implizite Internet-Gateway (Default Gateway) eines jeden Azure-VNets erreichen. Das ist zunächst eine Frage des Routings, Microsoft spricht hier von System-Routen. Im Unterschied zu AWS müssen Sie dazu bei Azure keine Internet-Gateways, Routing-Tabellen und Routen anlegen.
Netzwerksicherheitsgruppe als Paketfilter
Ob eine VM tatsächlich mit dem Internet kommunizieren kann, hängt aber auch noch von anderen Dingen ab. So benötigt sie eine implizite öffentliche IP-Adresse und die Netzwerkkarte der VM oder ihr Subnetz muss einer Netzwerksicherheitsgruppe (NSG) angehören, welche die betreffenden Ports bzw. Protokolle öffnet. Für rein ausgehende Internet-Konnektivität (z. B. Updates beziehen) stellt Microsoft zwar bei Azure-VMs mit einer rein privaten IP-Adresse per Default eine so genannte „IP Adresse mit ausgehender Internet-Aktivität“, die sich im Besitz vom Microsoft befindet zur Verfügung, von deren Verwendung ist aber zugunsten einer impliziten öffentlichen IP-Adresse oder BESSER eines NAT-Gateways, bzw. der Azure Firewall abzuraten.
Eine solche NSG ist faktisch ein Paketfilter, vergleichbar mit Linux IP Tables und arbeitet ausschließlich auf OSI-Layer 3 / 4. Sie wählen dort Port und Protokoll für Quelle und Ziel, wobei diese IP-Adressen, IP-Adressbereiche oder Dienst-Tags wie Internet oder Virtual Appliance sein können. Außerdem gibt es wie beim Linux-Kernel Allow- und Deny-Regeln, eine Regel-Reihenfolge, die sich durch die Priorität ergibt, und Stateful Inspection. Für den eingehenden Datenverkehr, der bereits related oder established ist, müssen Sie keine Ausgangsregeln schreiben. Im Zwiebelprinzip von Microsofts Defense-in-Deep-Strategie ist das die Ebene der Netzwerksicherheit.
Azure stellt jede neue VM des Kunden automatisch in ein neues VNet und schließt sie an eine neue erstellte NSG an, deren Standardregeln der VM ausgehende Internet-Kommunikation erlauben. Für die eingehende Internet-Kommunikation müssen Sie in der entsprechenden NSG explizite Regeln beispielsweise für RDP, SSH oder HTTP anlegen. Die Abbildung zeigt eine solche Standard-NSG mit den vorgegebenen Regeln (ab 65000) und zwei individuellen Eingangsregeln.
Firewall als Plattformdienst
Damit leisten NSGs zwar gute Arbeit, zumal man sie frei Haus bekommt, aber auch nicht mehr als ein Paketfilter in der Lage ist. Daher bezeichnet man den Linux-Paketfilter in Windows-Kreisen auch nicht als Firewall. Statt nun aber mit entsprechendem Aufwand ein Barracuda, Fortinet, Sophos, Palo Alto oder Checkpoint auf einer Azure-VM selbst zu betreiben, können Sie die Azure Firewall als Plattform-Service nutzen.
Sie bekommen damit eine vollständige Stateful-Firewall as a Service mit einer privaten und einer öffentlichen IP-Adresse. Diese können Sie sowohl in den Firewall-eigenen Regeln, als auch in ihren Routing-Tabellen anpassen.
Damit Ihre Azure-VMs und Netzwerke die Firewall auch verwenden (statt der oben skizierten System-Routen), müssen Sie eine benutzerdefinierte Routing-Tabelle schreiben und Ihren Netzwerken zuordnen.
Die wichtigsten Features von Azure Firewall
Im Gegensatz zu den oben skizzierten Netzwerksicherheitsgruppen bietet die Azure Firewall nicht nur Filterregeln für den Netzwerkdatenverkehr, sondern auch FQDN-Anwendungsfilterregeln, SNAT-Unterstützung für ausgehenden Traffic, DNAT-Unterstützung für eingehenden Datenverkehr, uneingeschränkte Cloud-Skalierbarkeit, eine eingebaute Bedrohungsanalyse und sie lässt sich zonenredundant betreiben. Außerdem protokolliert Azure alles, was in bzw. über die Firewall passiert, im Azure Monitor. Eine Übersicht über die Features findet sich in der Dokumentation.
Vorlagen für Implementierung
Damit mehrere Azure-Netzwerke (und ggf. auch On-Premises-Standorte) die Dienste der Firewall gemeinsam nutzen können, betreibt man die Azure Firewall üblicherweise in einer Hub-and-Spoke-Topologie. Das Azure-Architekturzentrum liefert passende Referenzarchitekturen.
Sie können sich für einen ersten Test aber auch mit nur einem VNet (Workload-Vnet) und einer darin enthaltenen VM begnügen. Dazu kommt noch das Firewall-VNet, welches per Peering mit dem Workload-VNet verbunden sein soll. Anschließend kann man die Azure-Firewall implementieren.
Kosten
Die Azure Firewall gibt es in den SKUs Standard und Premium. Der Preis für die Standardversion liegt zwar bei 1,25 USD pro Stunde zuzüglich 0,016 Dollar pro verarbeitetem GB, was auf etwa 1000 USD pro Monat für den reinen Betrieb hinausläuft. Aber dafür bekommen Sie hohe Skalierbarkeit und Verfügbarkeit ohne zusätzliche Kosten. Wollten Sie zum Beispiel eine Sophos-Firewall auf VMs mit vergleichbarer Verfügbarkeit betreiben, brauchen Sie mindestens zwei VMs, einen Load-Balancer, die Software-Lizenzen und müssen die Maschinen selbst warten.