WireGuard-VPN einrichten


Ab Softwareversion 7.2 unterstützt das SX-GATE mit WireGuard eine weitere VPN-Alternative, mit der sich sowohl Clients als auch VPN-Router anbinden lassen. Das Protokoll selbst unterscheidet dabei nicht zwischen Client und Server. Verfügen beide Kommunikationspartner über eine definierte IP-Adresse oder einen DNS-Namen, ist der Verbindungsaufbau in beide Richtungen möglich.

Wie beim SX-GATE üblich, wird auch WireGuard-VPN mit Hilfe von Schnittstellen konfiguriert. In jeder einzelnen WireGuard-Schnittstelle kann eine beliebige Anzahl von Verbindungen konfiguriert werden. Häufig ist es aber sinnvoll, mit mehreren WireGuard-Schnittstellen zu arbeiten. Da sich in jeder WireGuard-Schnittstelle eigene Firewall-Regeln konfigurieren lassen, können durch die Nutzung mehrerer WireGuard-Schnittstellen unterschiedliche Zugriffsberechtigungen festgelegt werden.

SX-GATE als WireGuard-Server einrichten

In diesem Abschnitt geht es darum, WireGuard auf dem SX-GATE so zu konfigurieren, dass andere Systeme eine Verbindung zum SX-GATE aufbauen können. Es kann sich dabei um Clients wie z.B. Smartphones handeln aber auch um SX-GATEs in Außenstellen oder andere VPN-Router. Sofern die Gegenstelle über eine IP-Adresse oder DNS-FQDN auf einem definierten WireGuard-Port ansprechbar ist, kann das SX-GATE auch eine ausgehende Verbindung initiieren.

Schritt 1:
Legen Sie für die zukünftige WireGuard-Schnittstelle zunächst im Menü "Definitionen > Protokolle" ein neues Protokoll an.
Fügen Sie als "Signatur" einen Eintrag mit Protokoll "udp" und dem gewünschten Zielport hinzu.

Hinweis:
Um Konflikte zu vermeiden, empfehlen wir eine Portnummer kleiner als 32768.

Schritt 2:
Im Menü "Module > Firewall > Regeln" muss jetzt der Zugriff aus dem Internet auf den WireGuard-Server freigegeben werden.
Wählen Sie die Internet-Schnittstelle und konfigurieren Sie eine eingehende Firewall-Regel mit dem zuvor angelegten Protokoll.

Schritt 3:
Erzeugen Sie jetzt das Schlüsselpaar für die WireGuard-Schnittstelle. Legen Sie dazu im Menü
"System > Zertifikatsverwaltung > Schlüsselbund" einen neuen Eintrag vom Typ "X25519-Schlüssel (Wireguard)" an und generieren Sie das Schlüsselpaar. Anders als bei X.509-Zertifikaten läuft dieser Schlüssel nicht ab, trotzdem sollten die Schlüssel regelmäßig erneuert werden.

Achtung:
Sofern der Aufwand für das Verteilen neuer Schlüssel groß ist, sollten Sie unbedingt ein Backup des privaten Schlüssels anfertigen.

Schritt 4:
Im Menü "Module > Netzwerk > Schnittstellen" können Sie jetzt die neue WireGuard-Schnittstelle anlegen. Wählen Sie als Schnittstellentyp "Wireguard (wg)", vergeben Sie eine beliebige Zahl als "Schnittstellen-Nummer" und legen Sie eine passende "Firewall-Vertrauensstufe" fest.

In der Folgemaske wählen Sie bei "Privater Schlüssel" den zuvor angelegten privaten Schlüssel aus. Unter "Lokaler Port" tragen Sie die im zuvor angelegten Protokoll konfigurierte Portnummer ein. Mit "Übernehmen" wird die Schnittstelle angelegt.

Schritt 5:
Wechseln Sie jetzt auf den Reiter (Tab) "Verbindungen". Legen Sie neue Verbindungen bevorzugt mit dem Assistenten "Neue Verbindung anlegen mit Konfigurationsexport für Gegenstelle" an. Der Assistent erzeugt eine vollständige WireGuard-Konfigurationsdatei inklusive eines neuen privaten Schlüssels für die Gegenstelle. Diese Datei kann heruntergeladen oder als QR-Code mit einem Smartphone eingelesen werden. Das manuelle Anlegen einer neuen Verbindung direkt in der Tabelle
"Gegenstellen" ist nur dann sinnvoll, wenn die Gegenstelle den eigenen privaten Schlüssel selbst generiert.

Hinweis:
Beim Einrichten einer Verbindung empfehlen wir zum Schutz gegen Entschlüsselung durch zukünftige Quantencomputer den zusätzlichen Preshared-Key zu aktivieren.

Hinweis:
Unter "Entfernte Netze" kann nur eine Adresse eingetragen werden. Wenn Sie mehrere Adressen konfigurieren müssen, nutzen Sie dazu bitte eine "IP-Gruppe", die Sie im Menü "Definitionen > Protokolle" anlegen können.

Schritt 6:
Abschließend starten Sie WireGuard im Menü "System > Dienste".

SX-GATE als WireGuard-Client einrichten

Als Client baut immer das SX-GATE die Verbindung zum WireGuard-Server auf. Ein eingehender Verbindungsaufbau ist nicht vorgesehen. Die Konfiguration ist in diesem Fall deutlich einfacher, da die Konfiguration der Firewall entfällt. Wir empfehlen die Verwendung einer eigenen WireGuard-Schnittstelle für jede Verbindung.

Schritt 1:
Falls Sie von der Gegenstelle eine vollständige WireGuard-Konfiguartionsdatei inklusive privatem Schlüssel erhalten haben, entfällt auch die Schlüsselerzeugung. Andernfalls erzeugen Sie wie oben beschrieben einen neuen X25519-Schlüssel für die
zukünftige WireGuard-Schnittstelle und teilen Sie der Gegenstelle den zugehörigen öffentlichen Schlüssel mit.

Schritt 2:
Legen Sie nun im Menü "Module > Netzwerk > Schnittstellen" eine neue WireGuard-Schnittstelle an. Wählen Sie als Schnittstellentyp "Wireguard (wg)", vergeben Sie eine beliebige Zahl als "Schnittstellen-Nummer" und legen Sie eine passende "Firewall-Vertrauensstufe" fest.

Schritt 3:
Wenn Sie von der Gegenstelle eine vollständige WireGuard-Konfigurationsdatei erhalten haben, können Sie diese in der Folgemaske importieren. Wählen Sie andernfalls den zuvor generierten privaten Schlüssel aus und konfigurieren Sie die
Verbindung nach den Vorgaben der Gegenstelle.

Hinweis:
Sobald ein privater Schlüssel festgelegt wurde, ist kein Import mehr möglich.

Schritt 4:
Abschließend starten Sie WireGuard im Menü "System > Dienste".

Hinweis zu WireGuard unter Windows

Damit Benutzer ohne Administrator-Berechtigung den WireGuard-Client unter Windows starten dürfen, müssen folgende Anpassungen durchgeführt werden:

  1. reg add HKLM\Software\WireGuard /v LimitedOperatorUI /t REG_DWORD /d 1 /f
  2. Den Benutzer in die lokale Gruppe "Netzwerkkonfigurations-Operatoren" aufnehmen.