15 Commits

Author SHA1 Message Date
Jamie Cameron
c38793c955 Fix permissions on CGIs 2026-05-03 17:57:24 -07:00
Ilia Ross
44ff20e5c6 Fix to perltidy new nftables module to convert spaces to tabs
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
2026-05-03 22:36:31 +02:00
Ilia Ross
02b5c9c121 Fix limit nftables header actions to index page 2026-05-03 19:25:38 +02:00
Ilia Ross
83eb3eeffc Fix to factor nftables profile ruleset generation into library 2026-05-03 18:41:57 +02:00
Ilia Ross
0c8f74597b Add proper ACLs to nftables module
[no-build]
2026-05-03 16:44:26 +02:00
Ilia Ross
f4fea0026f Fix to generate nftables profiles with service port sets instead
* Note: Create profile rulesets using named inet_service sets for selected service ports instead of emitting one accept rule per port. Keep scoped rules such as DHCPv6 and mDNS explicit, split TCP and UDP port sets to avoid widening access, and normalize interval set elements so ranges are valid and non-overlapping.
2026-05-03 15:40:30 +02:00
Ilia Ross
dbb19c30c4 Remove restart button from other pages for consistency 2026-05-03 15:08:51 +02:00
Ilia Ross
12eff54277 Add nftables apply-needed header action
* Note: Track saved nftables configuration changes with Apache-style config/apply timestamp flags, expose the standard restart.cgi header action for themes, and use it as the single apply endpoint. The button expands to “Apply Changes” when saved rules need applying, while the existing Apply Configuration action now routes through restart.cgi and clears the pending state after a successful apply.
2026-05-03 13:59:58 +02:00
Ilia Ross
6c1de362e3 Fix locked profile 2026-05-03 13:14:23 +02:00
Ilia Ross
9d7f4f9d05 Fix profiles
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
[no-build]
2026-05-03 00:44:56 +02:00
Ilia Ross
0e4349565a Fix to return on redirect 2026-05-03 00:44:55 +02:00
Ilia Ross
272a8715f7 Add profiles support 2026-05-03 00:44:54 +02:00
Ilia Ross
3c9d53109b Fix to rework nftables management around saved tables
Rework the nftables module so Webmin manages its saved nftables configuration as the source of truth instead of directly editing the live ruleset. Add an active ruleset view for inspecting live tables and importing copies into Webmin-managed config if needed, track managed and imported tables with metadata, and prevent externally managed tables from being overwritten during apply.

Co-authored-by: Copilot <copilot@github.com>
2026-05-02 19:02:37 +02:00
Ilia Ross
7f2b4b00aa Fix to scope direct-mode changes to selected tables
Fix nftables direct-mode operations so create, edit, delete, and move actions apply only the selected table instead of rewriting or applying the full ruleset. This avoids copying firewalld-owned rules, or any other externally managed rules, into Webmin’s save file and prevents operations from failing against externally managed tables. Also remove previously added unsafe full-ruleset flush action and keep Apply Configuration out of direct mode (will be further reworked).
2026-05-02 17:08:35 +02:00
Ilia Ross
4f3e993ae6 Merge swelljoe/nftables as new nftables module
Import https://github.com/swelljoe/nftables into the Webmin tree under nftables/ while preserving upstream history.
2026-04-17 15:19:20 +02:00