WireGuard auf UniFi / Ubiquiti

Wireguard Auf Unifi / Ubiquiti

Installieren und konfigurieren Wireguard VPN-Server auf Unifi (Ubiquiti) ist es ganz einfach… mit der offiziellen Version von Wireguard (wireguard-vyatta-ubnt). In diesem Tutorial erklären wir, wie es geht… Die Länge dieses Artikels mag wichtig erscheinen, lassen Sie sich nicht beeindrucken, in 10 Minuten haben Sie alles verstanden!

unifi wireguard - WireGuard auf UniFi / Ubiquiti

WireGuard auf UniFi-Hardware und EdgeRouter

Es gibt viele Websites, die sich mit WireGuard und UniFi beschäftigen. Leider gibt es viele (alle in Englisch), aber unvollständig. Sie müssen Seite für Seite, Kommentar für Kommentar … suchen, um die richtige Konfiguration zu finden. Wir werden uns nicht anlügen, wir haben uns die Haare ausgerissen. Wir haben uns jedoch entschlossen, die Dinge für Sie zu vereinfachen … ohne in der Erklärung geizig zu sein.

Warum WireGuard?

Zunächst einmal ist WireGuard VPN leicht und robust (gesichert). Es ist Open Source, kostenlos und nativ IPv4- und IPv6-kompatibel. Es ist derzeit das am schnellsten zu verbindende und zu übertragende VPN. Er ist bis zu 3-mal schneller als OpenVPN. Schließlich können Sie Ihre Verbindung (WiFi / 4G) ändern, ohne Ihre VPN-Verbindung zu verlieren. Sobald die WireGuard-Verbindung hergestellt ist, können Sie mit einer Ende-zu-Ende-verschlüsselten Verbindung (mit der IP-Adresse Ihres Hauses oder Geschäfts) im Internet surfen und natürlich auf Ihr Netzwerk zugreifen: Server, NAS, Drucker, Hausautomation. ..

Vorwort UniFi / Ubiquiti

Der erste Schritt besteht darin, das Produkt zu identifizieren, auf dem Sie Wireguard installieren. Tatsächlich funktioniert dieser Leitfaden für viele Produkte Ubiquiti EdgeRouter und UniFi-Sicherheits-Gateway. Hier verwenden wir a UGW3 mit 3 verschiedenen Netzwerken und 3 verschiedenen IP-Adressbereichen. Für WireGuard verwenden wir einen 4. IP-Adressbereich für WireGuard: 10.2.1.xxx.

Schritt 1: Finden Sie das richtige Paket

Da dieses Tutorial mit Streitigkeiten arbeitet, müssen Sie aufpassen, dass Sie nichts installieren. Um die richtige Datei zum Wiederherstellen zu finden, gehen Sie zu diese Seite. Dies ist die WireGuard-Version 1.0.20210606 (Stand 06.06.2021). Für unser UGW3, wir werden die Datei verwenden ugw3-v1-v1.0.20210606-v1.0.20210424.deb.

Schritt 2: WireGuard installieren

Da wir nun die Datei für unsere Hardware kennen, müssen wir sie installieren. Einloggen SSH auf Ihrem UniFi-Gerät (nicht der Controller). Wir geben folgenden Befehl ein (an Ihre Ausrüstung anzupassen):

curl -OL https://github.com/WireGuard/wireguard-vyatta-ubnt/releases/download/1.0.20210606-1/ugw3-v1-v1.0.20210606-v1.0.20210424.deb

Tipp: Geh auf dieser Seite und kopiere den Link für dein Ubiquiti / UniFi-Gerät

Der Download startet und dauert nur wenige Sekunden. Es muss gesagt werden, dass die .deb-Datei nur 166 KB groß ist.Dann müssen Sie die Installation durch Eingabe des folgenden Befehls durchführen (an Ihre Ausrüstung anzupassen):

sudo dpkg -i ugw3-v1-v1.0.20210606-v1.0.20210424.deb

Auch hier dauert der Vorgang nicht länger als 10 Sekunden.

Wireguard ugw3 deb - WireGuard auf UniFi / Ubiquiti

Schritt 2: Öffentlicher Schlüssel und privater Schlüssel

Als Nächstes generieren wir die Verschlüsselungsschlüssel für VPN-Verbindungen und -Austausch. Geben Sie die folgenden Befehle ein (nacheinander):

