Installation
sudo apt update && sudo apt install wireguard
Server Konfiguration
wg genkey | python3 -c 'serverConfig = """[Interface] PrivateKey = {0} Address = 10.0.0.1/24 ListenPort = 51820 PostUp = sysctl net.ipv4.ip_forward=1 PostUp = iptables -A FORWARD -i net0 -o %i -j ACCEPT PostUp = iptables -A FORWARD -i %i -j ACCEPT PostUp = iptables -t nat -A POSTROUTING -o net0 -j MASQUERADE PostDown = sysctl net.ipv4.ip_forward=0 PostDown = iptables -D FORWARD -i net0 -o %i -j ACCEPT PostDown = iptables -D FORWARD -i %i -j ACCEPT PostDown = iptables -t nat -D POSTROUTING -o net0 -j MASQUERADE """ privateKey = input() print(serverConfig.format(privateKey), end="")' | sudo tee /etc/wireguard/wg0.conf
sudo systemctl start wg-quick@wg0 && sudo systemctl enable wg-quick@wg0
Client Konfiguration
mkdir ~/wg-clients && chmod go= ~/wg-clients
(wg genkey && sudo grep '\[Peer\]' /etc/wireguard/wg0.conf | wc -l) | python3 -c 'clientConfig = """[Interface] PrivateKey = {0} Address = 10.0.0.{1}/24 DNS = 8.8.8.8,8.8.4.4 """ privateKey = input() peersCount = int(input()) print(clientConfig.format(privateKey, peersCount+2), end="")' | tee ~/wg-clients/ip13.conf
Erzeuge den privaten Schlüssel und erhöhe die die Anzahl der bereits konfigurierten Peers am Server um 2 für die IP-Adresse:
für .1 haben wir den Server selbst!
(grep PrivateKey ~/wg-clients/ip13.conf | awk '{print $3}' | wg pubkey && grep Address ~/wg-clients/ip13.conf | awk '{print $3}' | sed 's/\/.*//') | python3 -c 'clientPeer = """ [Peer] PublicKey = {0} AllowedIPs = {1}/32 """ publicKey = input() privateIp = input() print(clientPeer.format(publicKey, privateIp), end="")' | sudo tee -a /etc/wireguard/wg0.conf
Erzeuge den öffentlichen Schlüssel des Clients und hole Dir die IP-Adresse aus der Konfigurationsdatei und konfiguriere für diesen Client den Peer-Abschnitt in der Server-Konfiguration.
sudo systemctl stop wg-quick@wg0 && sudo systemctl start wg-quick@wg0
(sudo grep PrivateKey /etc/wireguard/wg0.conf | awk '{print $3}' | wg pubkey && ip -4 -br address show dev net0 | awk '{print $3}' | sed 's/\/.*//') | python3 -c 'serverPeer = """ [Peer] PublicKey = {0} Endpoint = {1}:51820 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 25 """ publicKey = input() publicIp = input() print(serverPeer.format(publicKey, publicIp), end="")' | tee -a ~/wg-clients/ip13.conf
Erzeuge den öffentlichen Schlüssel des Servers und hole Dir die Serveradresse aus dem Betriebssystem und konfiguriere den Peer-Abschnitt in der Client-Konfiguration.
Den fett gekennzeichneten Dateinamen anpassen!
Installation QRCode-Tool
sudo apt install qrencode
iPhone/Android-Client
qrencode -t ansiutf8 < ~/wg-clients/ip13.conf
Schreibe eine Antwort