Wireguard einrichten: Unterschied zwischen den Versionen

Aus XccesS Wiki
Zur Navigation springen Zur Suche springen
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 41: Zeile 41:
wg-quick up wg0
wg-quick up wg0


====OPNSense als Client====
 
Instanz erzeugen
=====Wireguard Client=====
Peer erzeugen
<syntaxhighlight lang="bash" line="1">
apt update && apt install wireguard resolvconf -y
cd /etc/wireguard
umask 077
wg genkey | tee privatekey | wg pubkey > publickey
cat publickey
</syntaxhighlight>
Auf 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).
<syntaxhighlight lang="bash" line="1">
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/24
</syntaxhighlight>
Wireguard starten und testen:
<syntaxhighlight lang="bash" line="1">
systemctl enable wg-quick@wg0 && systemctl start wg-quick@wg0 && ping 10.0.0.1
</syntaxhighlight>


=== Update ===
=== Update ===

Aktuelle Version vom 29. Dezember 2025, 13:39 Uhr

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.conf

Inhalt:

[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/32
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p && sysctl -w net.ipv4.ip_forward=1

wg-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 publickey

Auf 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/24

Wireguard starten und testen:

systemctl enable wg-quick@wg0 && systemctl start wg-quick@wg0 && ping 10.0.0.1

Update

Test

Fehlerbehebung

Starten/Stoppen funktioniert nicht

Lösung 1
auszufüllen

Codeschnipsel

Nützliche Links

Codeschnipsel

Nützliche Links