2025-01-13 01:52:37 +01:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
virtualisation.incus.enable = true;
|
|
|
|
|
networking = {
|
|
|
|
|
nftables.enable = true;
|
2025-07-22 10:25:34 +02:00
|
|
|
firewall = {
|
|
|
|
|
enable = true;
|
|
|
|
|
trustedInterfaces = [ "incusbr1" ];
|
|
|
|
|
filterForward = true;
|
|
|
|
|
|
|
|
|
|
extraForwardRules = ''
|
|
|
|
|
# if crusader tries to go to varian or truenas, BLOCK
|
|
|
|
|
iifname "incusbr1" oifname "incusbr0" drop
|
|
|
|
|
iifname "incusbr1" oifname "enp4s0" ip daddr 192.168.0.0/16 drop
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
interfaces = {
|
|
|
|
|
incusbr0 = {
|
|
|
|
|
allowedTCPPorts = [ 53 67 ];
|
|
|
|
|
allowedUDPPorts = [ 53 67 ];
|
|
|
|
|
};
|
|
|
|
|
incusbr1 = {
|
|
|
|
|
allowedTCPPorts = [ 53 ];
|
|
|
|
|
allowedUDPPorts = [ 53 67 68 ];
|
|
|
|
|
};
|
2025-01-13 01:52:37 +01:00
|
|
|
};
|
2025-07-22 10:25:34 +02:00
|
|
|
|
|
|
|
|
|
2025-01-13 01:52:37 +01:00
|
|
|
};
|
|
|
|
|
};
|
2025-01-13 02:18:00 +01:00
|
|
|
|
|
|
|
|
# Load the kernel volume for lvm thin provisioning
|
2025-01-14 13:10:24 +01:00
|
|
|
boot.kernelModules = [ "dm_thin_pool" "dm_snapshot" ];
|
2025-01-13 01:52:37 +01:00
|
|
|
}
|
|
|
|
|
|