Wie richte ich WireGuard für OPNsense ein?
WireGuard ist ein einfaches und schnelles VPN-Protokoll, das moderne Kryptographie verwendet. Es soll schneller und weniger kompliziert als IPsec sein und eine deutlich leistungsfähigere Alternative zu OpenVPN bieten. Es hat auch eine kleinere Codebasis, was die Überprüfung und Wartung erleichtert. Es wurde ursprünglich für den Linux-Kernel entwickelt, ist aber jetzt plattformübergreifend und weit verbreitet. Wir glauben, dass die beste VPN für OPNsense WireGuard ist.
Dieses Tutorial führt Sie durch den Prozess der Installation eines zentralen WireGuard-Servers auf OPNsense und der Konfiguration eines oder mehrerer Clients, um sich mit ihm zu verbinden. Wir werden eine einfache Peer-Verbindung zwischen einem OPNsense 21.7.3-Server und einem Client konfigurieren. Der Client kann entweder Ihr lokaler Computer oder ein mobiles Gerät sein.
Zuerst werden wir WireGuard auf OPNsense 21.7.3 als VPN-Server installieren und konfigurieren. Dann werden wir WireGuard sowohl auf einem Desktop-PC als auch auf einem Android-Gerät als Client konfigurieren. Der Desktop-PC kann Windows 7/10 ausführen. Der Datenverkehr des Clients wird über den Ubuntu 20.04-Server geleitet.
Abbildung 1. WireGuard P2P VPN Topologie (OPNsense WireGuard Server und Android/Windows Clients)
Sie können dieses WireGuard-Setup verwenden, um sicher auf Ihr Unternehmens- oder Heimnetzwerk von überall auf der Welt zuzugreifen.
Sie können das Zenarmor NGFW Plug-in schnell auf Ihrem OPNsense VPN-Server installieren, um entfernte Mitarbeiter vor Cyber-Bedrohungen zu schützen.
Das Zenarmor NGFW-Plugin für OPNsense ist eines der beliebtesten OPNsense-Plugins und ermöglicht es Ihnen, Ihre Firewall in Sekundenschnelle auf eine Next-Generation-Firewall aufzurüsten. NG Firewalls ermöglichen es Ihnen, modernen Cyberangriffen entgegenzuwirken, die jeden Tag raffinierter werden.
Einige der Funktionen sind Layer-7-Anwendungs-/Benutzer-erkennendes Blockieren, granulare Filterrichtlinien, kommerzielles Webfiltering mit cloudbasierter KI-gestützter Bedrohungsintelligenz, Kindersicherung und die besten Netzwerk-Analysen und -Berichte der Branche.
Zenarmor Die kostenlose Edition steht allen OPNsense-Nutzern ohne Kosten zur Verfügung.
Wie konfiguriert man den WireGuard VPN-Server in OPNsense?
Die OPNsense WireGuard-Konfiguration ist einfach und unkompliziert. Sie können den WireGuard VPN-Server ganz einfach auf Ihrer OPNsense-Firewall einrichten, indem Sie die fünf unten aufgeführten Hauptschritte befolgen:
-
Laden Sie WireGuard für sowohl Server als auch Clients herunter und installieren Sie es.
-
Erzeugen Sie kryptografische Schlüsselpaar (öffentliche und private Schlüssel) sowohl für den Server als auch für die Clients.
-
Konfigurieren Sie die WireGuard-Tunnel-Schnittstellen sowohl auf dem Server als auch auf den Clients.
-
Konfigurieren Sie die Firewall-Regeln auf Ihrem OPNsense WireGuard VPN-Server
-
Aktivieren Sie die WireGuard-Tunnel-Schnittstellen sowohl auf dem Server als auch auf den Clients.
Um dieser OPNsense WireGuard Installationsanleitung zu folgen, benötigen Sie die unten aufgeführten Geräte:
-
OPNsense 21.7.3 Firewall, die als WireGuard VPN-Server konfiguriert wird.
-
Ein Windows-PC oder ein Android-Gerät wird als WireGuard-VPN-Client konfiguriert.
1. Installation des WireGuard-Plugins auf OPNsense
Um das WireGuard
-Plugin auf Ihrer OPNsense-Firewall zu installieren, können Sie die folgenden Schritte befolgen.
-
Navigieren Sie zu
System
→Firmware
→Plugins
. -
Geben Sie
os-wireguard
in das Suchfeld ein.Abbildung 2. Installation des WireGuard-Plugins auf OPNsense
-
Klicken Sie auf das
+
-Symbol am rechten Ende vonos-wireguard
, um das Plugin zu installieren. -
Nach der Installation des Plugins die Browser-Seite aktualisieren, um über
VPN
→WireGuard
auf das WireGuard-Konfigurationsmenü zuzugreifen.Abbildung 3. Installiertes
os-wireguard
-Plugin auf OPNsense
Seit OPNsense 24.1 ist das WireGuard-Plugin in das OPNsense-Kernsystem integriert, wodurch die Notwendigkeit einer separaten Installation des os-wireguard
-Plugins entfällt.
2. WireGuard VPN-Server (lokale) Konfiguration auf OPNsense
Nachdem Sie das WireGuard-Plugin auf Ihrer OPNsense-Firewall installiert haben, können Sie die folgenden Schritte ausführen, um Ihren Server weiter zu konfigurieren.
-
Navigieren Sie zu
VPN
→WireGuard
→General
im OPNsense Web-GUI. -
Klicken Sie auf das Kontrollkästchen, um WireGuard zu aktivieren.
Abbildung 4. Aktivierung des WireGuard-Servers auf OPNsense
-
Navigieren Sie zum Tab
Local
und klicken Sie dann unten rechts im Bereich auf+
, um eine neue lokale Konfiguration hinzuzufügen.Abbildung 5. Hinzufügen einer lokalen WireGuard-Konfiguration auf OPNsense
-
Überprüfen Sie, ob die lokale Konfiguration aktiviert ist.
-
Setzen Sie den
Name
des WireGuard VPN-Servers nach Ihren Wünschen, zum BeispielMyWireGuard
. -
Setzen Sie den
Listen port
auf 51820 oder einen höher nummerierten, eindeutigen Port. -
Setzen Sie die
Tunnel Address
in CIDR-Notation, wie z.B.10.0.0.1/24
infoTunnel-Adresse muss eine eindeutige IP-Adresse und Subnetz für Ihr Netzwerk sein. Das Subnetz sollte groß genug sein, um alle Client-Peers, die das Tunnel verwenden werden, unterzubringen. Im Falle von IPv4 sollte es eine private (RFC1918) Adresse sein, wie zum Beispiel 10.0.0.1/24.
-
Lassen Sie die anderen Optionen auf den Standardeinstellungen.
Abbildung 6. Konfiguration des lokalen WireGuard VPN-Servers auf OPNsense
-
Klicken Sie unten im Konfigurationsfenster auf
Save
. Dies wird automatisch die öffentlichen und privaten Schlüsselpaar für den WireGuard VPN-ServerinfoEiner der Hauptvorteile von WireGuard ist, dass es auf modernsten kryptografischen Primitiven basiert. Es bietet Ihnen einen sicheren VPN-Tunnel, indem es Ihre Verbindung mit einem Paar kryptografischer Schlüssel verschlüsselt. Um eine sichere Kommunikation in beide Richtungen zu gewährleisten, muss jeder Peer seine eigenen privaten und öffentlichen Schlüssel haben. Jeder Server und Client muss sein eigenes Schlüsselpaar generieren und dann die öffentlichen Schlüssel austauschen, um WireGuard zu verwenden.Bitte geben Sie den Text ein, den Sie übersetzen möchten.
Abbildung 7. Bearbeiten der lokalen WireGuard VPN-Serverkonfiguration auf OPNsense
-
Klicken Sie auf das
Stift
-Symbol, um die lokale Konfiguration desMyWireGuard
VPN zu bearbeiten/anzusehen. -
Notieren Sie den Wert des
Public Key
, der später für die Konfiguration des WireGuard VPN-Clients erforderlich sein wird.Abbildung 8. Anzeigen des
Public Key
des WireGuard VPN-Servers -
Schließen Sie das Fenster Edit Local Configuration
Die in diesem Schritt abgeschlossene Konfiguration wird Ihren WireGuard-Server dazu bringen, Verbindungen zu 51820 zu akzeptieren und einem Client mit dem öffentlichen Schlüssel, der dem automatisch generierten privaten Schlüssel entspricht, zu erlauben.
3. Einrichtung des WireGuard VPN-Clients unter Windows
WireGuard für Windows unterstützt Windows 7, 8, 8.1, 10, 2012, 2016 und 2019 und ist in einer 64-Bit- und einer 32-Bit-Version erhältlich. In diesem Abschnitt werden wir behandeln, wie man den WireGuard Windows-Client installiert und sich über VPN mit einem WireGuard Virtual Private Server (VPS) verbindet.
Sie können die folgenden Schritte befolgen, um WireGuard als VPN-Client auf einer Windows-Plattform zu installieren und zu konfigurieren:
3.1. Windows WireGuard-Client herunterladen und installieren
Laden Sie den Windows-Installer von der WireGuard-Website herunter und installieren Sie ihn. Diese Option wählt die neueste Version für Ihre Hardware aus, lädt sie herunter und installiert sie.
Abbildung 9. Herunterladen des WireGuard Windows-Installers
Nach der Installation sollten Sie das WireGuard-Symbol im Benachrichtigungsbereich der Taskleiste sehen.
Abbildung 10. WireGuard-Symbol in der Taskleiste
3.2. Konfiguration des WireGuard Windows Clients
Starten Sie die WireGuard-Anwendung und klicken Sie auf den nach unten zeigenden Pfeil neben der Schaltfläche Add Tunnnel
im Tab Tunnel.
Abbildung 11. Konfiguration von WireGuard auf Windows-Client
Klicken Sie auf Add empty tunnel
, wie im Bild unten gezeigt:
Abbildung 12. Leeren Tunnel hinzufügen
Dies wird automatisch ein öffentliches/privates Schlüsselpaar erstellen und es auf dem Bildschirm anzeigen.
Schreiben Sie den öffentlichen Schlüssel auf, der später zum Hinzufügen des WireGuard Windows-Client-Peers zum Server verwendet wird.
Abbildung 13. Erstellen eines neuen WireGuard-Tunnels auf dem Windows-Client
Geben Sie einen Namen mit alphanumerischen Zeichen ein (keine Leerzeichen oder Satzzeichen) für den Tunnel, wie zum Beispiel MyWireGuard
, und bearbeiten Sie die Konfiguration wie folgt:
[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.11/24
DNS = 10.0.0.1
[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP_ADDRESS:51820
AllowedIPs = 0.0.0.0/0
Erklärungen der Felder im Abschnitt der Benutzeroberfläche sind unten angegeben:
-
PrivateKey: Privater Schlüssel dieses Windows-Clients.
-
PublicKey: Öffentlicher Schlüssel dieses Windows-Clients. Der öffentliche Schlüssel muss dann in die Endpoint-Konfiguration auf OPNsense für den entsprechenden Client-Peer kopiert werden.
-
Address: VPN-IP-Adresse dieses Clients. Es muss einzigartig unter allen Kunden sein. Bezieht sich auf die als erlaubte IP(s) in der Endpunktkonfiguration auf OPNsense angegebenen IP(s).
-
DNS: IP-Adresse eines DNS-Servers, den der Client für das Tunnel verwenden sollte. In diesem Fall verwenden wir den DNS-Server, der auf dem OPNsense WireGuard-Server läuft.
Erklärungen der Felder im Peer-Bereich sind unten angegeben:
-
PublicKey: Der öffentliche Schlüssel des OPNsense WireGuard-Servers (in unserem Beispiel ist es
fyKJ4c6sXTVRTJla6zQ9wi4okRPRd/GsMbTMszjhAgA=
, wie in Abbildung 8 angegeben). -
Endpoint: Die öffentliche/echte IP-Adresse des OPNsense-Servers, gefolgt von einem Doppelpunkt und dem WireGuard-Port (
51820
). -
AllowedIPs:
0.0.0.0/0
: Gibt an, welche IP-Adressen über das VPN geroutet werden sollen.0.0.0.0/0
ist eine Catch-All-Konfiguration und leitet alles über das VPN.
3.3. Option zum Blockieren von ungetunneltem Verkehr (Kill-Switch)
Im Fenster Edit tunnel gibt es eine Option Block untunneled traffic. Sie können diese Option aktivieren, wenn Ihre Konfiguration genau einen [Peer]-Abschnitt hat und AllowedIPs auf eine Catch-All-Adresse eingestellt ist.
Wenn die Option aktiviert ist, fügt der WireGuard-Client Windows-Firewall-Regeln hinzu, um allen Verkehr zu blockieren, der weder zur noch von der Tunnel-Schnittstelle geht. Damit es verhindert, dass IP-Pakete versehentlich außerhalb des VPN gesendet werden.
Abbildung 14. WireGuard-Tunnelkonfiguration auf Windows-Client
Sobald Sie fertig sind, klicken Sie auf die Save-Schaltfläche.
4. Hinzufügen der WireGuard-Endpunkt(Client Peer)-Konfiguration zum Server
Um den öffentlichen Schlüssel und die IP-Adresse des Clients zum Server hinzuzufügen, können Sie die folgenden Schritte ausführen:
-
Navigieren Sie zu
VPN
→WireGuard
→Endpoints
im OPNsense Web-UI.Abbildung 15. Hinzufügen der WireGuard-Endpunktkonfiguration auf OPNsense
-
Klicken Sie auf
+
, um einen neuen Endpunkt hinzuzufügen -
Geben Sie den
Name
ein, wie zum BeispielMyWindows
. -
Geben Sie den öffentlichen Schlüssel ein, der während der oben beschriebenen Konfiguration des Windows WireGuard-Clients generiert wurde. In unserem Beispiel ist er
HtuNHzBxW+ZcKMjOc5wbXZTFL4qKNbmzo/6XoR/cyEE=
. -
Setzen Sie Allowed IPs auf die gleiche IP-Adresse wie das Adressfeld in der obigen Windows WireGuard-Clientkonfiguration unter Verwendung der CIDR-Notation, in unserem Beispiel ist es
10.0.0.11/32
. -
Klicken Sie auf
Save
.Abbildung 16. Konfiguration des WireGuard-Endpunkts (Windows) auf OPNsense
5. Konfiguration des WireGuard Android-Clients
Sie können die WireGuard-Anwendung auf Ihrem Mobilgerät ganz einfach konfigurieren, um die VPN-Verbindung herzustellen, indem Sie die nachstehenden Schritte befolgen.
5.1. Laden Sie die WireGuard-Anwendung auf Ihr Android-Gerät herunter und installieren Sie sie
Sie können die offizielle Anwendung aus dem Google Play Store
auf Ihrem Android
-Gerät herunterladen und installieren.
Abbildung 17. Installation der WireGuard Android-Anwendung aus dem Playstore
5.2. Konfiguration des WireGuard-Clients auf Android
Sobald die WireGuard-Anwendung installiert ist, müssen wir eine neue Konfigurationsdatei für den VPN-Tunnel hinzufügen.
-
Klicken Sie auf die blaue Schaltfläche mit dem
+
-Symbol. Dies öffnet eine neue Ansicht auf Ihrem Gerät, um den Tunnel zu konfigurieren.Abbildung 18. Hinzufügen eines WireGuard-Tunnels für den Android-Client
-
Klicken Sie auf
Creating From Scratch
.Abbildung 19. Tunnelkonfiguration von Grund auf erstellen
-
Setzen Sie den
Name
, wie zum BeispielMyWireGuard
. -
Um das Public/Private-Schlüsselpaar zu generieren, klicken Sie auf das Recycling-Symbol am rechten Ende des Public-Key-Feldes.
-
Setzen Sie die Adresse, zum Beispiel 10.0.0.12.
-
Stellen Sie den DNS ein, z.B. 10.0.0.1.
-
Klicken Sie auf den Link „Peer hinzufügen“ unten.
Abbildung 20. *WireGuard-Client-Konfiguration auf einem Android-Gerät
Abbildung 21. Hinzufügen der Peer-Konfiguration zum WireGuard-Client auf einem Android-Gerät
-
PrivateKey: Privater Schlüssel dieses Android-Clients.
-
PublicKey: Publickey dieses Android-Clients. Der öffentliche Schlüssel muss dann in die Endpoint-Konfiguration auf OPNsense für den entsprechenden Client-Peer kopiert werden.
-
Adresse: IP-Adresse dieses Clients. Es muss einzigartig unter allen Kunden sein. Bezieht sich auf die in der Endpunktkonfiguration auf OPNsense als erlaubte IP(s) angegebenen IP(s).
-
DNS: IP-Adresse eines DNS-Servers, den der Client für das Tunnel verwenden sollte. In diesem Fall verwenden wir den DNS-Server, der auf dem OPNsense WireGuard-Server läuft.Erklärungen der Felder im Peer-Bereich sind unten angegeben:
-
PublicKey: Der öffentliche Schlüssel des OPNsense WireGuard-Servers.
-
Endpoint: Die öffentliche/echte IP-Adresse des OPNsense-Servers, gefolgt von einem Doppelpunkt
:
und dem WireGuard-Port (51820). -
AllowedIPs:
0.0.0.0/0
: Gibt an, welche IP-Adressen über das VPN geroutet werden sollen. 0.0.0.0/0 ist eine Alleskonfiguration und leitet alles über das VPN.
-
-
Kopieren Sie den öffentlichen Schlüssel des OPNsense WireGuard-Servers aus der lokalen Konfiguration auf OPNsense in das Feld „Öffentlicher Schlüssel“.
-
Setzen Sie den
Endpoint
auf die öffentliche IP-Adresse des OPNsense WireGuard-Servers und den WireGuard-Listenport. -
Setzen Sie die
Allowed IPs
auf0.0.0.0/0
-
Tippen Sie auf das Diskettensymbol oben rechts auf dem Bildschirm, um die Konfiguration zu speichern.
hinweisWenn Sie einen Ubuntu-Desktop haben, der eine VPN-Verbindung benötigt, können Sie die WireGuard-Installationsanleitung lesen, um weitere Informationen zur Konfiguration des Ubuntu WireGuard VPN-Clients zu erhalten.
6. Hinzufügen der WireGuard-Endpunkt(Client Peer)-Konfiguration zum Server
Um den öffentlichen Schlüssel und die IP-Adresse des Android-Clients zum Server hinzuzufügen, können Sie die folgenden Schritte ausführen:
-
Navigieren Sie zu
VPN
→WireGuard
→Endpoints
im OPNsense Web-UI. -
Klicken Sie auf
+
, um einen neuen Endpunkt hinzuzufügen -
Geben Sie den
Name
ein, wie zum BeispielMyAndroid
. -
Geben Sie den öffentlichen Schlüssel ein, der während der oben beschriebenen Konfiguration des Android WireGuard-Clients generiert wurde. In unserem Beispiel ist es
rQdjEcn7UMbIverQ4D0FKfz+fkGLxClArwDsXCNf+DE=
. -
Setzen Sie
Allowed IPs
auf die gleiche IP-Adresse wie das Adressfeld in der oben genannten Windows WireGuard-Client-Konfiguration unter Verwendung der CIDR-Notation, in unserem Beispiel ist es10.0.0.12/32
. -
Klicken Sie auf
Save
.Abbildung 22. Konfiguration des WireGuard-Endpunkts (Android) auf OPNsense
Jetzt können Sie alle konfigurierten WireGuard VPN-Endpunkte,
MyWindows
undMyAndroid
, auf Ihrer OPNsense unter dem TabVPN
→WireGuard
→Endpoints
einsehen.Abbildung 23. WireGuard-Endpunktliste auf OPNsense
7. Hinzufügen von Peers (VPN-Clients) zur lokalen Serverkonfiguration auf OPNsense
Nachdem Sie die Endpunkte auf Ihrer OPNsense-Firewall definiert haben, sollten Sie jeden der Peers zur lokalen Konfiguration des WireGuard-VPN-Servers hinzufügen, indem Sie die folgenden Schritte ausführen.
-
Navigieren Sie zum Tab
VPN
→WireGuard
→Local
im OPNsense GUI. -
Bearbeiten Sie die
MyWireGuard
-VPN-Konfiguration, indem Sie auf das Stiftsymbol klicken. -
Wählen Sie die neu erstellten Endpunkte, in unserem Beispiel
MyWindows
undMyAndroid
, aus dem Dropdown-MenüPeers
aus. -
Klicken Sie auf
Save
.Abbildung 24. Hinzufügen von Peers (Endpunkten) zur lokalen Konfiguration des WireGuard VPN-Servers
-
Klicken Sie auf
Apply
.
8. Aktivierung des WireGuard-Servers auf OPNsense
Um den WireGuard-Server auf OPNsense zu aktivieren,
-
Navigieren Sie zu
VPN
→WireGuard
→General
-Registerkarte im OPNsense Web-UI. -
Klicken Sie auf das Kontrollkästchen
Enable WireGuard
. -
Klicken Sie auf
Apply
.Abbildung 25. Aktivierung des WireGuard-Servers auf OPNsense
9. Erstellen einer WireGuard-Schnittstelle auf OPNsense
Wenn Sie nur auf Ihr LAN über WireGuard zugreifen müssen, aber nicht auf IPs außerhalb des lokalen Netzwerks, zum Beispiel das öffentliche Internet, können Sie diesen Schritt überspringen.
Obwohl dieser Schritt unter keinen Umständen für eine Road-Warrior-Konfiguration unbedingt erforderlich ist, ist es aus mehreren Gründen vorteilhaft, eine WireGuard-Schnittstelle auf OPNsense zu erstellen:
-
Es erstellt ein Alias für das/die Tunnel-Subnetz(e), das/die dann in Firewall-Regeln verwendet werden kann/können. Andernfalls müssen Sie Ihren eigenen Alias erstellen oder das Subnetz manuell angeben. (s).
-
Es fügt automatisch eine IPv4-Ausgangs-NAT-Regel hinzu, die es dem Tunnel ermöglicht, auf IPv4-IP-Adressen außerhalb des lokalen Netzwerks zuzugreifen (falls gewünscht), ohne dass eine Regel manuell hinzugefügt werden muss.
-
Es ermöglicht die Trennung der Firewall-Regeln jeder WireGuard-Instanz (jedes
wgX
-Gerät). Andernfalls müssen sie alle in der Standard-WireGuard-Gruppe konfiguriert werden, die von OPNsense erstellt wurde.
Um die WireGuard-Schnittstelle zu erstellen, können Sie die folgenden Schritte befolgen:
-
Navigieren Sie zu
Interfaces
→Assignments
-
Wählen Sie das WireGuard-Gerät (
wg0
, wenn dies Ihr erstes ist) im Dropdown-Menü nebenNew interface:
aus. -
Fügen Sie eine Beschreibung wie
MyWireGuard
hinzu -
Klicken Sie auf
+
, um es hinzuzufügen -
Klicken Sie auf
Save
Abbildung 26. Erstellen einer WireGuard-Schnittstelle auf OPNsense
-
Wählen Sie Ihre neue Schnittstelle im Menü "Interfaces" aus, indem Sie darauf klicken, um sie zu konfigurieren.
-
Aktivieren Sie die Schnittstelle, indem Sie das Kontrollkästchen anklicken.
-
Aktivieren Sie
Prevent interface removal
in der OptionSperren
. -
Lassen Sie die anderen Optionen auf den Standardeinstellungen.
Abbildung 27. Konfiguration der WireGuard-Schnittstelle auf OPNsenseKontext:
tippEs ist nicht notwendig, IP-Adressen auf der WireGuard-Schnittstelle zu konfigurieren. Sobald der WireGuard-Dienst neu gestartet wird, werden die in der
Local
-Konfiguration Ihres WireGuard-Servers angegebenen Tunneladressen automatisch der Schnittstelle zugewiesen. -
Klicken Sie auf
Apply changes
, um die neuen Schnittstelleneinstellungen zu aktivieren. -
Navigieren Sie zu
VPN
→WireGuard
→General
-Registerkarte im OPNsense-Web-UI. -
Deaktivieren Sie WireGuard, indem Sie das Kontrollkästchen
Enable WireGuard
deaktivieren. -
Aktivieren Sie WireGuard, indem Sie das Kontrollkästchen
Enable WireGuard
ankreuzen.
10. Erstellen von Firewall-Regeln
Sie können die folgenden beiden Firewall-Regeln auf Ihrem OPNsense-Knoten definieren.
-
Eine Firewall-Regel auf der WAN-Schnittstelle, um Clients die Verbindung zum OPNsense WireGuard-Server zu ermöglichen.
-
Eine Firewall-Regel, um Clients den Zugriff auf die IPs zu ermöglichen, auf die sie zugreifen sollen. Diese Regel ist optional und Sie müssen möglicherweise nicht zulassen, dass Kunden auf die internen Netzwerke zugreifen.
10.1. Erlauben von VPN-Clients den Zugriff auf den OPNsense WireGuard-Server
Sie haben einen WireGuard-VPN-Server installiert und konfiguriert, um remote auf das interne Heim-/Firmen-Netzwerk zuzugreifen. Ihr WireGuard VPN Server sollte jedoch aus dem Internet zugänglich sein. Um den Zugriff auf den WireGuard/OpenVPN VPN-Dienst zu ermöglichen, lesen Sie bitte den Artikel Wie man OPNsense-Firewall-Regeln konfiguriert, der von Sunny Valley Networks verfasst wurde.
Nachdem Sie diese Firewall-Regel definiert haben, sollten Ihre WireGuard-VPN-Clients in der Lage sein, sich mit dem WireGuard-Server zu verbinden und über Ihre OPNsense-Internetverbindung auf das Internet zuzugreifen.
10.2. Erlauben von VPN-Clients den Zugriff auf die internen Netzwerke
Wenn Sie möchten, dass Ihre WireGuard-VPN-Clients sich mit beliebigen Geräten in Ihrem Netzwerk verbinden können, müssen Sie zusätzliche Firewall-Regeln erstellen, um einen solchen Zugriff zu ermöglichen. Um eine Firewall-Regel zu definieren, die VPN-Clients den Zugriff auf jedes Gerät in Ihrem LAN ermöglicht, können Sie die folgenden Schritte befolgen.
-
Navigieren Sie zu der WireGuard-Schnittstelle, die Sie erstellt haben, wie zum Beispiel MyWireGuard, in den Firewall-Regeln. Klicken Sie auf das
+
-Symbol, um eine neue Regel hinzuzufügen, die den Zugriff überall erlaubt.Option Wert Action Erlauben Interface MyWireGuard Protocol beliebig Source MyWireGuard-Netz Source Port beliebig Destination beliebig Destination Port beliebig Description Erlaube WireGuard-Geräten den Zugriff auf überall ohne Einschränkungen -
Wählen Sie
Pass
für die Erlaubensregel. -
Wählen Sie
MyWireGuard
als Quelle aus. -
Wählen Sie
any
für den Quellport.Abbildung 28. Festlegen einer Firewall-Regel, um allen VPN-Clients den Zugriff auf anywhere-1 zu ermöglichen
-
Wählen Sie
any
für das Ziel -
Wählen Sie
any
für den Zielportbereich. -
Sie können die anderen Einstellungen auf den Standardwerten belassen.
-
Klicken Sie unten auf der Seite auf
Save
.Abbildung 29. Festlegen einer Firewall-Regel, um allen VPN-Clients den Zugriff auf anywhere-2 zu ermöglichen
-
Klicken Sie auf die Schaltfläche
Apply Changes
, um die Einstellungen zu aktivieren.
11. Überprüfung der WireGuard-Konfiguration auf OPNsense
Die Konfiguration des WireGuard VPN-Servers und der Client-Konfigurationen ist abgeschlossen. Um die Konfigurationen zu testen, können Sie die folgenden Schritte befolgen.
-
Aktivierung des WireGuard Windows Clients: Um Ihren Windows-PC mit dem VPN-Server zu verbinden, öffnen Sie die WireGuard-Anwendung und aktivieren Sie den
MyWireGuard
-Tunnel, indem Sie auf die SchaltflächeActivate
klicken.Sobald die Peers verbunden sind, ändert sich der Tunnel-Status auf
Active
.Abbildung 30. Aktivierung des WireGuard-Tunnels auf Windows-Client
-
Aktivierung des WireGuard Android-Clients: Um Ihr Android-Gerät mit dem VPN-Server zu verbinden, starten Sie die WireGuard-Anwendung und aktivieren Sie den
MyWireGuard
-Tunnel, indem Sie auf den Umschalter klicken.Abbildung 31. Aktivierung des WireGuard-Tunnels auf dem Android-Client
-
Anzeigen von VPN-Verbindungen auf OPNsense: Navigieren Sie zu den Registerkarten
VPN
→WireGuard
→Listenkonfiguration
in Ihrer OPNsense-Weboberfläche. Sie sollten in der Lage sein, Informationen über die verbundenen VPN-Clients zu sehen. Die folgenden Details werden angezeigt:- Peer (über seinen öffentlichen Schlüssel),- die IP-Adresse des verbundenen Clients,- die Zeit seit der letzten Verbindung,
- die Menge der übertragenen Daten.
Abbildung 32. Konfiguration der verbundenen WireGuard-VPN-Clients auf OPNsense
-
Handschläge: Klicken Sie auf die Registerkarte
Handschläge
. Die Anzahl der Händeschüttel sollte nicht gleich 0 sein und kontinuierlich zunehmen.Abbildung 33. Anzeigen von Handshakes für WireGuard-VPN-Verbindungen auf OPNsense
-
Ping-Test: Sie sollten in der Lage sein, Ihren WireGuard-Server erfolgreich vom Client aus zu pingen und umgekehrt:
ping 10.0.0.1
-
Öffentliche IP-Kontrolle: Um herauszufinden, was Ihre öffentliche IP-Adresse ist, gehen Sie auf
https://www.whatismyip.com
auf Ihrem Client-Gerät. Wenn Ihr WireGuard-Tunnel ordnungsgemäß funktioniert, sollten Sie die öffentliche IP-Adresse Ihres VPN-Servers im Browser sehen, anstatt die öffentliche IP-Adresse Ihres Client-Computers. -
Traceroute-Test: Die IP-Adresse des WireGuard-Server-VPN sollte im Ausgabeergebnis des Traceroute-Befehls angezeigt werden:
traceroute 8.8.8.8
1 10.0.0.1 (10.0.0.1) 0.391 ms 0.348 ms 0.349 ms
2 _gateway (192.168.0.1) 0.641 ms 0.606 ms 0.625 ms
3 * * *
15 * * *
16 142.250.212.20 (142.250.212.20) 27.320 ms 74.125.37.238 (74.125.37.238) 29.852 ms 216.239.49.198 (216.239.49.198) 30.107 ms -
Test des Zugriffs auf interne Netzwerke: Da wir VPN-Clients den Zugang zu den internen Netzwerken hinter der Firewall ohne Einschränkungen erlauben, sollten sie in der Lage sein, überall in Ihrem LAN auf Inhalte zuzugreifen. Zum Beispiel sollten Sie in der Lage sein, ein Gerät in Ihrem LAN vom Client aus erfolgreich anzupingen und umgekehrt.
Wie löst man das Problem mit os-wireguard (fehlend)?
Nach dem Update auf OPNsense 24.1 haben Benutzer das Fehlen des WireGuard-Plugins bemerkt. Der Grund dafür ist, dass das WireGuard-Plugin in das Kernsystem integriert wurde, wodurch die Notwendigkeit einer separaten Installation entfällt.
Wenn Sie nach dem Update Probleme mit WireGuard haben, klicken Sie auf die Option "lokale Konflikte zurücksetzen" unter System → Firmware → Status.
Wie löst man das Handshake-Problem bei WireGuard?
Wenn Sie Probleme mit dem WireGuard-Handshake auf OPNsense haben, gibt es mehrere mögliche Gründe und Lösungen, die Sie in Betracht ziehen sollten:
- Überprüfen Sie die Firewall-Regeln: Beginnen Sie mit der Überprüfung der Konfiguration Ihrer Firewall-Regeln, um sicherzustellen, dass sie die Übertragung von User Datagram Protocol (UDP)-Verkehr auf Port 51820 zulassen.
- Überprüfen Sie die VPN-Schlüssel: Stellen Sie sicher, dass die öffentlichen und privaten Schlüssel sowohl auf dem Server- als auch auf dem Client-Ende identisch sind.
- Überprüfen Sie die IP-Adresse und DNS: Stellen Sie sicher, dass Ihr dynamischer DNS-Dienst ordnungsgemäß eingerichtet ist und dass Ihr Domainname korrekt auf die entsprechende IP-Adresse aufgelöst wird.
- Neustart der Dienste: Gelegentlich kann ein einfacher Neustart des WireGuard-Dienstes sowohl auf dem Server als auch auf dem Client effektiv bei Handshake-Problemen helfen. Darüber hinaus kann das Neustarten Ihres Routers oder Ihrer Netzwerkausrüstung hilfreich sein.