Im Serverbereich ist die Verwendung von Automatisierungswerkzeugen in größeren Infrastrukturen weit verbreitet. Durch das Anwachsen der Umgebungen (vor allem durch Virtualisierung) wäre die Wartung sonst kaum mehr möglich. Die vier gebräuchlichsten Tools in diesem Bereich sind Puppet, Chef, SaltStack und Ansible. Die ersten drei Genannten verwenden Agenten und machen es damit schwierig, Systeme zu verwalten, die die Installation von Agenten nicht erlauben. Es gibt zwar Konstrukte, dies zu umgehen (Device Nodes bei Puppet, Proxy-Minions bei Salt), aber wenig Unterstützung für existierende Netzwerkausrüstung. Ansible [1] bietet eine sehr lange Liste unterstützter Geräte (aller großer Hersteller) und auch andere Komponenten, die eine API nutzen können, wie zum Beispiel VMware, lassen sich mit Ansible konfigurieren.
Die Konfiguration von Firewalls verschiedener Hersteller erfordert vom Admin die Anmeldung an den unterschiedlichen Systemen. Im Open-Source-Umfeld gibt es den Firewall Builder [2], jedoch unterstützt dieser nur Cisco und Open-Source-Systeme. Verwalten Sie kommerzielle Firewalls, gibt es momentan nur wenige Produkte, die es erlauben, eine Regel einmal zu konfigurieren, um sie dann auf die Firewalls zu verteilen.
Moderne Firewalls verfügen in der Regel über eine API zur Konfiguration. Fortinet und Palo Alto etwa bieten eine REST-API, und Juniper-Geräte haben schon seit Jahren die NETCONF-API an Bord – nicht nur für Firewalls, sondern für alle Geräte, auf denen Junos läuft.
Unter [3] stellt der Autor einen Prototyp vor, mit dem Sie mit Ansible und einem entsprechenden Playbook VPNs zwischen Linux mit Libreswan, Fortinet und Juniper Firewalls einrichten. Als Quelle dient eine YAML-Datei, in der die wesentlichen Eckpunkte der VPN-Verbindung zu finden sind und die alle beteiligten Gateways entsprechend ihrer Eigenheiten konfiguriert.
Listing 1: Inhalt
Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.