18187 Commits

Author SHA1 Message Date
Franco Fichtner
f30f0f05a0 interafaces: reduce diff between rc.newwanip scripts a little
The goal is still to merge these eventually.  ;)
2025-04-23 11:10:04 +02:00
Franco Fichtner
f5352f841e interfaces: do group sync for IPv6 just in case 2025-04-23 10:55:31 +02:00
Franco Fichtner
0deba9c9de tzdata: sync while here 2025-04-23 09:45:39 +02:00
Franco Fichtner
f9ea24113a system: move get_country_codes() to only caller
Also cleans up the last raw use of $contribDir which neatly lands
in the file that was already modified.
2025-04-23 09:41:26 +02:00
Freddie Sackur
a819b91049
Add contribDir to app config (#8567) 2025-04-23 09:34:41 +02:00
Franco Fichtner
08a86fdae9 pkg: add a user for www-only access #8521
Added a group as well, but we can always drop it if it doesn't
make sense.
2025-04-23 09:09:35 +02:00
Franco Fichtner
bdb3f73315 reporting: header style 2025-04-23 08:45:01 +02:00
Ad Schellevis
b83cc529eb Firewall: multiselect for icmptype for both legacy and icmp. closes https://github.com/opnsense/core/issues/8513 2025-04-22 21:17:52 +02:00
Ad Schellevis
bf14a0a2e3 Firewall: prevent source/destination inversion when multiple nets are selected. closes https://github.com/opnsense/core/issues/8559 2025-04-22 20:37:56 +02:00
Ad Schellevis
9c50cbfcb8
Services: Kea DHCP: Kea DHCPv6 - add new option based on v4 (#8571)
This contains roughly the same configuration items as our current isc-dhcp6 alternative, with the exception of not trying to implement dynamic ranges based on data received from dhclient6.
In terms of target audience, dynamic environments (receiving their "wan" type addressess via dhcp), should logically use dnsmasq for client configuration. Large (enterprise) setups usually are static by nature and may require prefix deligation to routers behind the primary one. In these cases Kea will be the tool of choice.

Both v4 and v6 share the same rc scripts underneath, which means reconfiguration happens per package (eventhough two services are registered).
Existing hooks for v4 have been extended with v6 data (firewall rules and staticmaps).

Advanced configurations can still opt out of config file generation and supply their own json config, same as implemented for v4.

The lease view still needs to be implemented, but that's likely a minor addition.
2025-04-22 17:43:27 +02:00
Stephan de Wit
25e5341dd4 captive portal: exclude portal table in destination (https://github.com/opnsense/core/issues/8564) 2025-04-22 15:07:13 +02:00
Ad Schellevis
7beec43db9 Services: Dnsmasq DNS & DHCP - fix validation for static ipv4, closes https://github.com/opnsense/core/issues/8568 2025-04-20 10:55:21 +02:00
Monviech
5636079c16
auth: Implement base_bootgrid_table in user, group and priv templates (#8529) 2025-04-17 11:48:13 +02:00
Franco Fichtner
302ed6b037 ipsec: fix trimming NULL values
Not sure how I managed to misconfigure this but since the
function relies on returning null make the trimming conditional.
2025-04-17 10:00:24 +02:00
Ad Schellevis
e09112ab45 System/Trust - fix scoping issue in CertificatesField causing issues for consumers of ArrayFields in migrations, closes https://github.com/opnsense/core/pull/8546 2025-04-17 09:44:45 +02:00
eopo
c53dc21190
Add field boottime to api/system/systemTime (#8557) 2025-04-16 20:03:12 +02:00
Ad Schellevis
5d0007a023 Interfaces: Diagnostics: Packet Capture - fix wrapping as suggested in https://github.com/opnsense/core/pull/8554 2025-04-16 19:58:22 +02:00
Franco Fichtner
4d20b54aa5 interfaces: make this return explict 2025-04-16 15:13:37 +02:00
Ad Schellevis
1e37f6a7fc Interfaces: Diagnostics: Packet Capture - more strict jQuery selector for "(de)select all" button. for https://github.com/opnsense/core/pull/8554 2025-04-16 15:10:24 +02:00
Stephan de Wit
27fdbd950f diagnostics: ARP: wire up refresh button 2025-04-16 14:25:57 +02:00
Monviech
e72077c376
dnsmasq: Improve interface/tag selectpicker (#8560)
* dnsmasq: Add button to quickly clear the tag/interface filter

* dnsmasq: Autofill filter selectpicker choices in add dialog
2025-04-16 13:12:09 +02:00
Franco Fichtner
045dec233a system: add logging to state kills and polish comments #8548 2025-04-16 10:34:14 +02:00
Franco Fichtner
927bda891f firewall: improve labels in pf debug setting
The level key words are easy to find in the source code, but knowing
which verbose description they belong to is difficult without pulling
up our source code as well.  Make it explicit.
2025-04-16 10:33:12 +02:00
Ad Schellevis
4f3db31351
System: Gateways - kill opposite states when a gateway "up" is triggered (#8548) 2025-04-16 09:40:36 +02:00
Ad Schellevis
6d579db491 VPN: IPsec: Mobile & Advanced Settings - copy "Split DNS name" to undocumented "25", closes https://github.com/opnsense/core/issues/8552
* https://docs.strongswan.org/docs/latest/plugins/attr.html
* https://lists.strongswan.org/pipermail/dev/2019-May/001994.html
2025-04-15 14:10:34 +02:00
Ad Schellevis
b87eba3085 Services: Intrusion Detection: Administration - template style cleanups 2025-04-15 13:31:04 +02:00
Franco Fichtner
f30c28ca79 mvc: allow referencing disabled interfaces in LinkAddressField
This prevents validation errors when interfaces are temporarily
disabled.  Other device components received similar fixes in the
past due to this "glitch" of not offering valid devices and selectpickers
would lose their correct value on save too (the field is a bit different
here but the same principle applies).
2025-04-15 12:36:04 +02:00
Franco Fichtner
25585eb6b9 interfaces: consider tracked interface's linked devices on reload #7713
When attaching a GIF tunnel to an IPv6 device it's more likely a LAN
device but that is being missed when WAN is reloaded here.  Much of the
other code still accounts for this so this merely goes with the flow
and since we only operate in IPv6 scope that is ok.
2025-04-15 11:00:54 +02:00
Ad Schellevis
6a89c8968b Services: Intrusion Detection: Administration - our fix in the reverse log reader (7446f8cbbf) caused a regression in the alert view. closes https://github.com/opnsense/core/issues/8550
It looks like this worked by accident, since we started with the wrong offset, we accidentally hit the right record.
2025-04-15 10:49:32 +02:00
Ad Schellevis
d0f745a70e Services: Captive Portal - fix display issue for pass rule when client not in zone
inverse rules unfortunately contain some mappings, which means we need to map them differently for legacy and mvc code.
2025-04-14 17:09:39 +02:00
Franco Fichtner
5ad41a236c system: typo 2025-04-14 12:39:07 +02:00
Ad Schellevis
0d6aa56527 Services: ISC DHCPv4: hide menu items when dnsmasq is enabled to improve "out of the box" experience. closes https://github.com/opnsense/core/issues/8329 2025-04-14 10:34:22 +02:00
Ad Schellevis
413f49c3ef Services: Captive Portal - configd actions should use long opts (fix regression in 7e838c6d92)
argparse needs long params too..
2025-04-14 09:47:50 +02:00
Alex Goodkind
02e511091d
DHCP6: use lease_type to key lease map in addition to iaid_duid (#8492)
* dhcp6: key lease map by type in addition to duid

* Update src/opnsense/scripts/dhcp/get_leases6.py

Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>

---------

Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
2025-04-11 18:54:15 +02:00
Stephan de Wit
4567021437 captive portal: remove interfaces_inbound option (https://github.com/opnsense/core/issues/8326)
In the old situation, one would need explicit pf rules on top of
this feature to make this work. With the removal of IPFW,
those rules are now enough to make the same happen.
2025-04-11 09:25:06 +02:00
Franco Fichtner
d81b2eec9d dnsmasq: move default setting to where dhcp disappeared before 2025-04-11 09:15:07 +02:00
Franco Fichtner
5a2e399586 ipsec: settings page also unaccounted for
PR: https://forum.opnsense.org/index.php?topic=46595.0
2025-04-11 09:02:45 +02:00
Franco Fichtner
54fed30cf1 ipsec: fix more ACLs related to individual IPsec page use
PR: https://forum.opnsense.org/index.php?topic=46595.0
2025-04-11 08:43:31 +02:00
Franco Fichtner
d4ddc8def6 ipsec: add missing copyright header 2025-04-11 08:41:32 +02:00
Franco Fichtner
fb87f688f6 ipsec: fix auth server parsing regression
PR: https://forum.opnsense.org/index.php?topic=46774.0
2025-04-10 20:52:25 +02:00
Ad Schellevis
25b2716325 Services: Captive Portal - regression in https://github.com/opnsense/core/issues/8326 when reflection is enabled.
Captive portal installs redirects, but these should be excluded when calculating reflection rules.

ref: https://forum.opnsense.org/index.php?topic=46775.0
2025-04-10 20:34:32 +02:00
Ad Schellevis
7e838c6d92 Services: Captive Portal - configd actions should use long opts 2025-04-10 14:16:11 +02:00
Ad Schellevis
6d507b1dd9 Services: Captive Portal - fix regresssion in 8ba454ab04, argparse doesn't seem to like an argument starting with a minus (-) sign even when quoted.
making assignments explicit with an equal [=] sign seems to fix this.
2025-04-10 14:07:37 +02:00
Franco Fichtner
86ffbd88ad firmware: this broke too 2025-04-10 12:42:00 +02:00
Franco Fichtner
0e5a5c3ba2 system: fix gateway watcher backoff 2025-04-10 11:27:12 +02:00
Franco Fichtner
da6fab5bff backend: adjust for #8525 2025-04-10 09:44:03 +02:00
Ad Schellevis
7446f8cbbf logging: reverse_log_reader() - fix off by one error due to line ending at the end of the file
Usually log lines start with a line ending, which means the first hit is always an empty line with reading things backwards.
This empty line has no relevance, but only indicates we're at the end of the file.

This commits stores the file starting position in all cases and ignores the output when we trying to yield the end of the file.
2025-04-10 09:08:23 +02:00
Ad Schellevis
d0b1c8d369 Services: Intrusion Detection: Administration - example usage of configd errors:no property (https://github.com/opnsense/core/issues/8525) 2025-04-09 17:38:11 +02:00
Ad Schellevis
9f7a1fa062 configd: support "errors:no" clause on actions, closes https://github.com/opnsense/core/issues/8525 2025-04-09 17:36:13 +02:00
Stephan de Wit
8d3d392ae6 dashboard: traffic: use client time (https://github.com/opnsense/core/issues/8225) 2025-04-09 14:39:26 +02:00