cd /config/auth
umask 077
mkdir wireguard
cd wireguard
wg genkey > wg_private.key
wg pubkey < wg_private.key > wg_public.key

Hier haben wir einen Ordner erstellt Drahtschutz in / config / auth. Dann generieren wir einen privaten Schlüssel wg_private.key und einen öffentlichen Schlüssel wg_public.key (im neu erstellten Ordner). Wir werden den öffentlichen Schlüssel abrufen, da wir ihn für unsere Konfiguration benötigen. Typ:

cat /config/auth/wireguard/wg_public.key

Kopieren Sie die Zeichenfolge (öffentlicher Schlüssel) beispielsweise in einen Notizblock. Wir werden es später brauchen. Hier nehmen wir an, dass der öffentliche Schlüssel wie folgt ist KneipeUSGcachemFXNueHsmDBybv / wxzOSoDRW0SMz9iSo = Erfinde keinen Schlüssel, nimm den, der in der Datei enthalten ist wg_public.key !

Wir fügen es dann in die Konfigurationsdatei (config.gateway.json). Wir könnten auf der Kommandozeile bleiben, aber das hilft nicht. Wenn Sie Ihre USG neu starten (oder eine Bereitstellung vornehmen): Sie verlieren die Konfiguration. Mit der Konfigurationsdatei kein Problem, das VPN auch nach einem Neustart oder einem Update aktiv zu halten.

Schritt 3: WireGuard-Clients und Peers

Auf der UniFi-Seite ist es noch nicht vorbei, aber wir werden zu Ihrem Smartphone oder Computer (oder jedem anderen Gerät) übergehen. Sie finden die Software direkt auf der Website offizieller WireGuard (Windows, macOS, Linux …) und Android / ios in den üblichen Geschäften.

WireGuard iOS / Android

Wenn wir die Anwendung starten WireGuard, müssen wir einen Tunnel hinzufügen. Wir werden eine Konfiguration von Grund auf neu erstellen. Zunächst müssen Sie einen Namen eingeben, um Ihre Verbindung zu identifizieren. Standardmäßig sollte Ihnen die Schnittstelle einen öffentlichen Schlüssel und einen privaten Schlüssel für Ihre Verbindung zur Verfügung stellen. Wenn nicht, drücken Sie die Taste. Generieren Sie ein Schlüsselpaar (Symbol mit 2 Pfeilen auf Android). Kopieren Sie den generierten öffentlichen Schlüssel hierher und fügen Sie ihn dort in Ihren Merkzettel ein. Hier für das Tutorial gehen wir davon aus, dass es einen Wert hat KneipeTELEFONcachemFX05sOYBvTNj2D1Klx3B3Y06ExP0s = Machen Sie es sich nicht aus, kopieren Sie den von der Anwendung generierten Schlüssel.

Auf Feldebene Adressen, geben Sie die IP-Adresse ein, die Ihr Gerät haben wird. In unserem Fall ist es 10.2.1.2 (IP-Adressen werden manuell verwaltet). Wir belassen den Standard-Listening-Port als MTU. Für DNS-Server werden wir zum Beispiel 1.1.1.1, 1.0.0.1 oder andere angeben. Wenn Sie Adguard oder PiHole haben, geben Sie die IP-Adresse hier ein.

iphone Wireguard - WireGuard auf UniFi / Ubiquiti

Unter Android ist es möglich, Anwendungen auszuschließen, die WireGuard VPN nicht verwenden können. Standardmäßig können Sie es auf ALLE ANWENDUNGEN belassen.

Wir klicken auf Peer hinzufügen und wir werden die setzen auf dem UniFi . generierter öffentlicher Schlüssel (USG). Denken Sie daran, in unserem Beispiel ist es diejenige, die es wert ist KneipeUSGcachemFXNueHsmDBybv / wxzOSoDRW0SMz9iSo =

In Endpunkt, geben Sie die öffentliche IP-Adresse Ihrer Box (von Ihrem ISP bereitgestellt) ein, um WireGuard zu erreichen. Vergessen Sie nicht, den Port hinzuzufügen, den Sie verwenden möchten (standardmäßig müssen Sie 51820 eingeben). Geben Sie vor Autorisierte IP-Adresse 0.0.0.0/0, :: / 0 ein. Wenn Sie diesen Wert eingeben, stellen Sie sicher, dass Sie das VPN-Subnetz verlassen können, um beispielsweise zu Ihrem NAS zu gehen.

