rotuer: use firewallgen to make packet filter rules

This commit is contained in:
Daniel Barlow 2023-06-20 20:20:32 +01:00
parent d79a1e15bb
commit b002a94e07
2 changed files with 133 additions and 1 deletions

View file

@ -226,15 +226,23 @@ in rec {
dependencies = [ services.wan ];
};
services.firewall =
let config = pkgs.firewallgen "firewall.nft" (import ./rotuer-firewall.nix);
in oneshot {
name = "firewall";
up = config;
down = "${pkgs.nftables}/bin/nft flush ruleset";
};
services.packet_forwarding =
let filename = "/proc/sys/net/ipv4/conf/all/forwarding";
in oneshot {
name = "let-the-ip-flow";
up = ''
${pkgs.nftables}/bin/nft -f ${../nat.nft}
echo 1 > ${filename}
'';
down = "echo 0 > ${filename}";
dependencies = [ services.firewall ];
};
services.dhcp6 =