Wireguard Tutorial - Übersicht

1. LXC Server einrichten

nano /etc/pve/lxc/Container-ID.conf
				
					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.

Werbung: Günstige und schnelle Server gibt es hier.

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.

In /etc/resolv.conf bitte den Gelb makierten Nameserver entfernen.

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.

Einrichtung Abgeschlossen!

3 Antworten

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

    1. 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!

      1. 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. 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert