Wechseln zu:Navigation, Suche
Wiki







































































Site-to-Site VPN (S2S) mit WireGuard konfigurieren
Letzte Anpassung zur Version: 12.7.1
Neu:
notempty
Dieser Artikel bezieht sich auf eine Resellerpreview

12.6.2 12.5.1 12.2.5

Aufruf: UTM-IP:Port oder UTM-URL:Port
Port wie unter Netzwerk / Servereinstellungen / Webserver konfiguriert
Default-Port: 11115
z.B.: https://utm.ttt-point.de:11115
Default: https://192.168.175.1:11115
VPN WireGuard








Site-to-Site VPN (S2S) mit WireGuard konfigurieren
Letzte Anpassung zur Version: 12.6.2
Neu:
Zuletzt aktualisiert: 
    05.2024
notempty
Dieser Artikel bezieht sich auf eine Resellerpreview

12.5.1 12.2.5

Aufruf: UTM-IP:Port oder UTM-URL:Port
Port wie unter Netzwerk / Servereinstellungen / Webserver konfiguriert
Default-Port: 11115
z.B.: https://utm.ttt-point.de:11115
Default: https://192.168.175.1:11115
VPN WireGuard

notempty
Neu ab: v12.6

Schlüsselmanagement

Beim Anlegen einer WireGuard-Verbindung existieren mehrere Möglichkeiten um die notwendigen Schlüsselwerte zu erzeugen und diese zu verwalten. Jede dieser Optionen hat ihre Vor- und Nachteile.
Bei zwei Optionen wird der benötigte private, bzw. öffentliche Schlüsselwert direkt im Einrichtungsassistenten der WireGuard-Verbindung angelegt.
Bei der dritten Option werden vorhandene Schlüssel vom Typ x25519 benötigt. Zusätzliche Informationen gibt es im Wiki-Artikel Schlüssel.

Schlüssel hinzufügen
Schlüsselverwaltung öffnen unter Authentifizierung Schlüssel  Schaltfläche Schlüssel hinzufügen den Dialog öffnen
Beschriftung Wert Beschreibung Schlüssel hinzufügen UTMbenutzer@firewall.name.fqdnAuthentifizierungSchlüssel UTM v12.6 Schlüssel x25519-hinzufügen.png
Name: x25519-device Eindeutigen Namen vergeben.
notempty
Der Schlüsselname darf nicht den Namen einer (zukünftigen) Schnittstelle, wie wg0 oder wg1, besitzen.
Typ: X25519 Als Typ X25519 wählen
Dialog mit der Schaltfläche
Speichern und schließen
schließen.
Schlüssel exportieren
Öffentlicher Teil (PEM) Privater Teil (PEM) Exportiert den Schlüssel im .pem-Format Schlüssel UTMbenutzer@firewall.name.fqdnAuthentifizierung UTM v12.6 Schlüssel.pngSchlüsselverwaltung

Exportziel: Zwischenablage
ED25519/X25519 Export Format: PEM
Öffentlicher Teil (PEM) Privater Teil (PEM)
Kopiert den Schlüssel im .pem-Format in die Zwischenablage

Schlüssel importieren
Schlüssel importieren Öffnet den Dialog zum Schlüssel-Import Schlüssel importieren UTMbenutzer@firewall.name.fqdnAuthentifizierungSchlüssel Upload UTM v12.6 Schlüssel importieren copy.png
Quelle: Datei Importiert einen Schlüssel aus einer .pem-Datei
Quelle: Zwischenablage Importiert einen Schlüssel aus der Zwischenablage.
Hier muss ein Name für den Schlüssel vergeben werden.

WireGuard Verbindung erstellen

  • Eine WireGuard Verbindung stellt den Zugang für ggf. mehrere Peers zur Verfügung
  • Jede Verbindung wird mit einem eigenen Schlüsselpaar gesichert
  • Alle Peers einer Verbindung verwenden dessen öffentlichen Schlüssel
  • Jeder Peer benötigt ein eigenes Schlüsselpaar, um sich zu authentifizieren
    Zusätzlich sollte jeder Peer mit einem starken PSK abgesichert werden

Gegeben sei folgende Konfiguration:

Standort A Standort B Transfernetz
FQDN a.vpn.anyideas.de b.vpn.anyideas.de
Lokales Netz IPv4 10.1.0.0/16 10.2.0.0/16 10.0.1.0/24
Lokale Tunnel IPv4 10.0.1.1/24 10.0.1.2/24
Lokales Netz IPv6 fd00:a:0:0::0/64 fd00:b:0:0::0/64 fd00:0:0:0::0/64
Lokale Tunnel IPv6 fd00:0:0:0::1/64 fd00:0:0:0::2/64
UTM Roadwarrior Transfernetz
FQDN a.vpn.anyideas.de
Lokales Netz IPv4 10.1.0.0/16 10.0.1.0/24
Lokale Tunnel IPv4 10.0.1.1/24 10.0.1.201/24
Lokales Netz IPv6 fd00:a:0:0::0/64 fd00:0:0:0::0/64
Lokale Tunnel IPv6 fd00:0:0:0::1/64 fd00:0:0:0::C9/64
Konfiguration an Standort A

Assistenten starten mit der Schaltfläche WireGuard Verbindung hinzufügen

Schritt 1 - Konfiguration importieren
Standort A Schritt 1 - Konfiguration importieren
Beschriftung Wert Beschreibung WireGuard Verbindung hinzufügen UTMbenutzer@firewall.name.fqdnVPNWireGuard UTM v12.7.1 WireGuard Wizard Schritt 1.pngWireGuard Assistent - Schritt 1
Datei: notempty
Neu ab v12.6.0
Datei auswählen Falls eine WireGuard-Server-Konfiguration schon existiert, kann die Server-Konfiguration als Datei hochgeladen werden.
Die entsprechenden Einstellungen werden in den folgenden Schritten in den jeweiligen Elementen automatisch eingetragen.
  • Falls mehrere Peers vorhanden sind, wird lediglich der erste Peer übernommen.
  • Konfiguration: notempty
    Neu ab v12.6.0
        Falls eine WireGuard-Server-Konfiguration schon existiert, kann die Server-Konfiguration in dieses Konfigurationsfeld kopiert werden.
    Die entsprechenden Einstellungen werden in den folgenden Schritten in den jeweiligen Elementen automatisch eingetragen.
  • Falls mehrere Peers vorhanden sind, wird bloß der erste Peer übernommen.
  • [Interface] Address = 10.0.0.1/24 Address = C0FF::EEEE/64 ListenPort = 51824 PrivateKey = interfacePrivateKeyaaaaaaaaaaaaaaaaaaaaaaaa= [Peer] AllowedIPs = 10.0.0.2/32, 10.0.0.3/32 AllowedIPs = 10.0.0.4/32 Endpoint = 1.2.3.4:51825 PersistentKeepalive = 30 PresharedKey = peerPresharedKeyaaaaaaaaaaaaaaaaaaaaaaaaaaa= PublicKey = peerPublicKeyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa=

    Schritt 2 - Schnittstelle
    Standort A Schritt 2 - Schnittstelle
    Schnittstelle: wg0 Name der Schnittstelle, die für die Verbindung angelegt wird (automatische Vorgabe, kann nicht geändert werden) UTM v12.6 VPN Wireguard Step2.png
    WireGuard Assistent - Schritt 2
    Name: wg_server Eindeutiger Name für die Verbindung
    IPv4 Adresse: 10.0.1.1/24 IPv4 Adresse für die Netzwerkschnittstelle des Transfernetzes an Standort A
    Dadurch wird die Netz-IP des Transfernetzes bestimmt (hier: 10.0.1.1/24)
    IPv6 Adresse: fd00:0:0:0::1/64 IPv6 Adresse für die Netzwerkschnittstelle des Transfernetzes an Standort A (optional)
    Dadurch wird die Netz-IP des Transfernetzes bestimmt (hier: fd00:0:0:0::1/64)
    Listening Port: 51820Link= Default-Port für WireGuard Verbindungen
    Privater Schlüssel:
    Automatisch generieren Ein privater Schlüsselwert wird automatisch generiert.
  • Dieser Schlüsselwert wird nicht angezeigt!
  • Dieser Schlüssel wird nicht in Authentifizierung Schlüssel hinzugefügt!
  • Schlüsselwert direkt eingeben     Der Schlüsselwert wird direkt eingegeben.
  • Dieser Schlüssel wird nicht in Authentifizierung Schlüssel hinzugefügt!

  • notempty
    Der Schlüsselwert kann aus Sicherheitsgründen später nicht mehr ausgelesen werden.

    notempty
    Wurde in Schritt 1 - Konfiguration importieren eine Datei importiert oder die Konfiguration eingegeben, so wird diese Option automatisch ausgewählt und der private Schlüsselwert aus der Konfigurationsdatei ausgelesen und hier eingetragen.
    Anzeigen
    Verbergen
    Zeigt / Verbirgt den Schlüsselwert
    Generieren Der Schlüsselwert wird generiert
    Aus Schlüsseln wählen x25519_a.vpn Privater Schlüssel im Format x25519.
    Es sind nur solche Schlüssel auswählbar, die auch über einen privaten Schlüsselteil verfügen.
    Schlüssel hinzufügen Liegt noch kein lokaler Schlüssel im x25519-Format vor, kann mit dieser Schaltfläche ein solcher erzeugt werden.
    Servernetzwerke global freigeben:     Netzwerke auf (lokaler) Serverseite, auf die die WireGuard-Tunnel der Peers prinzipiell zugreifen können.notempty
    Für den tatsächlichen Zugriff werden zusätzlich Netzwerkobjekte und Portfilter-Regeln benötigt!
    Schritt 3 - Peer
    Standort A Schritt 3 - Peer
    Peer-Typ: PeerAD-Benutzer Lokaler Benutzer Der Typ des Peers
    S2S-Verbindungen sollten immer mit dem Typ Peer eingerichtet werden
    Anleitung für Schritt 3 - Peer mit AD Anbindung
    Anleitung für Schritt 3 - Peer mit lokalen Benutzern
    UTM v12.7.1 WireGuard S2S Wizard Schritt 3.png
    WireGuard Assistent - Schritt 3
    Name: peer-b Bezeichnung der Gegenstelle
    Peernetzwerke freigeben: »10.2.0.0/16 »fd00:b:0:0::/64 Lokale Netz-IPs der Gegenstelle, die auf den WireGuard-Tunnel zugreifen können.
  • notempty
    Für den tatsächlichen Zugriff werden zusätzlich Netzwerkobjekte und Portfilter-Regeln benötigt!
    Endpunkt: b.vpn.anyideas.de Öffentliche IP oder im öffentlichen DNS auflösbarer FQDN der Gegenstelle
  • Wird nicht benötigt, wenn ausschließlich die Gegenstelle die Verbindung initiieren soll
  • Endpunkt Port:
    51820Link= Listening-Port der Gegenstelle
    Öffentlicher Schlüssel:
    Schlüsselwert direkt eingeben     Öffentlicher Schlüsselwert der Gegenstelle.
  • Dieser Schlüssel wird nicht in Authentifizierung Schlüssel hinzugefügt!

  • notempty
    Wurde in Schritt 1 - Konfiguration importieren eine Datei importiert oder die Konfiguration eingegeben, so wird diese Option automatisch ausgewählt und der private Schlüsselwert aus der Konfigurationsdatei ausgelesen und hier eingetragen.
    Aus privatem Schlüsselwert berechnen     Berechnet den Schlüsselwert aus dem eingegebenen privaten Schlüsselwert aus Schritt 2 - Schnittstelle
  • Dieser Schlüssel wird nicht in Authentifizierung Schlüssel hinzugefügt!

  • notempty
    Der Schlüsselwert kann aus Sicherheitsgründen später nicht mehr ausgelesen werden.
    Anzeigen
    Verbergen
    Zeigt / Verbirgt den Schlüsselwert
    Generieren Der Schlüsselwert wird generiert
    In die Zwischenablage kopieren Kopiert den Schlüsselwert in die Zwischenablage
    Aus Schlüsseln wählen x25519 b vpn pub pem Öffentlicher Schlüssel der Gegenstelle im Format x25519
    Es sind nur solche Schlüssel auswählbar, die über keinen privaten Schlüssel verfügen.
  • Öffentlicher Schlüssel vorhanden, aber nicht auswählbar?
    Es lassen sich nur Schlüssel auswählen, für die auf diesem Interface noch keine Verbindung besteht. Der PublicKey muss innerhalb einer Verbindung eindeutig sein, da das Routing eingehender Pakete darüber durchgeführt wird.
    Soll für einen Peer der gleiche PublicKey z.B. für ein Fallback verwendet werden, muss dafür eine weitere WireGuard Verbindung angelegt werden.
  • Schlüssel hinzufügen Liegt der öffentliche Schlüssel der Gegenstelle noch nicht vor, kann mit dieser Schaltfläche der Import der Schlüsselverwaltung geöffnet werden.
    Export und Import der Schlüssel ist auch über die Zwischenablage möglich
    Pre-Shared Key (optional): ••••••••••••••••••••••••••• Pre-Shared Key zur weiteren Absicherung der Verbindung
    Anzeigen
    Verbergen
    Zeigt / Verbirgt den Schlüsselwert
    Generieren Erzeugt einen sehr starken Pre-Shared Key notempty
    Der Pre-Shared Key muss an beiden Enden der VPN-Verbindung identisch sein! Er darf nur auf einer Seite generiert werden und muss dann auf der Gegenstelle eingefügt werden.
    In die Zwischenablage kopieren Kopiert den PSK in die Zwischenablage
    Keepalive: Aus Sendet regelmäßig ein Signal. Dadurch werden Verbindungen auf NAT-Routern offen gehalten. Ein Die Aktivierung wird empfohlen.
    25Link= Sekunden Abstand in Sekunden, in dem ein Signal gesendet wird
    Schritt 3 - Peer AD-Benutzer
    Standort A Schritt 3 - Peer AD-Benutzer
    Als Vorgabe sind Werte eingetragen, die unter Authentifizierung AD/LDAP Authentifizierung  Bereich Erweitert konfiguriert wurden.
    Beschriftung Wert Beschreibung UTM v12.7.1 WireGuard S2E Wizard Schritt 3 AD.png
    WireGuard Assistent - Schritt 3 mit AD Benutzern als Peers
    WG-AD-Attribute.png
    Werte im AD
    Peer-Typ: PeerAD-BenutzerLokaler Benutzer AD-Benutzer als Peer
    WireGuard-Attribute (IPv4): extensionAttribute1 Attribut Name im AD, der als Wert die Tunnel-IPv4 für den RW enthält
    WireGuard-Attribute (IPv6): extensionAttribute2 Attribut Name im AD, der als Wert die Tunnel-IPv6 für den RW enthält
    WireGuard-Public-Key-Attribute: extensionAttribute3 Der Public-Key des Users. Der User muss über den private-Key verfügen.
    Öffne AD/LDAP Dialog: Aus Bei Aktivierung wird im Anschluss der Dialog unter Authentifizierung AD/LDAP Authentifizierung aufgerufen.
    Fertig Beendet den Assistenten
    Schritt 3 - Peer Lokaler Benutzer
    Standort A Schritt 3 - Peer Lokaler Benutzer
    notempty
    Neu ab v12.7.1
    Beschriftung Wert Beschreibung UTM v12.7.1 WireGuard S2E Wizard Schritt 3 lokal.png
    WireGuard Assistent - Schritt 3 mit lokalem Benutzer als Peers
    Peer-Typ: PeerAD-Benutzer Lokaler Benutzer Lokaler Benutzer als Peer
    Öffne Benutzerdialog: Aus Öffnet die Benutzereinstellungen nach beenden des Assistenten
    Fertig Beendet den Assistenten
    Anschließend kann unter VPN WireGuard  Schaltfläche Lokalen Benutzer als Peer hinzufügen durch bearbeiten des gewünschten Users, WireGuard für diesen konfiguriert werden. Genauere Informationen sind hier zu finden.
    Schritt 4 - Erweiterte Einstellungen
    Standort A Schritt 4 - Erweiterte Einstellungen
    Routen zu den Netzwerken des Peers erstellen: Ja Aktivierung Ja wird empfohlen.
    Es werden Routen zu den Netzwerken / Hosts erstellt, die in Schritt 3 unter Peernetzwerke freigeben eingetragen wurden, mit der Schnittstelle als Gateway, die in Schritt 2 angezeigt wurde.
    UTM v12.6 VPN Wireguard Step4.png
    WireGuard Assistent - Schritt 4



































    Ausgangslage

    Es kann gewünscht sein, die Routen für VPN-Verbindungen Nur für interne Prüfzwecke erst dann zu setzen, wenn die Verbindung wirklich steht.

    1. Dadurch wird verhindert das Pakete in das Internet geroutet und vom Conntrack gespeichert werden und so einen korrekten Aufbau der Verbindung verhindern.
    2. Dies kann von Vorteil sein wenn zum Beispiel VoIP durch den Tunnel gehen soll.
    3. Load Balancing über eine zweite Firewall wird deutlich vereinfacht, wenn nur die UTM eine Route bekommt, bei der der Tunnel auch tatsächlich aufgebaut wird.

    CLI-Befehl

    Verbindung per SSH oder über Menü Extras CLI : route set id <ID> flags BLACKHOLE_IF_OFFLINE

    Z.B.: route set id "2" flags BLACKHOLE_IF_OFFLINE
    Dieser Befehl verwirft Pakete zu diesem Ziel wenn die Route nicht vorhanden ist.
    Bei SSL-VPN oder bei Wireguard zum Beispiel wenn der Tunnel nicht steht.
    Zuvor kann mit route get die korrekte Verbindungs-ID ermittelt werden

    Zonen erstellen: Ja Erzeugt eine neue Zone für die WireGuard Schnittstelle
    Zonenname: wireguard-wg0 Name für die Zone der WireGuard-Verbindung
    Netzwerkobjekte für den Peer erstellen: Ja
    »wg-net-peer_rw»wg-net6-peer_rw
    Erzeugt bei Aktivierung Ja Netzwerkobjekte (IPv4 und ggf. IPv6) für die Gegenstelle. Der automatische Vorschlag kann auch geändert werden.
    Netzwerkgruppe: wg0-network Netzwerkgruppe der Verbindung wird angezeigt
    Regeln zwischen dem Peer und internal-networks erstellen: Nein Erzeugt bei Aktivierung Ja autogenerierte Regeln, die die Inbetriebnahme erleichtern. notempty
    Diese Regeln müssen unbedingt durch eigene Regeln, die nur notwendige Dienste mit notwendigen Netzwerkobjekten erlauben, ersetzt werden.
    notempty
    Diese eigenen Regeln müssen immer mit dem WireGuard-Interface und dem internen Netzwerk erstellt werden, auch wenn der WireGuard-Tunnel zu einem DMZ-Netzwerk führt.
    Fertig Beendet den Assistenten


    Konfiguration an Standort B

    Assistenten starten mit der Schaltfläche WireGuard Verbindung hinzufügen

    Schritt 1 - Konfiguration importieren
    Standort B Schritt 1 - Konfiguration importieren
    Name:     UTM v12.4 VPN Wireguard B Step1.png
    WireGuard Assistent - Schritt 1
    IPv4 Adresse: 10.0.1.1/24 IPv4 Adresse für die Netzwerkschnittstelle des Transfernetzes an Standort B
    Hier muss eine IP aus dem Netz gewählt werden, das am Standort A festgelegt wurde (hier: 10.0.1.2/24)
    IPv6 Adresse: fd00:0:0:0::1/64 IPv6 Adresse für die Netzwerkschnittstelle des Transfernetzes an Standort A (optional)
    Hier muss eine IP aus dem Netz gewählt werden, das am Standort A festgelegt wurde(hier: fd00:0:0:0::2/64)
    Listening Port: 51820Link= Default-Port für WireGuard Verbindungen
    Privater Schlüssel: x25519_a.vpn Privater Schlüssel im Format x25519.
    Es sind nur solche Schlüssel auswählbar, die auch über einen privaten Schlüsselteil verfügen.
    Der öffentliche Schlüssel wurde bereits in Standort A benötigt, daher sollte es auch bereits einen privaten Schlüssel geben. Ggf. kann der hier auch über die Zwischenablage importiert werden.
    Schritt 2 - Schnittstelle
    Standort B Schritt 2 - Schnittstelle
    Name: peer-a Bezeichnung der Gegenstelle (Hier: Standort A) UTM v12.6 VPN Wireguard B Step2.png
    WireGuard Assistent - Schritt 2
    Erlaubte IPs: »10.2.0.0/16»fd00:b:0:0::/64
  • Site to Site - S2S
    Lokale Netz IP der Gegenstelle (Hier: Standort A)
  • Endpunkt: a.vpn.anyideas.de:51280 Öffentliche IP oder im öffentlichen DNS auflösbarer FQDN der Gegenstelle (Hier: Standort A)
  • Wird nicht benötigt, wenn ausschließlich die Gegenstelle (Hier: Standort A) die Verbindung initiieren soll
  • Öffentlicher Schlüssel: x25519_a_vpn Öffentlicher Schlüssel der Gegenstelle (Hier: Standort A) im Format x25519.
    Es sind nur solche Schlüssel auswählbar, die über keinen privaten Schlüssel verfügen.
    Liegt der öffentliche Schlüssel der Gegenstelle noch nicht vor, kann mit dieser Schaltfläche der Import der Schlüsselverwaltung geöffnet werden.
    Pre-Shared Key (optional): …8DmBioPyPNqZ7Rk= Pre-Shared Key zur weiteren Absicherung der Verbindung
    Erzeugt einen sehr starken Pre-Shared Key
  • Der Pre-Shared Key muss an beiden Enden der VPN-Verbindung identisch sein! Er darf nur auf einer Seite generiert werden und muss dann auf der Gegenstelle eingefügt werden.
  • Keepalive: Aus Sendet regelmäßig ein Signal. Dadurch werden Verbindungen auf NAT-Routern offen gehalten. Ein Die Aktivierung wird empfohlen.
    Schritt 3 - Peer
    Standort B Schritt 3 - Peer
    Zonen erstellen: Nein Erzeugt eine neue Zone für die WireGuard Schnittstelle UTM v12.7.1 WireGuard S2S Wizard Schritt 3b.png
    WireGuard Assistent - Schritt 3
    Netzwerkobjekte für den Peer erstellen: Nein
    »net-wg-peer-a
    Erzeugt bei Aktivierung Ja Netzwerkobjekte (IPv4 und ggf. IPv6) für die Gegenstelle. Der automatische Vorschlag kann auch geändert werden.
    Regeln zwischen dem Peer und internal-networks erstellen: Ja Erzeugt bei Aktivierung Ja autogenerierte Regeln, die die Inbetriebnahme erleichtern.
  • Diese Regeln müssen unbedingt durch eigene Regeln, die nur notwendige Dienste mit notwendigen Netzwerkobjekten erlauben, ersetzt werden.