Es bleibt nur die Taste zu drücken Speichern (Diskette oben rechts unter Android). Es kann eine Meldung erscheinen, die Sie darüber informiert, dass eine VPN-Konfiguration hinzugefügt werden soll. Diese Aktion muss natürlich autorisiert werden. Starten Sie die VPN-Verbindung nicht, sie wird nicht funktionieren.

WireGuard Windows / macOS

Wie bei einem Smartphone ist die Konfiguration im Handbuch recht einfach. Ob unter Windows, macOS oder Linux, es dauert nur wenige Minuten. Sie müssen auch einen Satz von Schlüsseln (privat und öffentlich) generieren und vor allem den UniFi-Schlüssel zur Erinnerung hinzufügen KneipeUSGcachemFXNueHsmDBybv / wxzOSoDRW0SMz9iSo =

PC-Mac-Cachem-Verbindung - WireGuard auf UniFi / Ubiquiti

Berühren Sie vor allem nicht den von der Anwendung generierten PrivateKey (privater Schlüssel). Kopieren Sie den vom System generierten öffentlichen Schlüssel und fügen Sie ihn für später in einen Notizblock ein. Hier im Beispiel ist der öffentliche Schlüssel pubPC-042cachemFX07sWy9vBNj2Z1H44D03NurEFdOa =

Schritt 4: Konfiguration abschließen

WireGuard funktioniert auf Ihrem Ubiquiti / UniFi-Gerät. Die Einstellungen wurden auf Ihrem ersten Gerät vorgenommen. Jetzt legen wir eine Konfigurationsdatei auf dem UniFi Controller ab. Wenn Sie keinen UniFi-Controller haben, können Sie folge diesem Link 😉

Hier ist eine Konfigurationsdatei mit einer leicht zu erlernenden Konfiguration config.gateway.json. Im ersten Teil der Datei, Abschnitt Firewall, öffnen wir standardmäßig den UDP WireGuard 5180-Port (WAN_LOCAL). Außerdem identifizieren wir das von WireGuard VPN-Clients (10.2.1.0/24) verwendete Subnetz durch die Firewall. Im Bereich Schnittstellen unserer Datei deklarieren wir das WireGuard-Subnetz (10.2.1.0/24). Für WireGuard weisen wir unserem Server (USG) die Adresse 10.2.1.1 zu.

Hier der Inhalt der Datei:

{
    "firewall": {
        "name": {
            "WAN_LOCAL": {
                "rule": {
                    "20": {
                        "action": "accept",
                        "description": "Autorise WireGuard",
                        "destination": {
                            "port": "51820"
                        },
                        "protocol": "udp"
                    }
                }
            }
        },
        "group": {
            "network-group": {
                "remote_user_vpn_network": {
                    "description": "Sous-reseau pour les utilisateurs VPN",
                    "network": [
                        "10.2.1.0/24"
                    ]
                }
            }
        }
    },
    "interfaces": {
        "wireguard": {
            "wg0": {
                "description": "VPN pour les clients distants",
                "address": [
                    "10.2.1.1/24"
                ],
                "firewall": {
                    "in": {
                        "name": "LAN_IN"
                    },
                    "local": {
                        "name": "LAN_LOCAL"
                    },
                    "out": {
                        "name": "LAN_OUT"
                    }
                },
                "listen-port": "51820",
                "mtu": "1500",
                "peer": [{
                    "pubPHONEcachemFX05sOYBvTNj2D1Klx3B3Y06ExP0s=": {
                        "allowed-ips": [
                            "10.2.1.2/32"
                        ],
                        "persistent-keepalive": 25
                    }
                },
                {
                    "pubPC-042cachemFX07sWy9vBNj2Z1H44D03NurEFdOa=": {
                        "allowed-ips": [
                            "10.2.1.5/32"
                        ],
                        "persistent-keepalive": 25
                    }
                }],
                "private-key": "/config/auth/wireguard/wg_private.key",
                "route-allowed-ips": "true"
            }
        }
    }
}

