{ config, ... }: { # todo generator here clanCore.facts.services.wireguard = { secret."wireguard.private" = { }; generator.script = ""; }; # Enable WireGuard networking.wg-quick.interfaces = { # Hub and Spoke Setup # https://www.procustodibus.com/blog/2020/11/wireguard-hub-and-spoke-config/ wg0 = { address = [ "10.100.0.7/32" ]; listenPort = 51820; # to match firewall allowedUDPPorts (without this wg uses random port numbers) privateKeyFile = config.clanCore.facts.services.wireguard.secret."wireguard.private".path; mtu = 1280; peers = [ { # robi # todo : use public facts here publicKey = "uWR93xJe5oEbX3DsAYpOS9CuSg1VmXEQxJzdlJpe3DU="; allowedIPs = [ "10.100.0.1/24" ]; #endpoint = "ingolf-wagner.de:51820"; endpoint = "95.216.66.212:51820"; } ]; }; }; }