Hi,
I wanted to try nftables on Proxmox, it seems quite nicely done, bravo!
I guess most users don't use any output filters, but if using them in iptables, we get a stateful output rule, allowing to only open INPUT for a given port, and assume that it will go out.
In nftables, we do get a stateful rule for input (through default-in / default-in: ct state established,related accept), but it doesn't seem to be set for output!
It is available in default-out, but VMs packets don't jump to that chain it seems (EDIT#2, no they don't, because of the priority 0 + goto). So, maybe, allow for a jump to default-out before drop for VMs ? Or set a specific default for them.
It's not necessarily a bad idea to disable the stateful firewall (or having any impact on that), but as it is, it does not work the same way the pve-firewall using iptables does!
Cheers,
Gilou
I wanted to try nftables on Proxmox, it seems quite nicely done, bravo!
I guess most users don't use any output filters, but if using them in iptables, we get a stateful output rule, allowing to only open INPUT for a given port, and assume that it will go out.
Code:
Chain PVEFW-HOST-OUT (1 references)
pkts bytes target prot opt in out source destination
283K 1225M ACCEPT 0 -- * lo 0.0.0.0/0 0.0.0.0/0
0 0 DROP 0 -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
5507K 38G ACCEPT 0 -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
In nftables, we do get a stateful rule for input (through default-in / default-in: ct state established,related accept), but it doesn't seem to be set for output!
It is available in default-out, but VMs packets don't jump to that chain it seems (EDIT#2, no they don't, because of the priority 0 + goto). So, maybe, allow for a jump to default-out before drop for VMs ? Or set a specific default for them.
It's not necessarily a bad idea to disable the stateful firewall (or having any impact on that), but as it is, it does not work the same way the pve-firewall using iptables does!
Cheers,
Gilou
Last edited: