WireGuard ist ein modernes, leistungsstarkes VPN-Protokoll, das seit Version 5.6 direkt in den Linux-Kernel integriert ist. Es bietet eine deutlich einfachere Konfiguration, eine kleinere Angriffsflaeche und ueberlegene Leistung im Vergleich zu traditionellen VPN-Loesungen wie OpenVPN und IPsec.
Installation
sudo apt update
sudo apt install -y wireguard wireguard-tools
Server-Schluessel Generieren
wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key
sudo chmod 600 /etc/wireguard/server_private.key
Server Konfigurieren
Erstellen Sie /etc/wireguard/wg0.conf:
[Interface]
PrivateKey = <SERVER_PRIVATE_KEY>
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
IP-Weiterleitung Aktivieren
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.d/99-wireguard.conf
sudo sysctl -p /etc/sysctl.d/99-wireguard.conf
Firewall Konfigurieren
sudo ufw allow 51820/udp
sudo ufw allow OpenSSH
sudo ufw enable
Client Hinzufuegen
wg genkey | tee client1_private.key | wg pubkey > client1_public.key
Fuegen Sie zum /etc/wireguard/wg0.conf hinzu:
[Peer]
PublicKey = <CLIENT1_PUBLIC_KEY>
AllowedIPs = 10.0.0.2/32
Dienst Starten
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
sudo wg show
Client-Konfiguration
[Interface]
PrivateKey = <CLIENT1_PRIVATE_KEY>
Address = 10.0.0.2/24
DNS = 1.1.1.1, 8.8.8.8
[Peer]
PublicKey = <SERVER_PUBLIC_KEY>
Endpoint = <SERVER_IP>:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
QR-Code fuer Mobile Geraete
sudo apt install -y qrencode
qrencode -t ansiutf8 < /tmp/client1-mobile.conf
Fazit
WireGuard bietet eine schnelle, moderne und sichere VPN-Loesung, die bemerkenswert einfach einzurichten ist. Mit seiner Kernel-Integration, minimaler Konfiguration und modernster Verschluesselung ist es eine ausgezeichnete Wahl sowohl fuer den persoenlichen Gebrauch als auch fuer Unternehmenseinsaetze.