Wireguard Tutorial - Übersicht
1. LXC Server einrichten
lxc.cgroup.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net dev/net none bind,create=dir
Als erstes fügen wir in der Proxmox LXC Server Konfig folgende Einträge hinzu. Pfad: /etc/pve/lxc/Container-ID.conf
Bitte beachtet das mit Container-ID gemeint ist die LXC Container ID einzutragen die Ihr aktuell angelegt habt.
WICHTIG: Wenn Ihr keinen LXC Server nutzt so braucht Ihr Abschnitt 1. nicht anwenden.
2. Wireguard Server installieren mit Skript
nano wireguard_manager.sh
#!/bin/bash
# Blog: www.server-verstehen.de
# Free Scripts: www.rawscripts.eu
clear
clear
echo "
###################################
# Wireguard Manager 1.0 #
# CodeJackr #
###################################
# 1. Wireguard installieren #
###################################
# 2. Autostart einrichten #
# 3. Autostart entfernen #
###################################
# 4. Script verlassen #
###################################";
read -p "Geben Sie eine Zahl ein: " options
if [ $options = "1" ]; then
# Installiert die Pakete und downloadet von der Offizielen Seite das Wireguard Setup
apt update
apt full-upgrade -y
apt autoclean -y
apt autoremove -y
apt-get install sudo -y
apt install wget
wget git.io/wireguard -O wireguard-install.sh && bash wireguard-install.sh
clear
clear
read -p "Installation beendet. [Press ENTER]: "
fi
if [ $options = "2" ]; then
clear
read -p "Pfad der WireGuard Config: " confwire
cp $confwire /etc/wireguard/wg0.conf
sleep 2
sudo systemctl enable wg-quick@wg0.service
sudo systemctl daemon-reload
sleep 1
read -p "Einrichtung abgeschlossen! Soll die Verbindung nun hergestellt werden?: Ja/Nein" connect
if [ $connect = "Ja" ] || [ $connect = "ja" ] || [ $connect = "Y" ] || [ $connect = "y" ]; then
sudo systemctl start wg-quick@wg0
sleep 1
read -p "Verbindung wurde hergestellt! [Press ENTER]: "
fi
if [ $connect = "Nein" ] || [ $connect = "nein" ] || [ $connect = "N" ] || [ $connect = "n" ]; then
clear
read -p "Einrichtung abgeschlossen! [Press ENTER]: "
fi
fi
if [ $options = "3" ]; then
clear
sudo systemctl disable wg-quick@wg0.service
sudo rm -i /etc/systemd/system/wg-quick@wg0*
sudo systemctl daemon-reload
sudo systemctl reset-failed
read -p "Autostart wurde entfernt! Soll die Verbindung jetzt getrennt werden? (Enter) - Abbruch mit STRG+C"
sleep 3
sudo systemctl stop wg-quick@wg0
read -p "Fertig! [Press ENTER]: "
fi
if [ $options = "4" ]; then
exit
fi
chmod 777 wireguard_manager.sh
./wireguard_manager.sh
Mit diesem Skript können wir im Hand um drehen einen Wireguard Server aufsetzen und mit der Autostart Funktion auf dem Client Server die Verbindung durchgehend Online halten. Es ist wirklich sehr einfach 🙂
3. Wireguard Client einrichten inkl. Autostart
apt-get install wireguard -y; apt-get install resolvconf -y
Mit diesen zwei Befehlen installieren wir Wireguard und eine Zusatz installation für Wireguard. Wie man schon im Video sehen konnte sind mir doch zwei kleine Fehler aufgetreten wodurch man erst diese zwei Befehle ausführen sollte, bevor man den Autostart mittels oberen Skript einrichtet.
4. Portweiterleitung einrichten mit IPtables
iptables -t nat -A PREROUTING -d ÖffentlicheIP -p udp -m udp --dport PortA:PortB -j DNAT --to-destination 10.7.0.2:PortA-PortB
iptables -t nat -A POSTROUTING -d ÖffentlicheIP -p udp -m udp --dport PortA:PortB -j SNAT --to-source 10.7.0.2
iptables -t nat -A PREROUTING -d ÖffentlicheIP -p tcp -m tcp --dport PortA:PortB -j DNAT --to-destination 10.7.0.2:PortA-PortB
iptables -t nat -A POSTROUTING -d ÖffentlicheIP -p tcp -m tcp --dport PortA:PortB -j SNAT --to-source 10.7.0.2
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
ÖffentlicheIP = Die IPv4 Adresse die den Traffic weiterleiten soll zum Wireguard Client.
PortA = Von Port
PortB = Bis Port
10.7.0.2 = Ist eine Beispiel Lokale Wireguard VPN zugewiesene IP-Adresse. Bitte also abändern falls abweichend.
eth0 = Bitte abändern falls von deinem Haupt Netzwerk Device abweichend ist.
3 Antworten
Hi. Leider finde ich es nicht mehr, wo ich Wireguard eingerichtet habe.
Ich habe einen vServer zur testzwecken bei Bero-Host geholt und da einen Wireguard-Server aufgebaut mit weiteren IP-Adressen.
Jedoch habe ich das Problem bei Windows, dass die Seiten sehr langsam laden und wollte daher fragen, ob es noch wo eine Beschreibung geht, wie man die Verbindung beschleunigt?
Außerdem habe ich auch einen Client mit Linux aufgebaut, der ebenfalls zuhause rumcampt, und alles befolgt.
Jedoch erreiche ich den Server via öffentliche IP nicht. Welche Möglichkeiten gibt es noch?
Würde mich über eine Rückmeldung freuen.
Danke! 🙂
Ach ja, die Tutorials sind echt nice, wo ich auch noch mehr lernen kann. 😀
Vielen Dank dafür.
Hi 🙂
MTU = 1420
Trage das mal dort ein, in allen Configs auch serverseitig.
2. Ist das IPv4 und ggf. IPv6 Forwarding aktiv? In: /etc/sysctl.conf?
Es sollte auskommentiert sein und mit dem Befehl sysctl -p übernommen werden.
Und danke für dein Feedback 🙂
Falls ich dir evtl. weiterhelfen darf, hier mein Discord Nick: rawnetworks
Vielleicht können wir uns diesbezüglich auch zusammen setzen im Call 😉
Liebe Grüße Jan und einen schönen Abend!
Hi 🙂
Danke für die Tipps. Muss ich nachher mir mal anschauen, sobald ich Zeit finde. 🙂
Habe dir bereits eine Freundschaftsanfrage geschickt und dir geschrieben. 🙂