WireGuard mit ifupdown
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Dieser Text wurde aus dem Hauptartikel WireGuard[7] ausgelagert, weil das Programm ifupdown[1] zur Konfiguration des Netzwerks bei Ubuntu nicht mehr zum Standard gehört.
Start per ifupdown¶
Diese Methode kann bei Ubuntu 16.04 angewendet werden. Bei späteren Ubuntu-Versionen muss das Paket ifupdown installiert werden und die Konfiguration des Netzwerks auf dieses Programm umgestellt werde.
Man missbraucht in der Datei /etc/network/interfaces[1] die Schnittstelle lo zur Erzeugung einer WireGuard-Schnittstelle.
Man kann in der Konfiguration für die Schnittstelle VPN einfach wg-quick aufrufen[2][3], welches dann die Konfigurationsdatei /etc/wireguard/VPN.conf verwendet:
iface lo inet loopback up ip link add VPN type wireguard || true auto lo # WireGuard für Außenstelle Bobby iface VPN inet6 manual pre-up ip link del $IFACE type wireguard || true up wg-quick up $IFACE down wg-quick down $IFACE post-down ip link add $IFACE type wireguard #auto VPN
(Die Verwendung vondelin der up-Sequenz undaddin der down-Sequenz ist kein Schreibfehler! wg-quick erzeugt und vernichtet die Schnittstelle. Die bereits angelegte muss daher vor dem Hochfahren wieder gelöscht werden und nach dem Löschen beim Herunterfahren neu angelegt werden, damit man sie wieder starten kann.)
Alternativ kann man auch in der Datei /etc/network/interfaces selbst die Schnittstelle konfigurieren; dabei muss man die unter erstmaliger Konfiguration beschriebenen Befehle verwenden. Bei dieser Methode benötigt man keine Konfigurationsdatei für wg-quick im Verzeichnis /etc/wireguard/:
iface lo inet loopback up ip link add VPN type wireguard || true auto lo # WireGuard für Außenstelle Bobby iface VPN inet6 static PEER Z/fkUwCqxYCzgEaOU/Y8X9a0je82oT7gKO86skxaaAY= address fd00:5747:7767:2000::/64 up ip -6 route add fd00:5747:7767:1000::/64 dev $IFACE up wg set $IFACE listen-port 35784 # up wg set $IFACE private-key /etc/wireguard/$HOSTNAME.secret # funktioniert nicht, s.u.! up wg set $IFACE private-key /etc/wireguard/SECRET up wg set $IFACE peer $IF_PEER endpoint adele.example.net:51499 up wg set $IFACE peer $IF_PEER allowed-ips fd00:5747:7767:1000::/64 #auto VPN
Als PEER gibt man den öffentlichen Schlüssel der Gegenstelle an. Man kann in /etc/network/interfaces den variablen Dateinamen $HOSTNAME.secret nicht verwenden, weil die Systemshell dash die Variable HOSTNAME nicht kennt.
Die WireGuard-Schnittstelle mit diesen Befehlen[2] starten und stoppen:
sudo ifup VPN
sudo ifdown VPN
Für den automatischen Start aktiviert man die Anweisung auto VPN.