Skip to content

Wireguard - VPN Server

Wireguard
  • Ich nutze ja gerne Wireguard um z.B. zwei Server zu verbinden, wenn man eine Verbindung braucht, die verschlüsselt sein muss. Da ja nun Wireguard sowieso schon auf dem Server läuft, kommt man schnell auf die Idee, der kann ja noch mehr 😉

    Für Wireguard gibt es eine Android App. Das muss man ja dann einfach mal probieren.

    Ich möchte hier nicht auf jedes Detail eingehen, ich habe mich an die sehr tolle Anleitung (siehe unten) gehalten. Das bekommt ihr dann auch hin. Hier trotzdem ein paar Infos, die es evt. mehr veranschaulichen.

    Server

    In meiner /etc(wireguard/wg0.conf steht für mein Handy folgendes.

    [Peer]
    PublicKey = bDTE7Kr7Uw/XyxxxxxxxxxxxxxxxzH46uHFZErWz8SGgI=
    AllowedIPs = 10.10.0.3/32
    

    Also, der Public Key und die IP-Adresse, die das Handy nutzt. Änderungen an der Config kann man mit

    wg setconf wg0 /etc/wireguard/wg0.conf
    

    neuladen. Danach sieht man mit dem Befehl wg folgendes

    peer: bDTE7Kr7UwxxxxxxxxxxxxxxxxxuHFZErWz8SGgI=
      allowed ips: 10.10.0.3/32
    

    Die Einrichtung hat funktioniert. Wenn man jetzt die Verbindung am Handy aktiviert ändert sich das.

    peer: bDTE7Kr7UxxxxxxxxxxxxxxxxxH46uHFZErWz8SGgI=
      endpoint: 37.201.194.117:58618
      allowed ips: 10.10.0.3/32
      latest handshake: 5 seconds ago
      transfer: 1.39 KiB received, 92 B sent
    

    Verbindung steht!

    Ein wenig rätsel ich noch herum, wie das mit dem DNS richtig funktioniert!? Dafür brauche ich aber wohl erst mal einen Kaffee 😉 Aber, im Moment läuft es ja 🙂

    Vorsicht

    Mit 8.8.8.8 leakt ihr Eure echte IP. Ich suche noch warum mein unbound nicht richtig funktioniert.

    Client

    Screenshot_20190727-125759.png

    Von oben

    Interface

    • Interface Namen
    • Private Key des Clienten
    • Public Key des Clienten
    • Die Adresse, die man nutzen möchte.
    • Der DNS-Server

    Peer

    • Public Key des Servers
    • Pre-shared Key (erhöht die Sicherheit) hier nicht benutzt
    • Allowed IPs
    • Endpoint - Serveradresse mit Port

    Das war es, danach sollte die Verbindung stehen. Der private Key und der public Key kann man mit dem Button Generate erzeugen!

    Mehr muss man auf dem Handy nicht machen.

    Danke für die sehr gute Erklärung!!
    Quelle: https://www.ckn.io/blog/2017/11/14/wireguard-vpn-typical-setup/

  • Das DNS-Problem ist gelöst. Da die Erklärung was umfangreicher ist, wird das heute nichts mehr. Genug getippt für heute 😁

  • Wireguard - Tunnel zur Fritz!Box 6591 Cable Part 4 (Adblocker)

    Angeheftet Wireguard
    1
    0 Stimmen
    1 Beiträge
    351 Aufrufe
    Niemand hat geantwortet
  • Wireguard - nmcli

    Wireguard
    1
    +1
    0 Stimmen
    1 Beiträge
    542 Aufrufe
    Niemand hat geantwortet
  • MariaDB - Wireguard

    MariaDB
    1
    0 Stimmen
    1 Beiträge
    273 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Kernel 5.6 und Wireguard 1.0

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    320 Aufrufe
    Niemand hat geantwortet
  • Wireguard - wg-quick

    Wireguard
    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet
  • Wireguard - Traffic routen

    Wireguard
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    FrankMF
    Wie ich bei meinem Hamburger Systemadministrator gelernt habe, geht das auch wesentlich einfacher. Dafür hat Wireguard einen netten Befehl schon parat, nennt sich wg-quick up wg0-client Dazu muss auf dem Client natürlich vorher alles konfiguriert sein. Das Verzeichnis /etc/wireguard sieht dann so aus. root@thinkpad:/etc/wireguard# ls -lha /etc/wireguard/ insgesamt 32K drwx------ 2 root root 4,0K Aug 16 08:47 . drwxr-xr-x 141 root root 12K Aug 16 08:47 .. -rw-r--r-- 1 root root 45 Aug 9 16:48 private.key -rw-r--r-- 1 root root 45 Aug 9 16:48 psk.key -rw-r--r-- 1 root root 45 Aug 9 16:48 public.key -rw-r--r-- 1 root root 275 Aug 16 08:47 wg0-client.conf Die drei Schlüssel sind also vorhanden, der Server ist auch entsprechend vorbereitet. Dann brauchen wir auf dem Clienten noch die wg0-client.conf mit folgendem Inhalt. [Interface] Address = 10.10.0.4/32 PrivateKey = oM9jWxxxxxxxxxxxxxxxxxxxxxxxxxxxtS4vW8= ListenPort = 50xxx DNS = 10.10.0.2 [Peer] PublicKey = fGg7MxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxTPRqqzU= Endpoint = 136.xxx.xxx.xxx:60xxx AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 21 Im ersten Teil [Interface] wird die Schnittstelle auf dem Clienten konfiguriert. Die Adresse des Clienten Privatekey, findet man in /etc/wireguard/private.key Den Port für die Wireguard Kommunikation, frei wählbar. Der DNS-Server, ist hier mein Wireguard-Server, der einen DNS Dienst bereit hält. Im zweiten Teil [Peer] wird die Verbindung zum Server konfiguriert. PublicKey, der PublicKey des Servers. Endpoint, ist die IP-Adresse des Servers. AllowedIPs 0.0.0./0 wird den gesamten IPv4 Verkehr über den Tunnel routen. Dient dazu , die Verbindung aufrecht zu erhalten? Mit wg-quick up wg0-client baut er nun die Verbindung auf. root@thinkpad:/etc/wireguard# wg-quick up wg0-client [#] ip link add wg0-client type wireguard [#] wg setconf wg0-client /dev/fd/63 [#] ip -4 address add 10.10.0.4/32 dev wg0-client [#] ip link set mtu 1420 up dev wg0-client [#] resolvconf -a tun.wg0-client -m 0 -x [#] wg set wg0-client fwmark 51xxx [#] ip -4 route add 0.0.0.0/0 dev wg0-client table 51xxx [#] ip -4 rule add not fwmark 51xxx table 51xxx [#] ip -4 rule add table main suppress_prefixlength 0 root@thinkpad:/etc/wireguard# Damit steht der Tunnel 9: wg0-client: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1000 link/none inet 10.10.0.4/32 scope global wg0-client valid_lft forever preferred_lft forever Ausschalten root@thinkpad:/etc/wireguard# wg-quick down wg0-client [#] ip -4 rule delete table 51xxx [#] ip -4 rule delete table main suppress_prefixlength 0 [#] ip link delete dev wg0-client [#] resolvconf -d tun.wg0-client Auf meinem Debian 10 Buster ging das erst so nicht, weil ein Paket fehlt. root@thinkpad:/etc/wireguard# wg-quick up wg0-client [#] ip link add wg0-client type wireguard [#] wg setconf wg0-client /dev/fd/63 [#] ip -4 address add 10.10.0.4/32 dev wg0-client [#] ip link set mtu 1420 up dev wg0-client [#] resolvconf -a wg0-client -m 0 -x /usr/bin/wg-quick: line 31: resolvconf: command not found [#] ip link delete dev wg0-client Wireguard ist so nett und schreibt alles rein Eine Installation von resolcconf löst das Problem. root@thinkpad:/etc/wireguard# apt install resolvconf Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Die folgenden NEUEN Pakete werden installiert: resolvconf 0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert. Es müssen 74,2 kB an Archiven heruntergeladen werden. Nach dieser Operation werden 196 kB Plattenplatz zusätzlich benutzt. [gekürzt] Nun kann man den Tunnel mit zwei einfachen Befehlen auf- und wieder abbauen. Als nächstes kommt dann noch die IPv6 Erweiterung, weil im Moment IPv6 Traffic am Tunnel vorbei fliessen würde, wenn man eine öffentliche IPv6 Adresse zugewiesen bekommen hätte. Aber, das muss ich mir noch ein wenig erklären lassen
  • Wireguard - Failed to parse netdev kind, ignoring: wireguard

    Wireguard
    1
    0 Stimmen
    1 Beiträge
    371 Aufrufe
    Niemand hat geantwortet
  • Wireguard - Links

    Angeheftet Wireguard
    1
    0 Stimmen
    1 Beiträge
    296 Aufrufe
    Niemand hat geantwortet