nixos-config/modules/system/services/server/wireguard/server/default.nix

29 lines
751 B
Nix

{ config, lib, ... }:
{
config = lib.mkIf config.services.wireguard.server.enable {
networking = {
firewall.allowedUDPPorts = [ 51820 ];
nat = {
enable = true;
internalInterfaces = [ "wgs" ];
};
wireguard.interfaces.wgs = {
ips = [ "10.100.0.1/24" ];
listenPort = 51820;
privateKey = config.secrets.wg.serverKey;
peers = [
{ # NixOS Config Key
publicKey = "OKUH/h6YSURI4vgeTZKQD15QsqaygdbTn1mAWzQp9S0=";
allowedIPs = [ "10.100.0.16/28" ];
}
{ # Pixel 9
publicKey = "dPCtjm67adMZCnyL1O2L+uUOk0RbjA9T/tht1r+qcE4=";
allowedIPs = [ "10.100.0.2/32" ];
}
];
};
};
};
}