Support for loading firewall rules with cgroup(v2) expressions early

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'd like to use cgroupv2 expressions in firewall rules. But since the rules are loaded very early in the boot, the expressions are rejected since the target cgroups are not realized until much later.

Would it be possible to add new cgroupv2 expressions which defer the check until actual use? For example, 'cgroupv2name' (like iifname etc.) would check the cgroup path string at rule use time?

Another possibility would be to hook into cgroup directory creation logic in kernel so that when the cgroup is created, part of the path checks are performed or something else which would allow non-existent cgroups to be used. Then the NFT syntax would not need changing, but the expressions would "just work" even when loaded early.

Indirection through sets ('socket cgroupv2 level @lvl @cgname drop') might work in some cases, but it would need support from cgroup manager like systemd which would manage the sets. This would also probably not be scalable to unprivileged users or containers.

This also applies to old cgroup (v1) expression but that's probably not worth improving anymore.

Related work on systemd side:
https://github.com/systemd/systemd/issues/22527

-Topi



[Index of Archives]     [Netfitler Users]     [Berkeley Packet Filter]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux