Wireguard einrichten
Zur Navigation springen
Zur Suche springen
Beschreibung
Download
Installation
apt install wireguard -y
Konfiguration
Server
Keys erzeugen
wg genkey | sudo tee /etc/wireguard/priv.key
chmod go= /etc/wireguard/priv.key
cat /etc/wireguard/priv.key | wg pubkey | sudo tee >> /etc/wireguard/pub.key
nano /etc/wireguard/wg0.confInhalt:
[Interface]
Address = 10.0.5.1/24
ListenPort = 51820
# Use your own private key, from /etc/wireguard/privatekey
PrivateKey = XXX
#Routen einstellen damit Clients kommunizieren können
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
# Client 1
PublicKey = XXX
# VPN client's IP address in the VPN
AllowedIPs = 10.0.5.2/32echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p && sysctl -w net.ipv4.ip_forward=1wg-quick up wg0
Wireguard Client
apt update && apt install wireguard resolvconf -y
cd /etc/wireguard
umask 077
wg genkey | tee privatekey | wg pubkey > publickey
cat publickeyAuf der OPNSense Firewall jetzt den Peer erzeugen:
1. Gehe zu VPN -> WireGuard -> Peers.
2. Erstelle einen neuen Peer für den ersten VPS (z.B. "VPS_195"):
* Enabled: Haken setzen.
* Public Key: Hier den Inhalt der publickey Datei vom VPS eintragen.
* Allowed IPs: 10.0.0.2/32 (WICHTIG: Hier nur die eine IP des VPS eintragen, mit /32. Das sagt der OPNsense: "Pakete für 10.0.0.2 schicke ich an diesen Tunnel").
* Keepalive: 25 (Sinnvoll, um die Verbindung durch NAT/Firewalls offen zu halten).
cat privatekey
nano /etc/wireguard/wg0.conf
Beispiel für VPS 1 (IP 10.0.0.2):
[Interface]
Address = 10.0.0.2/24
PrivateKey = <HIER_DEN_PRIVATE_KEY_VOM_VPS_EINFÜGEN>
# Optional: Wenn der VPS auch DNS von Zuhause nutzen soll
# DNS = 192.168.1.1
[Peer]
PublicKey = <HIER_DEN_PUBLIC_KEY_DER_OPNSENSE_EINFÜGEN>
# Der Endpoint muss per IPv6 erreichbar sein
Endpoint = xsarts.de:51820
# Welche IPs sollen durch den Tunnel gehen?
# 10.0.0.0/24 erlaubt Zugriff auf das Tunnel-Netzwerk.
# Wenn der VPS auch dein LAN (192.168.1.x) erreichen soll, füge es hinzu:
AllowedIPs = 10.0.0.0/24, 192.168.1.0/24
PersistentKeepalive = 25
#WoW Portweiterleitung ins HomeLab
# ---------- PostUp ----------
PostUp = sysctl -w net.ipv4.ip_forward=1
PostUp = iptables -t nat -A PREROUTING -p tcp --dport 8085 -j DNAT --to-destination 192.168.1.17:8085
PostUp = iptables -t nat -A PREROUTING -p tcp --dport 3724 -j DNAT --to-destination 192.168.1.17:3724
PostUp = iptables -t nat -A POSTROUTING -o %i -j MASQUERADE
PostUp = iptables -A FORWARD -i eth0 -o %i -p tcp -m multiport --dports 8085,3724 -m conntrack --ctstate NEW -j ACCEPT
PostUp = iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# ---------- PostDown ----------
PostDown = iptables -t nat -D PREROUTING -p tcp --dport 8085 -j DNAT --to-destination 192.168.1.17:8085
PostDown = iptables -t nat -D PREROUTING -p tcp --dport 3724 -j DNAT --to-destination 192.168.1.17:3724
PostDown = iptables -t nat -D POSTROUTING -o %i -j MASQUERADE
PostDown = iptables -D FORWARD -i eth0 -o %i -p tcp -m multiport --dports 8085,3724 -m conntrack --ctstate NEW -j ACCEPT
PostDown = iptables -D FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
PostDown = sysctl -w net.ipv4.ip_forward=0
[Peer]
PublicKey =
Endpoint = xsarts.de:51820
AllowedIPs = 192.168.1.0/24Wireguard starten und testen:
systemctl enable wg-quick@wg0 && systemctl start wg-quick@wg0 && ping 10.0.0.1Update
Test
Fehlerbehebung
Starten/Stoppen funktioniert nicht
Lösung 1
auszufüllen