2024-11-16 23:08:16 +05:30
|
|
|
{ config, ... }:
|
2024-12-07 02:28:11 +05:30
|
|
|
let wireguard-peers = import ../../shared/wireguard-peers.nix { }; in {
|
2024-07-07 00:24:05 +05:30
|
|
|
sops.secrets = {
|
|
|
|
"wireguard/rico2/pk" = {
|
|
|
|
mode = "400";
|
2024-12-07 02:28:11 +05:30
|
|
|
owner = config.users.users.systemd-network.name;
|
|
|
|
group = config.users.users.systemd-network.group;
|
2024-07-07 00:24:05 +05:30
|
|
|
};
|
2024-11-16 19:00:06 +05:30
|
|
|
};
|
|
|
|
networking = {
|
|
|
|
firewall = {
|
|
|
|
allowedUDPPorts = [ 51832 ];
|
|
|
|
trustedInterfaces = [ "Homelab" ];
|
|
|
|
};
|
2024-12-07 02:28:11 +05:30
|
|
|
};
|
|
|
|
systemd.network = {
|
|
|
|
netdevs."99-Homelab" = {
|
|
|
|
netdevConfig = {
|
|
|
|
Name = "Homelab";
|
|
|
|
Kind = "wireguard";
|
|
|
|
};
|
|
|
|
wireguardConfig = {
|
|
|
|
ListenPort = 51832;
|
|
|
|
PrivateKeyFile = config.sops.secrets."wireguard/rico2/pk".path;
|
|
|
|
};
|
|
|
|
wireguardPeers = with wireguard-peers; [
|
|
|
|
(bifrost // { PersistentKeepalive = 20; })
|
|
|
|
rico0
|
|
|
|
rico1
|
|
|
|
wynne
|
|
|
|
layne
|
|
|
|
];
|
|
|
|
};
|
|
|
|
networks."99-Homelab" = {
|
|
|
|
matchConfig = {
|
|
|
|
Name = "Homelab";
|
|
|
|
};
|
|
|
|
networkConfig = {
|
|
|
|
DNS = "10.10.10.1";
|
|
|
|
Address = [
|
|
|
|
"${config.nodeconfig.facts.wireguard-ip}/24"
|
|
|
|
];
|
2024-11-16 19:00:06 +05:30
|
|
|
};
|
|
|
|
};
|
2024-06-29 17:52:32 +05:30
|
|
|
};
|
|
|
|
}
|