17128 Commits

Author SHA1 Message Date
Ad Schellevis
f477fa13b8 VPN: WireGuard - support carp vhid reuse on different interfaces, closes https://github.com/opnsense/core/issues/7773
Although all our examples always use vhid as a unique key per firewall, it is possible to add the same vhid to different interfaces.
When "disable preempt" is not selected, eventually all of them will switch between master/backup at the same time anyway, so we can assume all virtual ips switch simultaneously.

If preempt is disabled, our vhid matching might not be perfect, but likely better than before.
2024-08-14 21:44:45 +02:00
Franco Fichtner
ef5a59f5e4 firmware: add upgrade test, maybe later also a size check; closes #7769 2024-08-14 14:57:35 +02:00
Ad Schellevis
fe0c78289d VPN: OpenVPN: Instances - unhide server fields for DCO, closes https://github.com/opnsense/core/issues/7772 2024-08-14 14:42:42 +02:00
Monviech
8c32249dd3
dashboard: Improve Wireguard and IPsec Widgets (#7747)
* dashboard: IpsecTunnels.js - Adjust style and functionality of the widget to be in line with the OpenVPN widgets.

* dashboard: Make Phase 1 and 2 translations shorter.

* dashboard: Add missing translation.

* dashboard: Improved Wireguard widget, shows online offline status, styled like IPsec Widget.

* Add comments to make diff smaller.

* dashboard: IpsecLeases.js - Small style fix, add faster tick timeout, remove unused line of code, shifted dataChanged to different spot where it triggers earlier.

* Update src/opnsense/www/js/widgets/Metadata/Core.xml

Co-authored-by: Franco Fichtner <franco@lastsummer.de>

* dashboard: adjust for left header position and optimize ipsec command action

* dashboard: remove endCommandTransition to update table quicker and remove leftover debug statement

---------

Co-authored-by: Franco Fichtner <franco@lastsummer.de>
Co-authored-by: Stephan de Wit <stephan.de.wit@deciso.com>
2024-08-14 14:14:15 +02:00
Franco Fichtner
c054a2b94b firmware: add a comment here 2024-08-14 08:38:15 +02:00
Franco Fichtner
675ef84271 reporting: style 2024-08-14 08:36:51 +02:00
Franco Fichtner
a0fa83adbb kea: fix privileges; closes #7770 2024-08-14 08:29:06 +02:00
Franco Fichtner
41086adf85 firmware: address duplication and unnecessary shell invokes
After staring at the issue long enough this seems to make sense.
2024-08-14 08:17:19 +02:00
Franco Fichtner
c3af228910 src: style et al 2024-08-13 20:21:36 +02:00
Sam Sheridan
7118a82a05 system: add snapshots (boot environments) GUI support #7749
This pull request introduces a new feature to the OPNsense web interface,
allowing users to manage FreeBSD boot environments directly within OPNsense.

This integration provides an intuitive and seamless way for users to create,
manage, and switch between boot environments, enhancing system management
and recovery options.

Renamed the menu item to "Snapshots" in an attempt to explain the feature
to non-FreeBSD users.
2024-08-13 20:15:08 +02:00
Franco Fichtner
346e913323 firmware: remove known plugins added to cor; closes #7195 2024-08-13 16:19:22 +02:00
Franco Fichtner
701dff45b2 rc: export default ZPOOL_IMPORT_PATH for #7559 2024-08-13 15:46:21 +02:00
Ad Schellevis
dbb5ffa7e9 mirrors - remove inactive ones from the list. (new ones won't be added as people can use the custom option for this) 2024-08-13 11:40:15 +02:00
Franco Fichtner
10aa7878cf interfaces: at least we have patch review ;) 2024-08-12 12:52:04 +02:00
Franco Fichtner
4b77d13eef interfaces: one hit and miss and a consistency change for previous
$interface isn't the device. Also use ifcfg['if'] rather than one
single stray ppp['if'] at the end of this function.
2024-08-12 12:49:35 +02:00
Franco Fichtner
d8de758d04 interfaces: fix questionable PHP notice
PHP Notice:  Only variables should be passed by reference

To be frank the array_shift() use was nicer.
2024-08-12 10:19:36 +02:00
Franco Fichtner
dc2e214cc9 interfaces: style fix 2024-08-12 08:22:09 +02:00
Ad Schellevis
f3669a58d7 MVC: Routing - remove setJsonContent and make sure Response->send() handles array types properly. closes https://github.com/opnsense/core/issues/7757
Since we already handle stream output in send() as well, it makes sense to push the render decision to that spot in full.
2024-08-11 15:21:52 +02:00
Ad Schellevis
3e99b87cdf Reporting / rrd - start using cron for rrd collection.
This is a temporary solution, but a first step into cleaning up rrd stat collection.

In this first milestone, we keep using the generated script, but remove the loop and sleep construct out of it, offering the posibility to handle service control to cron. To prevent the script being written at the same time we're collecting, we always lock the script before use.

should fix: https://github.com/opnsense/core/issues/7753
2024-08-11 13:17:02 +02:00
Franco Fichtner
805489d1a0 make: remove 'devel' alias as it doesn't work on plugins
The idea was opnsense-"devel" annotation, but there is a "devel" directory
in plugins and since we have "master" or "main" alias (that we want to switch
to some day even) it's better to remove this cruft.
2024-08-09 13:52:31 +02:00
Franco Fichtner
34ab8a6ef3 make: optimize previous 2024-08-09 13:49:00 +02:00
Franco Fichtner
e099299e06 make: rename a var to allow merging the glue to plugins 2024-08-09 13:38:50 +02:00
Stephan de Wit
fb71b9d8dd firewall: categories: force minimum modal-body height to account for color-picker 2024-08-09 10:14:05 +02:00
Franco Fichtner
d35a5f3cfa interfaces: transform this a bit more #7446
Ideally we should really handle an array of parent hardware
devices here.  In some cases IPv6 device is missed as well.
And later on the code will not check if this was a device
node for a modem so wrapping the hardware stuff into a function
for iteration is the way to go.
2024-08-09 09:42:38 +02:00
Franco Fichtner
805120ea78 interfaces: decouple starting PPP from configured IP modes #7446
PR: https://forum.opnsense.org/index.php?topic=42008.0
2024-08-09 09:30:52 +02:00
Franco Fichtner
7c9ba6d785 interfaces: style in previous #7446 2024-08-08 23:31:36 +02:00
Franco Fichtner
58bfdecefa interfaces: backwards compat move of PPP IPv6 to linkup #7446 2024-08-08 23:10:13 +02:00
Franco Fichtner
de96821af8 interfaces: backwards compatible changes #7446 2024-08-08 22:51:09 +02:00
Franco Fichtner
d620f4e53a interfaces: remove 10.64.64.x use and stray $pppid
It's probably someone else's network.  ;)
2024-08-08 22:40:35 +02:00
Ad Schellevis
fd516e8c99 System: Trust: Revocation - CRL import ignored text input and triggered some validations only relevant for internal CRL's. closes https://github.com/opnsense/core/issues/7748
While here, also hide lifetime and serial fields for external crl's
2024-08-08 20:56:39 +02:00
Franco Fichtner
65ccbfc680 interfaces: minor code merge in interface_ppps_configure() for #7446 2024-08-08 15:14:01 +02:00
Franco Fichtner
f879fcd97c interafaces: minor sync/cleanup 2024-08-08 14:29:38 +02:00
Franco Fichtner
4e9c75240d shell: minor cleanup 2024-08-08 14:25:56 +02:00
vivek.panchal
52c1f005bf Captive portal logoff issue fixed 2024-08-08 08:58:05 +02:00
Franco Fichtner
7c9b97ab74 interfaces: 30 could be too slow for backend recofiguration
Take 10 seconds off.  Seen today while testing other PPP changes.
Since I don't have functional PPPoE the full timeout is taken and
the log message is emitted correctly.
2024-08-07 18:51:26 +02:00
Stephan de Wit
cf9da42380 dashboard: also account for removal of rows in non-rotated tables with top headers 2024-08-07 16:04:04 +02:00
Monviech
4694acbfe4
dashboard: Monit.js - Change status code handling to 0 as ok and non 0 as failed. Rewrite widget slightly to implement dataChanged method so the long tick timeout can be removed. This makes the widget respond faster to changes. Remove unused translations. (#7738) 2024-08-07 13:11:29 +02:00
Stephan de Wit
c807cbc3d1 dashboard: apply locked state to newly added widgets as well
Some code duplication as a result here, but the concept of locking and editing needs a revamp anyway as described https://github.com/opnsense/core/issues/7737.
2024-08-07 13:03:03 +02:00
Monviech
670c98fdff
dashboard: Make titles of Swap and Mbuf shorter so there is no line break that increases the size of the widget. (#7736) 2024-08-07 09:16:32 +02:00
Franco Fichtner
a7043565d6 system: (un)lock button style 2024-08-06 15:51:15 +02:00
Stephan de Wit
78453bfa54 dashboard: remove transition from row hover for table widgets 2024-08-06 15:10:43 +02:00
Franco Fichtner
633a3cc3fb firmware: fix mode in previous 2024-08-06 14:59:42 +02:00
Franco Fichtner
039ae3c198 firmware: cleanup prior to upgrade
squid package errors may manifest during major upgrade as well making
it necessary to run the cleanup in advance and not in background mode.

It would be nicer to avoid code duplication, but that can happen the
next time something needs to be adjusted in the actual cleanup routine.
2024-08-06 14:55:50 +02:00
Stephan de Wit
049c8724c2 dashboard: account for string/number types and update openvpn server status color (fixes https://github.com/opnsense/core/issues/7701) 2024-08-06 13:57:27 +02:00
Monviech
f1fa295aeb
wireguard: Change add button to btn-primary (#7733)
PR: https://forum.opnsense.org/index.php?topic=42004.0
2024-08-06 13:33:06 +02:00
tionu
bd3faedadb Skip tentative IPv6 addresses for binding of webgui
IPv6 addresses might be tentative. lighttpd will fail when trying to bind to a tentative address. This commit skips tentative IPv6 addresses for binding.
2024-08-06 11:57:42 +02:00
Stephan de Wit
c8a44c0607 trust: fix API exception on empty CA selection. While here, clear form elements when issuer is empty (which indicates self-signed) 2024-08-06 11:30:55 +02:00
Franco Fichtner
ad0d75cf98 system: PHP warning 2024-08-06 10:48:55 +02:00
Franco Fichtner
6028e38f85 system: debug sysctls are complicated, mock reality 2024-08-06 10:30:40 +02:00
Nicolai Scheer
62a09bfa0a
interfaces: require PPP interface to be in up state (#7692)
Otherwise the check will "approve" an interface that is not yet up, and subsequent
calls to fetch the gateway of that interface might fail if issued to quickly thereafter.
2024-08-06 10:10:16 +02:00