Commit Graph

69 Commits

Author SHA1 Message Date
Ilia Ross
a06590c17e Fix to change nftables migration to prefix and validate tables 2026-09-13 01:34:46 +02:00
Ilia Ross
3291429123 Add follow up fixes for nftables config parsing, rewriting and apply 2026-09-12 22:57:21 +02:00
Joe Cooper
cf9c101e99 Update note about import 2026-09-06 01:45:09 -05:00
Joe Cooper
7f44387028 Cleanup help and comment 2026-09-06 01:08:47 -05:00
Joe Cooper
2aab9aa69f Add ACL thing 2026-09-06 00:54:54 -05:00
Joe Cooper
3e91407f81 Fix start/stop buttons 2026-09-05 23:24:33 -05:00
Joe Cooper
e0b8113348 Handle included files correctly and labeled as such 2026-09-05 18:26:24 -05:00
Joe Cooper
515879dcc8 Cleanup meta-confg layer 2026-09-05 17:35:03 -05:00
KafamaG
02ca56139a Complete the Turkish module.info descriptions
Every module now has a reviewed desc_tr and longdesc_tr in
module.info.tr - 245 strings across 125 modules. Previously 37 were
reviewed, 194 came from module.info.tr.auto and 14 were missing
entirely (grub2, hardware-info, kea-dhcp, logviewer, nftables, systemd,
xterm), so those modules showed English titles in the Webmin menu.

The reviewed strings are removed from module.info.tr.auto, which now
holds only name_tr - the same split the de and ca translations use.
Thirty-six of those files became empty and are deleted.

Some of the machine text this replaces was wrong rather than just
clumsy:

  sarg          "Squid Report Generator" had become "Kalamar Rapor
                Oluşturucu" - the fish, not the proxy
  heartbeat     the product name was translated as "Kalp Atışı"
  cluster-cron  "Cron Jobs" had become "Cron İş İlanları" (job ads)
  proc          "renice" was translated as "rename"
  samba         "file and print shares" was split into "create a samba
                file" and "print the shares"
  exports, hpuxexports, sgiexports, inetd, init, mount, net
                each repeated the file path mid-sentence
  firewall,     the "(iptables)" and "(ip6tables)" qualifiers that
  firewall6     distinguish the two modules were dropped

Turkish capitalisation of English words was also wrong throughout
("İptables", "İnetd", "İscsitarget", "İnternet"), and three previously
reviewed strings were stored as double-encoded UTF-8 (cron/desc_tr,
mailboxes/desc_tr, mailboxes/longdesc_tr).

cluster-cron and ldap-server carried a stray desc_de_tr key - a German
key that had leaked into the Turkish file. It is removed.
2026-08-30 14:41:10 +03:00
KafamaG
e2ac10387a Add Turkish translations for the grub2 and nftables modules
Translates all strings in grub2 (346) and nftables (400) into Turkish.
Neither module had a translation of any kind.

Names that appear in configuration files or commands are left in English:
GRUB tooling and values (grub-install, grubby, grubenv, kernelopts,
theme.txt, modinfo.sh, grub.pbkdf2, PBKDF2, BLS, Secure Boot, UEFI) and
nftables concepts (hook, DNAT, ICMP, ipv4_addr, ipv6_addr, inet_service)
together with service names such as SSH, HTTP, IMAPS and mDNS.
2026-08-30 02:00:58 +03:00
Ilia Ross
6ff25cad99 Fix to open 443/udp for HTTP/3
Some checks failed
Tests / prove (push) Has been cancelled
Package and upload artifacts / build (push) Has been cancelled
Close inactive / close-inactive (push) Has been cancelled
2026-08-25 19:44:23 +02:00
Joe Cooper
844b5f8174 Exclude ProhibitLeadingZeros from perlcritic, use .perlcriticrc 2026-05-19 20:40:29 -05:00
Joe Cooper
9eff352005 Make perlcritic happy again 2026-05-17 22:25:03 -05:00
Ilia Ross
d0f6a7672f Fix placeholder
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
2026-05-16 20:09:59 +02:00
Ilia Ross
065ce627a0 Add quick service and port forward controls
* Note: Add lightweight quick controls for allowed ports, services, and port forwards, with service autocomplete, ACLs, and structured NAT redirect/DNAT editing.
2026-05-16 15:55:28 +02:00
Ilia Ross
869173d7c6 Fix partial print 2026-05-16 15:55:27 +02:00
Ilia Ross
361d3b5175 Add ability to discover profile service ports dynamically
* Note: Resolve nftables profile service ports from supported Webmin module configs and /etc/services, with safe fallbacks and SSH custom-port regression coverage.

