pfSense virtualisiert mit VMware Workstaton in GNS3 mit Internetzugang
In meinem heutigen Artikel geht darum, wie man eine mit VMware Workstation virtualisierte pfSense in das Netzwerk Simulationsprogramm GNS3 einbinden und mit dem Internet verbinden kann. Der Zugriff auf die pfSense wird über den normalen Computer, ohne Probleme und Einschränkungen, möglich sein.
Ich gehe in der Anleitung nur auf das notwendigste ein um einen schnellen Erfolg zu garantieren.
Software Versionen:
GNS3: GNS3 version 1.5.2 on Windows (64-bit) with Python 3.5.1 Qt 5.6.0
VMware Workstation: VMware Workstation 12 Pro (12.5.0 build-4352439
pfSense: pfSense-CE-2.3.2-RELEASE-amd64
Vorbereiten der Netzwerkkarten von VMware Workstation
Als erstes muss man die virtuellen Netzwerkkarten erstellen: Edit -> Virtual Network Editor
Es empfiehlt sich hier ein Setup mit „Host-only“ Netzwerkadaptern. Um frei in meiner IP Adressvergabe zu sein, habe ich die DHCP Server der Netzwerkadapter deaktiviert. Wahlweise könnte man sich hier eine statische Adresse vergeben, aber um alles klar strukturiert zu konfigurieren, habe ich hier auf IPs verzichtet.
Benötigt werden 3 virtuelle Netzwerkverbindungen (WAN, LAN, Opt1).
Folgendes Interface wird später unser „OPT1“ = Zugriffsinterface von unserem lokalen Computer. Dieses Interface hat als einziges einen DHCP Server.
Hier ein Beispiel für ein mögliches LAN oder WAN Interface:
Zuordnen der Netzwerkverbindungen in der pfSense:
Die Interfaces müssen der virtuellen Maschine, wo später pfSense installiert werden soll, zugeordnet werden:
Nachdem die pfSense installiert wurde und man folgenden den Willkommens Bildschirm sieht, konfigurieren wir die Interfaces:
Hier ist es sehr hilfreich, wenn man sich für die Installation und spätere Zwecke eine kleine Matrix der Zuordnungen erstellt. Vor allem in der weiteren Arbeit mit GNS3 ist das für Dokumentations- und Analyse Zwecke äußerst sinnvoll:
MAC Adresse | Network Adapter | pfSense Adapter | Funktion |
---|---|---|---|
00:0C:29:64:26:F9 | VMnet12 | em0 | LAN |
00:0C:29:64:26:03 | VMnet13 | em1 | WLAN |
00:0C:29:64:26:0D | VMnet2 | em2 | OPT1 |
Die notwendigen Informationen bekommt man direkt im Bildschirm beim zuordnen der Interfaces (1 – Assign Interfaces – pfSense) sowie in den Netzwerkadapter Einstellungen der virtuellen VMware Maschine:
Das Prozedere der Zuweisung läuft wie folgt ab:
Should VLANs be set up now?
NoEnter the WAN interface name
em1Enter the LAN interface name
em0Enter the Optional 1 interface name
em2Enter the Optional 2 interface name
(Enter)Do you want to proceed?
Yes
Hierbei ist natürlich darauf zu achten, dass es immer Unterschiede geben wird und man die Zuordnung der Interfaces prüfen sollte!
Konfigurieren der Netzwerkverbindungen in der pfSense:
Mit der Option 2 kann man den Interfaces dann IP Adressen geben. Wir kümmern uns in diesem Artikel nur um die IP Adresse des OPT1, welchen wir für den Zugriff auf die pfSense benötigen. Wir gehen auch davon aus, dass die IP Adresse für das WAN Interface vom Haupt-Router vergeben wird (z.B. FritzBox etc.). Natürlich kann man auch hier den Zugriff über das WAN Interface mit zugeteilten IP vom Router erreichen – allerdings empfehle ich, auch für spätere Zwecke, nach wie vor ein Management Interface mit dem man sicherstellen kann, in jedem Fall auf die pfSense zugreifen zu können.
Die IP Zuweisung funktioniert wie folgt:
Enter the number of the interface you wish to configure
3 – Opt1(em2)Enter the new OPT1 IPv4 address
192.168.222.128Enter the new OPT1 IPv4 subnet bit count (1 to 31)
24For a WAN, enter the new OPT1 IPv4 upstream gateway address
192.168.222.1*Enter the new OPT1 IPv6 address
(Enter)Do you want to enable the DHCP server von OPT1
NoDo you want to revert to HTTP as the webConfigurator protocol?
Yes
Auch hier ist noch mal anzumerken, dass sich die Interfaces und Adressen ändern können und ihr das auf euer Setup anpassen solltet.
Zugriff auf das Webinterface der pfSense einrichten
Man könnte jetzt mit allerlei Tricks und Tunneln anfangen – am einfachsten ist es allerdings, wenn man die Firewall der pfSense kurzzeitig außer Kraft setzt. Da die Verbindung zur pfSense aus Host-only Adaptern im eigenen Netz hinter einem Router/Firewall befindet, ist dies auch kein allzu großes Risiko.
Hierzu im pfSense Auswahlmenü die 8 für Shell auswählen und im Shell Fenster der Befehl „pfctl- d“ zum deaktivieren der Firewall:
Die Firewall schaltet sich jede Minute immer wieder erneut ein. Sobald der Zugriff im Webinterface hängt, einfach den Befehl noch einmal erneut ausführen.
Es empfiehlt sich außerdem die pfSense in der der Version 2.3.2 mit dem Internet Explorer aufzurufen. In dieser Version gibt es noch einen Fehler mit Chrome, wodurch man keine Regeln anlegen kann. Dieser Fehler wird allerdings mit dem Update auf Version 2.3.2-RELEASE-p1 behoben.
Wenn alles klappt, sollte folgende Seite zu sehen sein:
Nun geht es daran eine Zugriffsregel anzulegen, damit man auch Zugriff auf das Webinterface hat, wenn die Firewall nicht deaktiviert ist:
- Firewall -> Rules -> das OPT1 Interface auswählen (in meinem Bildern habe ich den Namen bereits auf Access geändert)
- Eine Regel mit folgenden Attributen anlegen:
Action: Pass
Interface: OPT1
Address Family: IPv4
Protocol: Any (TCP reicht aber)
Source: IP Adresse des Computers (192.168.222.1)
Destination: This firewall (self)
Einbinden der pfSense in GNS3
Um die pfSense in GNS3 nutzen zu können, müssen wir diese über einen virtuellen Link einbinden. Hierfür nutzen wir die Option „Host“ unter Browse End Devices. Einfach mittels Drag & Drop den Host in den Netzwerkplan ziehen. Um auf lokale Ressourcen wie Netzwerkverbindungen zurück greifen zu können, muss als Server der „Local server“ ausgewählt werden:
Abschließend müssen noch die Netzwerkverbindungen so angepasst werden, dass dem Host die 3 vorgesehenen Interfaces zur Verfügung stehen:
Anlegen der „Real“ Internetverbindung sowie Verbindung mit der pfSense:
Für die Verbindung mit dem Internet gehen wir genau so vor wie mit dem Host, allerdings benutzen wir nun die Cloud Wolke. Hier müssen die Netzwerkverbindungen so angepasst werden, dass Zugriff auf das LAN Interface des Host Computers möglich ist. Hierdurch bekommt die pfSense auf der WAN Leitung eine dynamische IP vom Haupt Router zugewiesen.
Damit die pfSense eine Verbindung zu der Internet Wolke herstellen kann, muss noch ein virtuelles Verbindungsstück angelegt werden. Aus technischen Gründen ist es in GNS3 Leider nicht möglich diese beiden Interfaces direkt zu überbrücken. Hierzu habe ich einen einfachen Switch genommen. Es müssen keinerlei Konfigurations-Maßnahmen daran gemacht werden.
Mit einem Ping Test können wir prüfen ob unsere Infrastruktur funktioniert:
Einstellungen für ein erfolgreiches einspielen des pfSense Updates
Damit wir nun die aktuelle Version der pfSense Software installieren können, müssen wir nun noch folgende Einstellungen machen:
DNS Server festlegen:
WAN Schnittstelle als Default GW aktivieren:
Dann klappt es auch mit dem Update: