Kurzanleitung Debian wireguard auf Server einrichten (wireguard-go)
Vorwort
Da man auf dem vs2-free aktuell das Standard wireguard nicht nutzen kann (nicht im Kernel aktiv), habe ich mir mal angesehen wie man trotzdem wireguard nutzen kann. In meiner Anleitung habe ich 2 vs2-free Hosts verwendet. Man kann natürlich zuhause auch das normale wireguard verwenden. Ob das ganze auch mit einem Heimrouter geht muss ich erstmal noch testen. Ich habe aktuell keine Fritzbox rumliegen
.
Aufbau
Host A vs2-free mit gebuchter und eingerichteter IPv4. Betriebssystem Debian 12 (Bookworm) - 64Bit - minimal v4.
Host B vs2-cloud mit gebuchter und eingerichteter IPv4. Betriebssystem Debian 12 (Bookworm) - 64Bit - minimal v4.
wireguard-go (Version 0.0.20220316, die aktuelle ging nicht da Debian noch kein golang 1.20 hat)
https://github.com/WireGuard/wireguard-goVorbereitung
Debian Pakete updaten und Neustarten wenn nötig.
apt update
apt upgrade
reboot
Einrichtung von Host A (hat am Ende die IP 10.0.0.1 über wireguard)
- golang und wireguard-tools installieren
apt install golang wireguard-tools
- wireguard-go herunterladen und ausführbar machen
wget -O /usr/bin/wireguard-go https://12-u.vs2-free-users.de/mirror/wireguard-go/debian12/wireguard-go
chmod +x /usr/bin/wireguard-go
- wireguard keys erstellen (Privat und Public)
mkdir -p /etc/wireguard/
cd /etc/wireguard/
wg genkey | tee privatekey | wg pubkey > publickey
- wireguard config erstellen (wg0)
vim /etc/wireguard/wg0.conf
Inhalt
[Interface]
PrivateKey = <Zuvor erstellter privater Schlüssel>
ListenPort = 51820
[Peer]
PublicKey = <Public Key von Host B>
AllowedIPs = 10.0.0.2/32
Endpoint = <Offizielle IP Host B>:51820
- Script zum starten von erstellen
vim /etc/wireguard/wg0-up.bash
Inhalt
#!/bin/bash
sleep 60
wireguard-go wg0
wg setconf wg0 /etc/wireguard/wg0.conf
ip address add 10.0.0.1/24 dev wg0
ip link set wg0 up
- Script ausführbar machen
chmod +x /etc/wireguard/wg0-up.bash
- Autostart über cron erstellen
echo '@reboot root /etc/wireguard/wg0-up.bash' >> /etc/crontab
- Neustarten (danach ist alle konfiguriert)
reboot
Einrichtung von Host B (hat am Ende die IP 10.0.0.2 über wireguard)
- golang und wireguard-tools installieren
apt install golang wireguard-tools
- wireguard-go herunterladen und ausführbar machen
wget -O /usr/bin/wireguard-go https://12-u.vs2-free-users.de/mirror/wireguard-go/debian12/wireguard-go
chmod +x /usr/bin/wireguard-go
- wireguard keys erstellen (Privat und Public)
mkdir -p /etc/wireguard/
cd /etc/wireguard/
wg genkey | tee privatekey | wg pubkey > publickey
- wireguard config erstellen (wg0)
vim /etc/wireguard/wg0.conf
Inhalt
[Interface]
PrivateKey = <Zuvor erstellter privater Schlüssel>
ListenPort = 51820
[Peer]
PublicKey = <Public Key von Host A>
AllowedIPs = 10.0.0.1/32
Endpoint = <Offizielle IP Host A>:51820
- Script zum starten von erstellen
vim /etc/wireguard/wg0-up.bash
Inhalt
#!/bin/bash
sleep 60
wireguard-go wg0
wg setconf wg0 /etc/wireguard/wg0.conf
ip address add 10.0.0.2/24 dev wg0
ip link set wg0 up
- Script ausführbar machen
chmod +x /etc/wireguard/wg0-up.bash
- Autostart über cron erstellen
echo '@reboot root /etc/wireguard/wg0-up.bash' >> /etc/crontab
- Neustarten (danach ist alle konfiguriert)
reboot