https://github.com/webmin/webmin/issues/2706
2026-05-15 21:26:15 +02:00
Joe Cooper
2b8091537c Ignore ugly require in acl_security.pl 2026-05-12 16:31:24 -05:00
Ilia Ross
0863d6ba7a Revert #2700 reverted but only fix exact bug
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
This reverts commit 0d3e3d9473, reversing
changes made to 236c5cf489.
2026-05-12 18:01:16 +02:00
Ilia Ross
084f7b7314 Revert "perlcritic fixes" 2026-05-12 13:00:03 +02:00
Joe Cooper
a9aae79fcd perlcritic fixes 2026-05-11 20:37:30 -05:00
Ilia Ross
95fee0cc33 Add nice header generation for saved nftables rules
Some checks failed
webmin.dev: webmin/webmin / build (push) Has been cancelled
2026-05-04 17:42:40 +02:00
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
159cc14dfc Add a warning message if any foreign firewall modules are detected 2026-05-03 21:39:28 +02:00
Ilia Ross
aa84044375 Add boot-time apply support for nftables rules
* Note: The boot action applies saved module-managed nftables tables, creates the needed wrapper, fixes executable permissions, and removes generated boot files when disabled.
2026-05-03 20:23:48 +02:00
Ilia Ross
02b5c9c121 Fix limit nftables header actions to index page 2026-05-03 19:25:38 +02:00
Ilia Ross
b5518df7bd Fix editable size 2026-05-03 19:13:24 +02:00
Ilia Ross
2c608b2c71 Fix to bump sets elements limit
[no-build]
2026-05-03 19:02:32 +02:00
Ilia Ross
d1523b9648 Add nftables profile ruleset helper
* Note: Add a reusable save_profile_ruleset() API for other modules (like Virtualmin Config), and.

Example:

foreign_require("nftables");
nftables::save_profile_ruleset('profile_virtualmin', 'virtualmin', '*');
2026-05-03 19:00:01 +02:00
Ilia Ross
9987b2d493 Update labels (again) 2026-05-03 18:52:31 +02:00
Ilia Ross
83eb3eeffc Fix to factor nftables profile ruleset generation into library 2026-05-03 18:41:57 +02:00
Ilia Ross
a6e6b1d21c Fix to normalize text keys to work properly with iconed buttons 2026-05-03 18:34:32 +02:00
Ilia Ross
e65c88e7ef Fix to drop another footgun with configurable rules file 2026-05-03 18:05:59 +02:00
Ilia Ross
2bcf00b50d Fix nftables and firewall modules title for consistency and clarity
* Note: Rename legacy iptables firewalls and make nftables the Linux Firewall
2026-05-03 17:57:48 +02:00
Ilia Ross
eb4fafc504 Add missing comments 2026-05-03 17:17:40 +02:00
Ilia Ross
5101871760 Add manual editing for nftables configuration files 2026-05-03 17:12:35 +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
5c66e544b1 Add ability to flush all clearable tables at once 2026-05-03 15:03:36 +02:00
Ilia Ross
5671bd4ce6 Fix file locking 2026-05-03 14:49:32 +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
1d2e1983bf Fix wording 2026-05-03 13:07:46 +02:00
Ilia Ross
91f7d5b5c5 Add a quick allow and quick block UI feature 2026-05-03 13:05:31 +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
bedca1546b Fix to revert to using a table for links and move buttons 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
a0fb85c152 Fix language when importing a table 2026-05-03 00:44:55 +02:00