Benutzer-Werkzeuge

Webseiten-Werkzeuge


wireguard

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
wireguard [2020/11/25 20:53] – angelegt matthiaswireguard [2021/01/18 15:48] (aktuell) – [Script] matthias
Zeile 1: Zeile 1:
 ====== WireGuard ====== ====== WireGuard ======
 +
 +===== Debian 10 Setup =====
 +
 +Backports hinzufügen:
 +
 +  echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list
 +
 +Installieren:
 +
 +  apt update
 +  apt install wireguard
 +
 +IP-Forwardgin ativieren:
 +
 +  echo 1 > /proc/sys/net/ipv4/ip_forward
 +
 +Dauerhaft in der /etc/sysctl.conf den Key "net.ipv4.ip_forward" auf 1 setzen.
 +
 +Basiskonfiguration erzeugen, Port und Netz ggf. anpassen:
 +
 +  cd /etc/wireguard
 +  
 +  wg genkey | tee privatekey | wg pubkey > publickey
 +  
 +  cat << EOF > wg0.conf
 +  [Interface]
 +  Address = 10.1.1.1/24
 +  ListenPort = 1500
 +  PrivateKey = $(cat privatekey)
 +  EOF
 +
 +Service aktivieren:
 +
 +  systemctl enable wg-quick@wg0
 +  systemctl start wg-quick@wg0
 +
 +An der Firewall den UDP-Port (1500) zum Wireguard-Server weiterleiten.
 +
  
 ===== Script zum genieren von Benutzer Configs auf dem Server ===== ===== Script zum genieren von Benutzer Configs auf dem Server =====
 +==== Konfigurationsdatei anlegen ====
 +
 +/etc/wireguard/wggen.conf
 +
 +<code bash | wggen.conf>
 +cat << EOF > /etc/wireguard/wggen.conf
 +WGNET="10.1.1."               # Wirguard Transfernetz
 +CLIENTNET = "192.168.1.0/24"  # zu routenedes Netze
 +SERVER="my.wireguar.com"      # externer Name oder IP
 +
 +SERVERKEY=$(cat /etc/wireguard/publickey)
 +EOF
 +</code>
 +
 +==== Script ====
 +/usr/local/bin/wggen
  
 <code bash | wggen> <code bash | wggen>
 #!/bin/bash #!/bin/bash
- 
-NET="10.1.1." 
-SERVERKEY="PUBLIC KEY DES SERVERS" 
-SERVER="YOUR.WIREGUARD.SERVER" 
  
 P=/etc/wireguard P=/etc/wireguard
 +
 +source $P/wggen.conf
 +
 C=$P/clients C=$P/clients
 CC=$C/$1.conf CC=$C/$1.conf
Zeile 31: Zeile 84:
 echo "[Interface]" >> $CC echo "[Interface]" >> $CC
 echo "PrivateKey = $(cat $PR)" >> $CC echo "PrivateKey = $(cat $PR)" >> $CC
-echo "Address = $NET$IP/24" >> $CC+echo "Address = $WGNET$IP/24" >> $CC
 echo >> $CC echo >> $CC
 echo "[Peer]" >> $CC echo "[Peer]" >> $CC
 echo "PublicKey = $SERVERKEY" >> $CC echo "PublicKey = $SERVERKEY" >> $CC
-echo "AllowedIPs = $(NET)0/24" >> $CC+echo "AllowedIPs = $CLIENTNET" >> $CC
 echo "Endpoint = $SERVER:1500" >> $CC echo "Endpoint = $SERVER:1500" >> $CC
  
Zeile 44: Zeile 97:
 echo "[Peer]" >> $WC echo "[Peer]" >> $WC
 echo "PublicKey = $(cat $PU)" >> $WC echo "PublicKey = $(cat $PU)" >> $WC
-echo "AllowedIPs = $NET$IP/32" >> $WC+echo "AllowedIPs = $WGNET$IP/32" >> $WC
  
 echo $NEXT > $P/next echo $NEXT > $P/next
 +
 +systemctl restart wg-quick@wg0
 </code> </code>
  
 +  chmod +x /usr/local/bin/wggen
 +
 +==== Client anlegen ====
 +
 +  wggen clienname
 +
 +Die Client-Config findet sich dann unter: /etc/wireguard/clients/clienname.conf und kann unter Windows direkt importiert werden.
  
-===== Admin GUI für normale Benutzer =====+===== Windows Admin GUI für normale Benutzer =====
 Um das WireGuard GUI für nicht Administratoren zugänglich zu machen muss der jeweilige Benutzer in der lokalen Grupp "Netwerkkonfigurations-Operatoren" sein und der folgende Registry-Key muss gesetzt werden: Um das WireGuard GUI für nicht Administratoren zugänglich zu machen muss der jeweilige Benutzer in der lokalen Grupp "Netwerkkonfigurations-Operatoren" sein und der folgende Registry-Key muss gesetzt werden:
  
wireguard.1606337636.txt.gz · Zuletzt geändert: 2020/11/25 20:53 von matthias