Wir machen Sie auf das Teil aufmerksam Peer der Datei. Dort müssen Sie für einige Änderungen einen Editor wie Notepad oder Textedit durchlaufen. Hier legen Sie fest, welche Geräte sich mit Ihrem WireGuard VPN verbinden. Geben Sie zunächst den von Ihrer mobilen oder PC-Anwendung generierten öffentlichen Schlüssel an. In unserem Beispiel (in dieser Datei gezeigt) ist es pubPHONEcachemFX05sOYBvTNj2D1Klx3B3Y06ExP0s = Nächste erlaubt-ips Sie werden die IP-Adresse melden 10.2.1.2 (für das Telefon) wie in den Anwendungen auf dem Telefon. Zur Erinnerung: IP-Adressen können nicht manuell verwaltet werden.

Wir haben auch einen weiteren Client mit dem zweiten Gerät (PC) hinzugefügt, das den öffentlichen Schlüssel hat pubPC-042cachemFX07sWy9vBNj2Z1H44D03NurEFdOa = und Adresse 10.2.1.5.

Standardmäßig geben wir an route-allowed-ips Zu wahr. Dadurch können angeschlossene Geräte beispielsweise einen Computer oder NAS in einem anderen Subnetz erreichen. Seine Verwaltung kann erfolgen Peer (Kunde) und wird bewertet mit falsch es zu verbieten. Auf dem Smartphone / PC ersetzen wir die IP-Adresse 0.0.0.0/0, :: / 0 beispielsweise durch die Adresse der USG 10.2.1.1 oder lassen sie leer.

Achten Sie darauf, die [] {}, damit Ihre Datei richtig funktioniert. Sie speichern die Datei …

Schritt 5: Bereitstellen der Konfiguration

Jetzt kopierst du deine Datei config.gateway.json in / Daten / Sites / Site_ID Ihres UniFi-Controllers (Cloud Key, Docker oder andere). Wenn Sie keinen Ordner Sites / Site_ID haben, folgen Sie diesem Tutorial: Problem with the site_ID. Melden Sie sich dann bei der UniFi Network Controller-Verwaltungsoberfläche an und gehen Sie zum Menü AUSRÜSTUNG und klicken Sie auf Ihr Gateway, in unserem Fall dasUGW3. Auf der Klappe rechts oben auf das gekerbte Rad gehen, dann nach unten gehen DAS GERÄT VERWALTEN zum Schluss klickst du auf den Button Liefern.

Unifi-Bereitstellung erzwingen - WireGuard auf UniFi / Ubiquiti

Warten Sie 1 bis 2 Minuten… es ist fertig.

Tipp: Um sicherzustellen, dass die Datei eingebunden wurde, gehen Sie zum Menü Einstellungen> Routing & Firewall dann gehe auf die Registerkarte Firewall> IPv4> LOKALES WAN. Sie sollten das Vorhandensein des Eintrags 20 bemerken, der Autorisiert WireGuard.

autorisiert Wireguard - WireGuard auf UniFi / Ubiquiti

Absturz bei der Versorgung

Wenn die Datei einen Fehler enthält config.gateway.json Ihr Netzwerk könnte abstürzen. Löschen Sie in diesem Fall die Konfigurationsdatei und warten Sie ein bis zwei Minuten. Alles normalisiert sich automatisch.

Aktualisieren und Deinstallieren von WireGuard UniFi

Beachten Sie, dass es natürlich möglich ist, das WireGuard UniFi-Paket zu aktualisieren… aber auch zu deaktivieren und zu deinstallieren. Gehen Sie dazu auf die Offizielle WireGuard-Seite. Denken Sie daran, die Konfigurationsdatei auf dem Controller zu löschen (oder umzubenennen).

Da haben Sie es, dieses Tutorial ist jetzt vorbei. Wenn Sie alle Schritte befolgt und die öffentlichen Schlüssel (USG und Geräte) zum richtigen Zeitpunkt kopiert und eingefügt haben, gibt es kein Problem. Sie profitieren von der Kraft von WireGuard-VPN auf Ihrer UniFi / Ubiquiti-Installation. WireGuard ist sehr leicht, schnell und verbraucht auch im Netzbetrieb sehr wenig Strom UGW3 : 1 bis 3% der CPU und 0% des RAM. Wie immer sind Kommentare offen. Stellen Sie also gerne Fragen und teilen Sie Ihre Erfahrungen mit WireGuard.

.