In diesem Artikel geht es darum, wie man auf einer WatchGuard Firewall einen Branch Office VPN Tunnel mit Virtuellen Interfaces einrichten kann.
Man bezeichnet BOVPN-Vif auch als Route based VPN und (normales) BOVPN als Policy based VPN. Bei Normalem BOVPN werden die Pakete vom Kernel generiert und es gibt somit kein eingehendes Interface. Ein Paket, das von einer Zweigstelle zur Zentrale geschickt wird, würde sich dann so bewegen:
Bei BOVPN-Vif hingehen wird der Traffic nochmal verkapselt und es sieht dann folgendermaßen aus:
Das ermöglich z.b. einen TCPDUMP an dem Virtual Interface zu machen. Das erleichtert das Troubleshooting ungemein.
Grundsätzlich kann man sagen, dass Virtuelle Interfaces die neuere Technologie sind.
Bei BOVPN gilt:
Bei BOVPN-Vif gilt:
Interfacekonfiguration:
Ich zeige in diesem Beispiel, wie eine BOVPN-Vif Konfiguration mit zwei Watchguards in einem Testsetup gebaut werden kann.
Als erstes solltet ihr die Geräte Factory resetten und euch mit beiden Firewalls verbinden. Anschließend vergebt Ihr den Geräten die 10.0.1.1, die 10.0.1.2 und hängt sie an einen Switch.
So ist es möglich, dass ihr euch mit dem WSM zu beiden Firewalls gleichzeitig verbinden könnt. Das macht das Konfigurieren und abgleichen von Parametern wesentlich einfacher.
Als nächstes richten wir auf beiden Firewalls jeweils auf ETH3 ein internes Netz mit aktivem DHCP ein. Dieses Netz wird wird später über dynamisches Routing und einem BOVPN-Vif miteinander verbunden.
Die Interface Konfiguration auf den Firewalls sollte etwa so aussehen:
Anschließend wollen wir ETH 2 auf beiden Firewalls als externes Interface definieren und eine IP Adresse geben. Ich habe in diesem Beispiel die Adressen 213.73.97.113 und 213.73.97.114 gewählt.
Ihr könntet natürlich auch private Adressen aus dem Klasse C Netz nutzen.
Da das Setup aber eh nicht ans Internet gelassen wird, macht es für uns keinen Unterschied. Beachtet auch, dass als Default Gateway die andere Firewall eingetragen wird, in einer Produktivumgebung würde hier der Next-Hop eingetragen werden.
BOVPN vorbereiten
Jetzt wo die Interfaces konfiguriert sind, geht es daran das BOVPN aufzusetzen. Generell gilt, ihr solltet euch über folgende Parameter vorab im Klaren sein.
Dieses Setup ist nur eine Beispiel, wie es eingerichtet werden kann.
Allgemein:
BOVPN-VIf aufsetzen
Als wählt ihr im Policy Manager VPN > BOVPN Virtual Interfaces…
Hier wird euch direkt auffallen, dass die Einrichtung des BOVPN mit virtuellen Interfaces wesentlich intuitiver ist als das Normale BOVPN Setup. In der Kopfzeile geben wir dem Virtuellen Interface auf der Firewall einen Namen und legen fest, um welchen Gerätetyp es sich bei dem anderen Endpunkt handelt.
Dann passen wir im Reiter Gateway Settings folgende Einstellungen an:
Auf der anderen Firewall konfigurieren wir das ganze genau andersherum:
Im Reiter VPN Routes könnten wir jetzt über Statische Routen die Netze 10.0.10.0/24 und 10.0.20.0/24 eintragen. In diesem Beispiel möchte ich aber dynamisches Routing verwenden, dazu später mehr.
Hier könnt ihr dem virtuellen Interface noch eine Adresse geben, ich verwende 10.0.99.1 und 10.0.99.2 für die beiden Firewalls.
Den nächsten Reiter den wir anpassen ist Phase 1 Settings. Hier passen wir folgende Einstellungen an:
Dann kümmern wir uns um die Phase 2 Settings. Hier sind wichtig:
Die Multicast Settings müssen wir nicht anfassen.
Jetzt nehmen wir uns dem Routing an. Ich nehme in diesem Beispiel BGP, ihr könnt aber auch ein anderes Protokoll verwenden wenn ihr dies möchtet. Ich erkläre die Konfiguration explizit nicht in diesem Artikel, da das Augenmerk auf der Einrichtung des Tunnels liegen soll.
Geht im Policy Manager auf Network > Dynamic Routing… aktiviert dynamisches Routing und wählt den Reiter BGP. Tragt hier folgendes ein:
Bitte verwendet eine AS Nummer, in diesem Fall 34001 und 34002 über 65000. Euer Testsetup sollte zwar vom Internet getrennt sein. Falls ihr allerdings irgendwie doch ins Internet Routet, solltet ihr wissen, dass BGP das Protokoll ist mit dem Carrier ihre Routen austauschen. Die AS Nummern über 65000 sind frei, alles darunter könnte die Nummer eine Autonomen Systems eines ISPs sein…
Als Nächstes müssen wir Multi-WAN konfigurieren, da wir nun mehr als ein externes Interface haben. Wenn wir dies nicht machen steht das Interface per Default auf FAILED und wird ignoriert.
Dazu wählen wir im Policy Manager nochmals Network > Configuration… und wechseln hier zu dem Multi-WAN Reiter. Wir definieren nun einen Pingcheck gegen die jeweils andere Firewall auf dem VPN Interface.
Damit dieser Pingcheck auch funktioniert und das Interface nicht im Status FAILED steht, müssen wir noch die ICMP Firewallregel auf den Geräten anpassen.
Anschließend speichert ihr auf beiden Firewalls die Config, verkabelt die Geräte und euer Tunnel sollte sollte online kommen. Zum testen könnt ihr jeweils einen Client mit den Netzen 10.0.10.0/24 und 10.0.20.0/24 verbinden.
Wenn sich die Clients erreichen können, ist der Tunnel erfolgreich aufgebaut und die Routen gelernt worden.
Cheers, Ori