* How to add a new VPN Host ** Install wireguard to the host ** Install uncloud to the host ** Add `python manage.py vpn --hostname fqdn-of-this-host` to the crontab ** Use the CLI to configure one or more VPN Networks for this host * Example of adding a VPN host at ungleich ** Create a new dual stack alpine VM ** Add it to DNS as vpn-XXX.ungleich.ch ** Route a /40 network to its IPv6 address ** Install wireguard on it ** TODO Enable wireguard on boot ** TODO Create a new VPNPool on uncloud with *** the network address (selecting from our existing pool) *** the network size (/...) *** the vpn host that provides the network (selecting the created VM) *** the wireguard private key of the vpn host (using wg genkey) *** http command ``` http -a nicoschottelius:$(pass ungleich.ch/nico.schottelius@ungleich.ch) http://localhost:8000/admin/vpnpool/ network=2a0a:e5c1:200:: \ network_size=40 subnetwork_size=48 vpn_hostname=vpn-2a0ae5c1200.ungleich.ch wireguard_private_key=... ``` * Example http commands / REST calls ** creating a new vpn pool http -a nicoschottelius:$(pass ungleich.ch/nico.schottelius@ungleich.ch) http://localhost:8000/admin/vpnpool/ network_size=40 subnetwork_size=48 network=2a0a:e5c1:200:: vpn_hostname=vpn-2a0ae5c1200.ungleich.ch wireguard_private_key=$(wg genkey) ** Creating a new vpn network