33 lines
816 B
Nix
33 lines
816 B
Nix
|
{ config, pkgs, lib, ... }:
|
||
|
{
|
||
|
environment.systemPackages = [ pkgs.wireguard pkgs.mosh ];
|
||
|
networking.nat = {
|
||
|
enable = true;
|
||
|
externalInterface = "ens3";
|
||
|
internalInterfaces = [ "wg0" ];
|
||
|
};
|
||
|
networking.firewall = {
|
||
|
allowedUDPPorts = [ 60990 ];
|
||
|
};
|
||
|
|
||
|
networking.wireguard.interfaces.wg0 = {
|
||
|
ips = [ "10.0.69.1/24" ];
|
||
|
listenPort = 60990;
|
||
|
privateKeyFile = "/var/lib/wireguard/priv";
|
||
|
peers = [
|
||
|
{ # box
|
||
|
publicKey = "Ra78mOc110K7URN5uB3m9d78iBKgeRHzT+3HkiFp9BU=";
|
||
|
allowedIPs = [ "10.0.69.4/32" ];
|
||
|
}
|
||
|
{ # line
|
||
|
publicKey = "fsb1FuGmYi89p4CVXytKw2FYamONKtoanxrgs/dJjC8=";
|
||
|
allowedIPs = [ "10.0.69.3/32" ];
|
||
|
}
|
||
|
{ # curve
|
||
|
publicKey = "XmV4AcPPND/eeSI6d9M1iahCjtymqY6DdUDEFNP/x3g=";
|
||
|
allowedIPs = [ "10.0.69.2/32" ];
|
||
|
}
|
||
|
];
|
||
|
};
|
||
|
}
|