You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
opensense-docs/source/releases/CE_22.1.rst

650 lines
45 KiB
ReStructuredText

===========================================================================================
22.1 "Observant Owl" Series
===========================================================================================
For more than 7 years now, OPNsense is driving innovation through
modularising and hardening the open source firewall, with simple
and reliable firmware upgrades, multi-language support, fast adoption
of upstream software updates as well as clear and stable 2-Clause BSD
licensing.
22.1, nicknamed "Observant Owl", features the upgrade to FreeBSD 13,
switch to logging supporting RFC 5424 with severity filtering, improved
tunable sysctl value integration, faster boot sequence and interface
initiation and dynamic IPv6 host alias support amongst others.
On the flip side major operating system changes bear risk for regression
and feature removal, e.g. no longer supporting insecure cryptography in
the kernel for IPsec and switching the Realtek vendor driver back to its
FreeBSD counterpart which does not yet support the newer 2.5G models.
Circular logging support has also been removed. Make sure to read the
known issues and limitations below before attempting to upgrade.
Download links, an installation guide `[1] <https://docs.opnsense.org/manual/install.html>`__ and the checksums for the images
can be found below as well.
* Europe: https://opnsense.c0urier.net/releases/22.1/
* US East Coast: https://mirror.wdc1.us.leaseweb.net/opnsense/releases/22.1/
* US West Coast: https://mirror.sfo12.us.leaseweb.net/opnsense/releases/22.1/
* South America: http://mirror.ueb.edu.ec/opnsense/releases/22.1/
* East Asia: https://mirror.ntct.edu.tw/opnsense/releases/22.1/
* Full mirror list: https://opnsense.org/download/
--------------------------------------------------------------------------
22.1.2 (March 01, 2022)
--------------------------------------------------------------------------
This release adds GUI support for Intel QuickAssist Technology (QAT) and
SYN cookies as per virtue of the FreeBSD 13 operating system. The work
to modernise the interfaces subsystem and improve the new ddclient dynamic
DNS plugin are also progressing.
Due to signs of decay in the build infrastructure, license nitpicking
in FreeBSD ports and the upcoming OpenSSL 3 release (which will complicate
things most likely) we have decided to discontinue LibreSSL at the end of
this year meaning there will be no more LibreSSL flavour starting with
version 23.1. Non-essential software will no longer be manually fixed and
provided as binary packages if broken by upstream from this point on.
Since 2015 we have been working on functional LibreSSL support with steady
means, but 7 years later and OpenSSL making an effort through numerous
ways we are sad to give up this alternative since we do not see LibreSSL
being used and properly integrated in software projects as often anymore.
It has been a slow but steady decline for the past 2 years that also has
to do with a LibreSSL release cycle tailored for OpenBSD in particular and
OpenSSL library integration quality, which is almost impossible to improve
upon in complex third-party software projects. We simply cannot afford the
time for it any longer.
All users are able to update to the OpenSSL flavour without issues now or
at any later given point.
Here are the full patch notes:
* system: Intel QuickAssist Technology (QAT) crypto module selection and support multiple selection
* system: AESNI crypto module is a kernel-builtin since 22.1 and no longer needs to be selected to work
* system: enable library support of PCRE JIT included since 21.1.1
* system: limit rowCount in log viewer (contributed by kulikov-a)
* system: unify system tunables handling and tweak UX of the respective GUI page
* system: no longer default to hw.uart.console use in factory configuration
* system: remove console mute use from boot sequence
* reporting: fill missing insight data with zeros
* interfaces: assignments should take OpenVPN into account
* interfaces: only ever store nobind for ipalias/carp
* interfaces: align IPv4 address statistics read with IPv6
* interfaces: simplify device destroy code
* interfaces: avoid use legacy_get_interface_addresses() in MAC address read
* interfaces: remove unused opportunistic interface address functions
* firewall: exclude localhost stateless traffic from default logging (contributed by kulikov-a)
* firewall: using port type aliases the "enable" flag was ignored when not enabled
* firewall: add support for SYN cookies
* firmware: opnsense-code: support "-z" snapshot mode
* firmware: opnsense-revert: support "-z" snapshot mode
* firmware: opnsense-update: support version print for sets
* firmware: check repository and plugin state in health audit
* ipsec: pass protocol when resolving via ipsec_resolve() (contributed by FloMeyer)
* ipsec: fix mobile property passing when creating a new phase 2 entry
* ipsec: rename "My Certificate Authority" to "Remote Certificate Authority" to avoid ambiguity
* openvpn: avoid use of find_interface_network() et al
* openvpn: stop removing name server-related files never written
* openvpn: improve gateway detection in topology mode
* ipsec: avoid use of find_interface_network() et al
* dhcp: avoid use of find_interface_network() et al
* console: move console mite calls into port setting function
* ui: sidebar 2nd submenu view fix (contributed by Team Rebellion)
* mvc: refactor and extend HostnameField to add options to validate partial hostnames and root zones
* plugins: os-bind 1.22 `[1] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/bind/pkg-descr>`__
* plugins: os-ddclient 1.2 `[2] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/ddclient/pkg-descr>`__
* plugins: os-freeradius 1.9.19 `[3] <https://github.com/opnsense/plugins/blob/stable/22.1/net/freeradius/pkg-descr>`__
* plugins: os-stunnel 1.0.4 fix connect format for IPv6 (contributed by Johnny S. Lee)
* src: stand: add EFI support for MMIO serial consoles
* src: apei: make sure event data fit into the buffer
* ports: php 7.4.28 `[4] <https://www.php.net/ChangeLog-7.php#7.4.28>`__
* ports: unbound 1.15.0 `[5] <https://nlnetlabs.nl/projects/unbound/download/#unbound-1-15-0>`__
--------------------------------------------------------------------------
22.1.1 (February 16, 2022)
--------------------------------------------------------------------------
The first stable release brings in minor fixes from FreeBSD and instant
log file visibility for files without severity written which can happen
for individual plugins.
We have also gone ahead to restructure the interface code further to resolve
dependencies between configured devices and interfaces automatically and
the bundled development version is worth a try for everyone having issues
with GIF/GRE not coming up after boot.
Here are the full patch notes:
* system: changing interface gateway was ignored during route reconfiguration
* system: allow to configure SSH setting PubkeyAcceptedAlgorithms (contributed by Manuel Faux)
* system: add backward compatibility for reading logs without severity by default (contributed by kulikov-a)
* system: fix typo causing PHP warning on IPv6 login (contributed by ppascher)
* system: cron command drop down size was extending below screen
* system: add a sysctl cache to improve tuneable overview load time
* system: replace obsolete find_interface_network\*() use in GUI
* system: allow severity levels in PHP log messages and mark authentication success messages as notice
* interfaces: fix default handling for VIP nobind option
* interfaces: allow VIP nobind feature on CARP addresses
* interfaces: stop mpd5 daemon before starting
* interfaces: always show interface in GIF and GRE overview even on VIP use
* interfaces: fix GIF and GRE VIP use loading order in IP alias cases
* interfaces: remove device creation side effect from bridge, LAGG, GIF, GRE and VLAN GUI pages
* interfaces: prevent DHCP from installing name servers when not allowed
* interfaces: get_interface_list() must exclude OpenVPN
* interfaces: replace obsolete find_interface_network\*() use in GUI
* firewall: remove ruleset optimization support which did not work since rule labels are mandatory for live log
* firewall: exclude external alias for nesting
* firewall: encode rules names in aliases (contributed by kulikov-a)
* firewall: check state before selecting categories (contributed by kulikov-a)
* firewall: synchronise "disabled" flag on linked firewall rule of port forward
* firewall: local file corruption might prevent alias to be loaded
* firewall: default pass all loopback without state tracking
* dhcp: change prefix watcher to work without circular logging now that it is gone
* dhcp: replace obsolete find_interface_network\*() use in GUI
* dhcp: fix implode() call (contributed by Clement Moulin)
* ipsec: replace obsolete find_interface_network\*() use in GUI
* firmware: opnsense-version: support reading lock files operated by opnsense-update
* firmware: patch version / date header in consistently for backend scripts
* mvc: overload __isset() magic method
* plugins: os-bind 1.21 `[1] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/bind/pkg-descr>`__
* plugins: os-ddclient 1.1 `[2] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/ddclient/pkg-descr>`__
* plugins: os-dnscrypt-proxy 1.11 `[3] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/dnscrypt-proxy/pkg-descr>`__
* plugins: os-dyndns menu compatibility with os-ddclient
* plugins: os-frr 1.27 `[4] <https://github.com/opnsense/plugins/blob/stable/22.1/net/frr/pkg-descr>`__
* plugins: os-mdns-repeater 1.1 `[5] <https://github.com/opnsense/plugins/blob/stable/22.1/net/mdns-repeater/pkg-descr>`__
* plugins: os-rspamd 1.12 `[6] <https://github.com/opnsense/plugins/blob/stable/22.1/mail/rspamd/pkg-descr>`__
* plugins: os-zabbix-agent 1.11 `[7] <https://github.com/opnsense/plugins/blob/stable/22.1/net-mgmt/zabbix-agent/pkg-descr>`__
* src: pf: set_prio was not set after nvlist conversion
* src: if_vtnet: Restore the ability to set promisc mode
* src: hn: disable Hyper-V vSwitch RSC support
* ports: curl 7.81.0 `[8] <https://curl.se/changes.html#7_81_0>`__
* ports: expat 2.4.4 `[9] <https://github.com/libexpat/libexpat/blob/R_2_4_4/expat/Changes>`__
* ports: lighttpd 1.4.64 `[10] <https://www.lighttpd.net/2022/1/19/1.4.64/>`__
* ports: monit 5.30.0 `[11] <https://mmonit.com/monit/changes/>`__
* ports: nss 3.75 `[12] <https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.75_release_notes>`__
* ports: pcre / pcre2 enable JIT support
* ports: phpseclib 2.0.36 `[13] <https://github.com/phpseclib/phpseclib/releases/tag/2.0.36>`__
* ports: strongswan 5.9.5 `[14] <https://github.com/strongswan/strongswan/releases/tag/5.9.5>`__
* ports: sudo 1.9.9 `[15] <https://www.sudo.ws/stable.html#1.9.9>`__
A hotfix release was issued as 22.1.1_1:
* interfaces: revert "prevent DHCP from installing name servers when not allowed"
A hotfix release was issued as 22.1.1_3:
* interfaces: revert "get_interface_list() must exclude OpenVPN"
* web proxy: fix a typo in extended logging parser (contributed by kulikov-a)
--------------------------------------------------------------------------
22.1 (January 27, 2022)
--------------------------------------------------------------------------
For more than 7 years now, OPNsense is driving innovation through
modularising and hardening the open source firewall, with simple
and reliable firmware upgrades, multi-language support, fast adoption
of upstream software updates as well as clear and stable 2-Clause BSD
licensing.
22.1, nicknamed "Observant Owl", features the upgrade to FreeBSD 13,
switch to logging supporting RFC 5424 with severity filtering, improved
tunable sysctl value integration, faster boot sequence and interface
initiation and dynamic IPv6 host alias support amongst others.
On the flip side major operating system changes bear risk for regression
and feature removal, e.g. no longer supporting insecure cryptography in
the kernel for IPsec and switching the Realtek vendor driver back to its
FreeBSD counterpart which does not yet support the newer 2.5G models.
Circular logging support has also been removed. Make sure to read the
known issues and limitations below before attempting to upgrade.
Download links, an installation guide `[1] <https://docs.opnsense.org/manual/install.html>`__ and the checksums for the images
can be found below as well.
* Europe: https://opnsense.c0urier.net/releases/22.1/
* US East Coast: https://mirror.wdc1.us.leaseweb.net/opnsense/releases/22.1/
* US West Coast: https://mirror.sfo12.us.leaseweb.net/opnsense/releases/22.1/
* South America: http://mirror.ueb.edu.ec/opnsense/releases/22.1/
* East Asia: https://mirror.ntct.edu.tw/opnsense/releases/22.1/
* Full mirror list: https://opnsense.org/download/
Here are the full patch notes against version 21.7.7:
* system: improved visibility and flexibility of tunables
* system: move multiple sysctl manipulations to tunables framework to allow overriding them
* system: prevent more than one default route by default
* system: sync recovery utility contents with FreeBSD 13
* system: prevent syslog-ng from crashing after update due to "syslog-ng-ctl reload" use
* system: add severity to syslog output and allow to filter for it
* system: create latest.log links for easier log consumption
* system: added opnsense-log utility to inspect logs on the console
* system: removed circular logging support
* system: background all cron backend command invokes
* system: unified cron start between legacy and MVC components
* system: improve the fallback after failing to look up specific IPv4 address match for dpinger
* system: use correct IPv6 interface for dpinger gateway monitoring when using 6RD
* system: default net.inet6.ip6.intr_queue_maxlen to 1000 like its IPv4 counterpart
* system: default net.inet6.ip6.redirect to off like its IPv4 counterpart
* system: fix potential issues with "search" syntax in resolv.conf
* system: fix general settings PHP warnings that only appear when validation fails
* system: allow additional search domain (Pierre Fevre)
* system: make /var MFS work when /var directories are mount points, e.g. on ZFS
* system: optionally disconnect PPP interfaces when going into CARP backup mode
* system: fix new PPP CARP hook function call (contributed by Markus Reiter)
* system: separate core and thread count in information widget
* system: MSDOS file system awareness in information widget for new /boot/efi partition
* system: no longer display duplicated mounted partitions on the dashboard
* system: remove spurious XML validation that cannot cope with attributes from backup restore
* system: refactor GUI rebind protection and remove its os-dyndns/os-rfc2136 references
* reporting: fix display of total in/out traffic values
* interfaces: LAGG support in console port assignment (contributed by sarthurdev)
* interfaces: improve LAGG/VLAN assignments via console option
* interfaces: repair get_interface_list() for console use
* interfaces: aligned the name and use of special /tmp files for internal interface handling
* interfaces: correctly write nameserverv6 and searchdomainv6 information on dhcp6c lease acquire
* interfaces: make cache IP files exclusive to rc.newwan and rc.newwanv6 scripts to avoid missing IP changes
* interfaces: refactored linkup event handler to avoid unnecessary recursion in the code
* interfaces: removed opportunistic functions find_interface_ip(), find_interface_ipv6() and find_interface_ipv6_ll()
* interfaces: get_interface_ip() and get_interface_ipv6() now return a valid IP address if one was given to support VIP aliases
* interfaces: interfaces_addresses() can now map a configuration interface to returned addresses to track its origin
* interfaces: VIPs now support the "no bind" option to exclude them from automatic service use when configured
* interfaces: interfaces_primary_address() is now being used like its IPv6 equivalent throughout the code
* interfaces: interfaces_primary_address6() is now considering addresses from tracking interfaces when needed
* interfaces: interfaces_scoped_address6() is now being used throughout the code
* interfaces: "tentative" state now leads to the address being ignored during configuration like "deprecated"
* interfaces: removed unmaintained 3G statistics gathering for Huawei modems that could lock up other modems
* interfaces: reworked interface creation on boot up
* interfaces: spoof MAC now only applies to actual interface and not all of its VLAN siblings or parent
* interfaces: added permanent promiscuous mode setting
* interfaces: add the interface description via ifconfig to its respective device
* interfaces: stop special treatment of bridge interfaces on linkup
* interfaces: improve validations and fix defaults for bridges
* interfaces: allow bridges to attach to VXLAN on boot
* interfaces: background all interface reconfiguration script hooks
* interfaces: no longer allow and apply media configuration for non-parent devices
* interfaces: removed restriction from interfaces without configuration to not being able to hold VIPs
* interfaces: remove defunct link support for GRE
* interfaces: align GIF configuration with base system options
* firewall: properly kill all connections from and to a WAN IPv4 on an address change
* firewall: skip rule ID for NAT type log entries (contributed by kulikov-a)
* firewall: display interface descriptions on normalisation rules (contributed by vnxme)
* firewall: dynamic IPv6 host alias support (contributed by Team Rebellion)
* firewall: removed obsolete kill states option on gateway failure
* firewall: removed the $aliastable cache
* firewall: support "no scrub" option in normalisation rules
* firewall: correctly handle IPv6 NAT in states view
* firewall: plain log default logging severity selection is now "informational"
* firewall: improve maximum shaper value validation and add Gbit/s support
* captive portal: prevent session removal crashing when no IP address was registered
* dhcp: allow for ARM architectures in network boot options (contributed by Keith Cirkel)
* dhcp: allow router advertisements to use a specific link-local VIP alias
* dhcp: refactor the IPv4 and IPv6 configuration pages and add minimal subnet size requirement hints
* dhcp: rework router advertisement "static" mode flags to separate advanced options
* dnsmasq: fix all-server overwriting strict-order configuration directive (contributed by Christian Tramnitz)
* dnsmasq: no-hosts option (contributed by agh1467)
* firmware: add a "status_reboot" variable to API return data to make clear it belongs to the offered minor update or major upgrade
* firmware: add random delays to existing firmware cron jobs to avoid update server load spikes
* firmware: added an automatic cron job to fetch changelog daily to use it as a lightweight check for updates on the dashboard
* firmware: implement cross-ABI reinstall of all packages for future use
* firmware: opnsense-update: exclude /boot/efi permission reset from base set extract
* firmware: removed obsolete business repository fingerprints and added 22.1 fingerprint
* firmware: return product info for status endpoint even when no firmware check was done
* installer: fix installation of rc.conf keymap setting selected earlier during installation
* installer: add EFI partition as a default mount point
* installer: increase EFI partition size to 260 MB
* installer: improve disk and ZFS pool scan and display
* intrusion detection: prevent config migration from crashing
* intrusion detection: update to ET-Open to version 6
* ipsec: update security of default settings when creating new phase 1 and 2
* ipsec: remove hashes and algorithms no longer supported by FreeBSD 13
* ipsec: migrated tunnel settings page to MVC
* lang: update translations for Chinese, French, German, Italian, Japanese, Norwegian, Spanish, and Turkish
* lang: demote Italian to development-only language due to lowered translation ratio
* monit: move logging to own target
* network time: add "iburst" option and stop using it by default (contributed by Patrick M. Hausen)
* network time: detach "limited" from "kod" option (contributed by Zsolt Zsiros)
* network time: remove PID file use as it can be unreliable
* openvpn: kill by common name when kill by address does not work
* unbound: disable do-not-query-localhost on local address server use
* unbound: update DNS with hostname-only static entries (contributed by Gareth Owen)
* update: opnsense-bootstrap: -z snapshot mode
* update: opnsense-bootstrap: improved type detection
* update: opnsense-code: -r for repository removal
* update: opnsense-fetch: emit error message of failed download
* update: opnsense-update: handle kernel debug directory like /boot/kernel
* update: opnsense-update: removed "firmware-upgrade" file support
* update: opnsense-verify: synced shared code with FreeBSD 13
* backend: unify use of configctl utility
* images: removed deprecated os-dyndns plugin from default installation
* mvc: fix logging of configd errors
* mvc: Add BlankDesc to ModelRelationField (contributed by agh1467)
* mvc: emulation versioning empty nodes for the legacy configuration sections
* mvc: add getInterfaceConfig endpoint to interface API (contributed by Paolo Asperti)
* mvc: add hint support for text fields (contributed by agh1467)
* ui: add support for terabytes, and petabytes to format_bytes() (contributed by agh1467)
* ui: universal striping adjustment for MVC components (contributed by kulikov-a)
* ui: move storing jQuery Bootgrid settings in browser from core to bootgrid (contributed by Manuel Faux)
* src: FreeBSD 13-STABLE as of 4ee9fbcd853
* src: migrated to LUA boot loader (contributed by Kyle Evans)
* src: revert upstream permission change for /root directory
* src: fix kernel build creating wrong linkers.hint file
* src: carp: fix send error demotion recovery
* src: ixgbe: prevent subsequent I2C bus read timeouts
* src: reworked shared forwarding
* plugins: os-acme-client 3.8 `[2] <https://github.com/opnsense/plugins/blob/stable/22.1/security/acme-client/pkg-descr>`__
* plugins: os-bind 1.20 `[3] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/bind/pkg-descr>`__
* plugins: os-ddclient 1.0 as an eventual replacement for os-dyndns
* plugins: os-dyndns adds local copy of get_dyndns_ip()
* plugins: os-freeradius 1.9.18 `[4] <https://github.com/opnsense/plugins/blob/stable/22.1/net/freeradius/pkg-descr>`__
* plugins: os-frr 1.26 `[5] <https://github.com/opnsense/plugins/blob/stable/22.1/net/frr/pkg-descr>`__
* plugins: os-haproxy 3.10 `[6] <https://github.com/opnsense/plugins/blob/stable/22.1/net/haproxy/pkg-descr>`__
* plugins: os-nginx 1.26 `[7] <https://github.com/opnsense/plugins/blob/stable/22.1/www/nginx/pkg-descr>`__
* plugins: os-openconnect 1.4.2 `[8] <https://github.com/opnsense/plugins/blob/stable/22.1/security/openconnect/pkg-descr>`__
* plugins: os-postfix 1.21 `[9] <https://github.com/opnsense/plugins/blob/stable/22.1/mail/postfix/pkg-descr>`__
* plugins: os-rfc2136 adds local copy of get_dyndns_ip()
* plugins: os-telegraf 1.12.4 `[10] <https://github.com/opnsense/plugins/blob/stable/22.1/net-mgmt/telegraf/pkg-descr>`__
* plugins: os-wireguard 1.10 `[11] <https://github.com/opnsense/plugins/blob/stable/22.1/net/wireguard/pkg-descr>`__
* plugins: os-wol adds cron support for wake action (contributed by digitalshow)
* plugins: os-zabbix-proxy 1.7 `[12] <https://github.com/opnsense/plugins/blob/stable/22.1/net-mgmt/zabbix-proxy/pkg-descr>`__
* ports: expat 2.4.2 `[13] <https://github.com/libexpat/libexpat/blob/R_2_4_2/expat/Changes>`__
* ports: filterlog 0.6 `[14] <https://github.com/opnsense/ports/commit/2e27655d84>`__
* ports: flock 2.37.2
* ports: hostapd 2.10 `[15] <https://w1.fi/cgit/hostap/plain/hostapd/ChangeLog>`__
* ports: lighttpd 1.4.63 `[16] <https://www.lighttpd.net/2021/12/4/1.4.63/>`__
* ports: nss 3.74 `[17] <https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.74_release_notes>`__
* ports: openssl 1.1.1m `[18] <https://www.openssl.org/news/openssl-1.1.1-notes.html>`__
* ports: openvpn 2.5.5 `[19] <https://community.openvpn.net/openvpn/wiki/ChangesInOpenvpn25#Changesin2.5.5>`__
* ports: pecl-psr 1.2.0 `[20] <https://pecl.php.net/package-changelog.php?package=psr&release=1.2.0>`__
* ports: phalcon 4.1.3 `[21] <https://github.com/phalcon/cphalcon/releases/tag/v4.1.3>`__
* ports: php 7.4.27 `[22] <https://www.php.net/ChangeLog-7.php#7.4.27>`__
* ports: pkg fixes validation failures on HTTPS fetch in static binary `[23] <https://cgit.freebsd.org/ports/commit/?id=08342c9812d>`__
* ports: sqlite 3.37.2 `[24] <https://sqlite.org/releaselog/3_37_2.html>`__
* ports: syslog-ng 3.35.1 `[25] <https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-3.35.1>`__
* ports: unbound 1.14.0 `[26] <https://nlnetlabs.nl/projects/unbound/download/#unbound-1-14-0>`__
* ports: wpa_supplicant 2.10 `[27] <https://w1.fi/cgit/hostap/plain/wpa_supplicant/ChangeLog>`__
Known issues and limitations:
* This release contains a new major operating system version and should be carried out with the necessary care. Despite extended test coverage changes made by FreeBSD may still affect operation without our knowledge. Except for ZFS boot environments rollbacks between major operating system versions are extremely fragile and a reinstall of an older version should be attempted in the worst case. For more information please consult the FreeBSD 13.0 release notes `[28] <https://www.freebsd.org/releases/13.0R/relnotes/>`__ .
* IPsec hash and cipher removals in FreeBSD 13 can affect existing setups as insecure cryptographic options have been removed upstream. If you are using MD5, Blowfish, DES, 3DES, or CAST128 in your phase 2 please move to more secure settings prior to the upgrade. Note that phase 1 settings are unaffected, but insecure settings should still be avoided. For more information see the FreeBSD commit in question `[29] <https://github.com/opnsense/src/commit/16aabb761c0a>`__ .
* The Realtek vendor driver is no longer bundled with the updated FreeBSD kernel. If unsure whether FreeBSD 13 supports your Realtek NIC please install the os-realtek-re plugin prior to upgrading to retain operability of your NICs.
* MAC spoofing now only pertains to the configured interface and not the VLAN siblings or parent interface. This can introduce unwanted configuration due to previous side effects in the code. Make sure to assign and set the spoofed MAC for all interfaces that require a spoofed MAC or simply spoof the MAC on the parent and leave the VLAN sibling settings empty to let them follow the parent MAC automatically. If in doubt the parent interface can be set into promiscuous mode now to allow for mixed MAC address use across VLANs too.
* Media and hardware offload settings are no longer shown for non-parent interfaces and need to be set individually on the parent interface to take effect. This can introduce unwanted configuration due to previous side effects in the code. If the parent interface was not previously assigned please assign it to reapply the required settings.
* NTPD defaults changed to exclude the "iburst" option by default. "limited" setting was detached from "kod" option. In both cases configuration adjustments can achieve previous behaviour if required.
* Rebind checks through os-dyndns or os-rfc2136 will no longer work due to the deprecation of both plugins. Please add your rebind hosts manually or disable rebind protection prior to the upgrade.
* GRE link1 support has been removed and needs a static route to function now.
* Circular logging support has been removed. No user interaction is required.
The public key for the 22.1 series is:
.. code-block::
# -----BEGIN PUBLIC KEY-----
# MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1o1Bk31AcX5xsqgVAoWQ
# 1fTDznz22ojsK+qCkhW7MKSWlCyEZYEueUtq7hOt/gqttc3qT0WgHjhjI/WE2RQ4
# 53yfSw/2DDdt3v2WRoupaMzu2Px6I0A+dzo/DM0UWHHsjUaa1HnTvrC14W2vy9wY
# rdotDpp6vSA3WoBmpz+6cpAOlOMTboJouaZy2gSAAcFUmnmP6KDE+lQEqudENTpr
# wb/tIILTE3s6HMBrnmyTNz3Oyy77qH0Xq4mU0r+GS3If0LN+zIr3evt/hhS80otG
# 4WA2ifFeoZVUC//ArAqRiuOJKWvDe5455W1tOuoLkVKVwWMUd1YjaLq8/SRNtTVT
# jRWO6znUHJa7LKtwY7SJvJ8bl8kR8QnrEBRLqT3IA+FcRH+8RaeCivPV7oS1tMiV
# 7hUmu4yXkiMU9c/RrUj7UGZfPKa6K1yP2p3pRvHwCpMclhlVdaiAGNQ8X1GmUAmg
# 3hsoay1ximpj0Yzs+ynDdT1WPkjx8+mDWI08qTuVX+KN3xiohzjxUyD6kBbw2N4z
# EkKTu36KLxo+Hs2iHh4iPWV+EZ5pBn/BseUeHha+V76xM/fPU3H2htwF6/lAz3KH
# J6cevsMenCaYBAqpUsQMBjxhDgMmpCcjiZRPijFpe5zsNSUD1NJ8QMpecBZCE6Vt
# YHWiWxZTN13z4mPqA4uebakCAwEAAQ==
# -----END PUBLIC KEY-----
.. code-block::
# SHA256 (OPNsense-22.1-OpenSSL-dvd-amd64.iso.bz2) = 72146dd3a8e57774ad12dbaa503c19111e5f1c43db63a32ad2dab6b3ea6f12f1
# SHA256 (OPNsense-22.1-OpenSSL-nano-amd64.img.bz2) = ec3b3c5fafc39e9d67c500a31d6c0be99566a130a158a2ae60904e6a6854bf1f
# SHA256 (OPNsense-22.1-OpenSSL-serial-amd64.img.bz2) = 418e4abc233a89c11e296f7e510e2074242dc2a285a042592171d45b257c4857
# SHA256 (OPNsense-22.1-OpenSSL-vga-amd64.img.bz2) = f791e9024888f5f668175a78cbbcd9eb96b36ba523f38d00cad9dd4d64243b4f
--------------------------------------------------------------------------
22.1.r2 (January 20, 2022)
--------------------------------------------------------------------------
Quick update on the 22.1 front includes feedback from the RC1 release,
a FreeBSD package tool fix for its static binary failing to validate
certain TLS certificates and a number of small improvements that do not
fit into the former categories.
The 22.1 release is scheduled for January 27 which is next week already. ;)
Here are the full patch notes:
* system: use correct IPv6 interface for dpinger gateway monitoring when using 6RD
* system: remove spurious XML validation that cannot cope with attributes from backup restore
* system: sync recovery utility contents with FreeBSD 13
* system: fix new PPP CARP hook function call (contributed by Markus Reiter)
* system: allow additional search domain (Pierre Fevre)
* system: fix general settings PHP warnings that only appear when validation fails
* system: move multiple sysctl manipulations to tunables framework to allow overriding them
* system: prevent more than one default route by default
* system: prevent syslog-ng from crashing after update due to "syslog-ng-ctl reload" use
* system: MSDOS file system awareness in information widget for new /boot/efi partition
* system: separate core and thread count in information widget
* system: refactor GUI rebind protection and remove its os-dyndns/os-rfc2136 references
* reporting: fix display of total in/out traffic values
* interfaces: improve validations and fix defaults for bridges
* interfaces: remove defunct link support for GRE
* interfaces: align GIF configuration with base system options
* interfaces: allow bridges to attach to VXLAN on boot
* interfaces: repair get_interface_list() for console use
* interfaces: improve LAGG/VLAN assignments via console option
* firewall: plain log default logging severity selection is now "informational"
* firewall: improve maximum shaper value validation and add Gbit/s support
* dhcp: rework router advertisement "static" mode flags to separate advanced options
* dnsmasq: no-hosts option (contributed by agh1467)
* firmware: opnsense-update: exclude /boot/efi permission reset from base set extract
* intrusion detection: prevent config migration from crashing
* intrusion detection: update to ET-Open to version 6
* network time: detach "limited" from "kod" option (contributed by Zsolt Zsiros)
* network time: remove PID file use as it can be unreliable
* mvc: fix logging of configd errors
* mvc: Add BlankDesc to ModelRelationField (contributed by agh1467)
* ui: move storing jQuery Bootgrid settings in browser from core to bootgrid (contributed by Manuel Faux)
* plugins: os-ddclient 1.0 as an eventual replacement for os-dyndns
* plugins: os-dyndns adds local copy of get_dyndns_ip()
* plugins: os-freeradius 1.9.18 `[1] <https://github.com/opnsense/plugins/blob/stable/22.1/net/freeradius/pkg-descr>`__
* plugins: os-nginx 1.26 `[2] <https://github.com/opnsense/plugins/blob/stable/22.1/www/nginx/pkg-descr>`__
* plugins: os-rfc2136 adds local copy of get_dyndns_ip()
* plugins: os-wol adds cron support for wake action (contributed by digitalshow)
* src: revert upstream permission change for /root directory
* src: fix kernel build creating wrong linkers.hint file
* ports: hostapd 2.10 `[3] <https://w1.fi/cgit/hostap/plain/hostapd/ChangeLog>`__
* ports: nss 3.74 `[4] <https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.74_release_notes>`__
* ports: pecl-psr 1.2.0 `[5] <https://pecl.php.net/package-changelog.php?package=psr&release=1.2.0>`__
* ports: pkg fixes validation failures on HTTPS fetch in static binary `[6] <https://cgit.freebsd.org/ports/commit/?id=08342c9812d>`__
* ports: sqlite 3.37.2 `[7] <https://sqlite.org/releaselog/3_37_2.html>`__
* ports: syslog-ng 3.35.1 `[8] <https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-3.35.1>`__
* ports: wpa_supplicant 2.10 `[9] <https://w1.fi/cgit/hostap/plain/wpa_supplicant/ChangeLog>`__
--------------------------------------------------------------------------
22.1.r1 (January 12, 2022)
--------------------------------------------------------------------------
For more than 7 years now, OPNsense is driving innovation through
modularising and hardening the open source firewall, with simple
and reliable firmware upgrades, multi-language support, fast adoption
of upstream software updates as well as clear and stable 2-Clause BSD
licensing.
We thank all of you for helping test, shape and contribute to the project!
We know it would not be the same without you. <3
Download links, an installation guide `[1] <https://docs.opnsense.org/manual/install.html>`__ and the checksums for the images
can be found below as well.
* Europe: https://opnsense.c0urier.net/releases/22.1/
* US East Coast: https://mirror.wdc1.us.leaseweb.net/opnsense/releases/22.1/
* US West Coast: https://mirror.sfo12.us.leaseweb.net/opnsense/releases/22.1/
* South America: http://mirror.ueb.edu.ec/opnsense/releases/22.1/
* East Asia: https://mirror.ntct.edu.tw/opnsense/releases/22.1/
* Full mirror list: https://opnsense.org/download/
Here are the full patch notes against 21.7.7:
* system: improved visibility and flexibility of tunables
* system: create latest.log links for easier log consumption
* system: added opnsense-log utility to inspect logs on the console
* system: removed circular logging support
* system: background all cron backend command invokes
* system: unified cron start between legacy and MVC components
* system: improve the fallback after failing to look up specific IPv4 address match for dpinger
* system: default net.inet6.ip6.intr_queue_maxlen to 1000 like its IPv4 counterpart
* system: default net.inet6.ip6.redirect to off like its IPv4 counterpart
* system: fix potential issues with "search" syntax in resolv.conf
* system: make /var MFS work when /var directories are mount points, e.g. on ZFS
* system: optionally disconnect PPP interfaces when going into CARP backup mode
* system: add severity to syslog output and allow to filter for it
* system: no longer display duplicated mounted partitions on the dashboard
* interfaces: LAGG support in console port assignment (contributed by sarthurdev)
* interfaces: aligned the name and use of special /tmp files for internal interface handling
* interfaces: removed opportunistic functions find_interface_ip(), find_interface_ipv6() and find_interface_ipv6_ll()
* interfaces: get_interface_ip() and get_interface_ipv6() now return a valid IP address if one was given to support VIP aliases
* interfaces: interfaces_addresses() can now map a configuration interface to returned addresses to track its origin
* interfaces: VIPs now support the "no bind" option to exclude them from automatic service use when configured
* interfaces: interfaces_primary_address() is now being used like its IPv6 equivalent throughout the code
* interfaces: interfaces_primary_address6() is now considering addresses from tracking interfaces when needed
* interfaces: interfaces_scoped_address6() is now being used throughout the code
* interfaces: "tentative" state now leads to the address being ignored during configuration like "deprecated"
* interfaces: removed unmaintained 3G statistics gathering for Huawei modems that could lock up other modems
* interfaces: reworked interface creation on boot up
* interfaces: spoof MAC now only applies to actual interface and not all of its VLAN siblings or parent
* interfaces: added permanent promiscuous mode setting
* interfaces: add the interface description via ifconfig to its respective device
* interfaces: stop special treatment of bridge interfaces on linkup
* interfaces: correctly write nameserverv6 and searchdomainv6 information on dhcp6c lease acquire
* interfaces: background all interface reconfiguration script hooks
* interfaces: refactored linkup event handler to avoid unnecessary recursion in the code
* interfaces: make cache IP files exclusive to rc.newwan and rc.newwanv6 scripts to avoid missing IP changes
* interfaces: no longer allow and apply media configuration for non-parent devices
* interfaces: removed restriction from interfaces without configuration to not being able to hold VIPs
* firewall: properly kill all connections from and to a WAN IPv4 on an address change
* firewall: skip rule ID for NAT type log entries (contributed by kulikov-a)
* firewall: display interface descriptions on normalisation rules (contributed by vnxme)
* firewall: dynamic IPv6 host alias support (contributed by Team Rebellion)
* firewall: removed obsolete kill states option on gateway failure
* firewall: removed the $aliastable cache
* dhcp: allow for ARM architectures in network boot options (contributed by Keith Cirkel)
* dhcp: allow router advertisements to use a specific link-local VIP alias
* dhcp: refactor the IPv4 and IPv6 configuration pages and add minimal subnet size requirement hints
* dnsmasq: fix all-server overwriting strict-order configuration directive (contributed by Christian Tramnitz)
* firmware: add a "status_reboot" variable to API return data to make clear it belongs to the offered minor update or major upgrade
* firmware: add random delays to existing firmware cron jobs to avoid update server load spikes
* firmware: added an automatic cron job to fetch changelog daily to use it as a lightweight check for updates on the dashboard
* firmware: return product info for status endpoint even when no firmware check was done
* firmware: removed obsolete business repository fingerprints and added 22.1 fingerprint
* firmware: implement cross-ABI reinstall of all packages for future use
* installer: fix installation of rc.conf keymap setting selected earlier during installation
* installer: improve disk and ZFS pool scan and display
* installer: increase EFI partition size to 260 MB
* installer: add EFI partition as a default mount point
* ipsec: update security of default settings when creating new phase 1 and 2
* ipsec: remove hashes and algorithms no longer supported by FreeBSD 13
* ipsec: migrated tunnel settings page to MVC
* lang: update translations for Chinese, French, German, Italian, Japanese, Norwegian, Spanish, and Turkish
* lang: demote Italian to development-only language due to lowered translation ratio
* monit: move logging to own target
* network time: add iburst option and stop using it by default (contributed by Patrick M. Hausen)
* openvpn: kill by common name when kill by address does not work
* unbound: disable do-not-query-localhost on local address server use
* unbound: update DNS with hostname-only static entries (contributed by Gareth Owen)
* update: opnsense-bootstrap: -z snapshot mode
* update: opnsense-bootstrap: improved type detection
* update: opnsense-code: -r for repository removal
* update: opnsense-fetch: emit error message of failed download
* update: opnsense-update: handle kernel debug directory like /boot/kernel
* update: opnsense-update: removed "firmware-upgrade" file support
* update: opnsense-verify: synced shared code with FreeBSD 13
* backend: unify use of configctl utility
* images: removed deprecated os-dyndns plugin from default installation
* mvc: emulation versioning empty nodes for the legacy configuration sections
* mvc: add getInterfaceConfig endpoint to interface API (contributed by Paolo Asperti)
* mvc: add hint support for text fields (contributed by agh1467)
* ui: add support for terabytes, and petabytes to format_bytes() (contributed by agh1467)
* ui: universal striping adjustment for MVC components (contributed by kulikov-a)
* src: FreeBSD 13-STABLE as of 4ee9fbcd853
* src: reworked shared forwarding
* src: migrated to LUA boot loader (contributed by Kyle Evans)
* plugins: os-acme-client 3.8 `[2] <https://github.com/opnsense/plugins/blob/stable/22.1/security/acme-client/pkg-descr>`__
* plugins: os-bind 1.20 `[3] <https://github.com/opnsense/plugins/blob/stable/22.1/dns/bind/pkg-descr>`__
* plugins: os-frr 1.25 `[4] <https://github.com/opnsense/plugins/blob/stable/22.1/net/frr/pkg-descr>`__
* plugins: os-haproxy 3.9 `[5] <https://github.com/opnsense/plugins/blob/stable/22.1/net/haproxy/pkg-descr>`__
* plugins: os-nginx 1.25 `[6] <https://github.com/opnsense/plugins/blob/stable/22.1/www/nginx/pkg-descr>`__
* plugins: os-openconnect 1.4.2 `[7] <https://github.com/opnsense/plugins/blob/stable/22.1/security/openconnect/pkg-descr>`__
* plugins: os-postfix 1.21 `[8] <https://github.com/opnsense/plugins/blob/stable/22.1/mail/postfix/pkg-descr>`__
* plugins: os-telegraf 1.12.4 `[9] <https://github.com/opnsense/plugins/blob/stable/22.1/net-mgmt/telegraf/pkg-descr>`__
* plugins: os-zabbix-proxy 1.7 `[10] <https://github.com/opnsense/plugins/blob/stable/22.1/net-mgmt/zabbix-proxy/pkg-descr>`__
* ports: expat 2.4.2 `[11] <https://github.com/libexpat/libexpat/blob/R_2_4_2/expat/Changes>`__
* ports: filterlog 0.6 `[12] <https://github.com/opnsense/ports/commit/2e27655d84>`__
* ports: flock 2.37.2
* ports: lighttpd 1.4.63 `[13] <https://www.lighttpd.net/2021/12/4/1.4.63/>`__
* ports: nss 3.73.1 `[14] <https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.73.1_release_notes>`__
* ports: openssl 1.1.1m `[15] <https://www.openssl.org/news/openssl-1.1.1-notes.html>`__
* ports: openvpn 2.5.5 `[16] <https://community.openvpn.net/openvpn/wiki/ChangesInOpenvpn25#Changesin2.5.5>`__
* ports: phalcon 4.1.3 `[17] <https://github.com/phalcon/cphalcon/releases/tag/v4.1.3>`__
* ports: php 7.4.27 `[18] <https://www.php.net/ChangeLog-7.php#7.4.27>`__
* ports: sqlite 3.37.1 `[19] <https://sqlite.org/releaselog/3_37_1.html>`__
* ports: unbound 1.14.0 `[20] <https://nlnetlabs.nl/projects/unbound/download/#unbound-1-14-0>`__
Known issues and limitations:
* This release contains a new major operating system version and should be carried out with the necessary care. Despite extended test coverage changes made by FreeBSD may still affect operation without our knowledge.
* MAC spoofing now only pertains to the configured interface and not the VLAN siblings or parent interface. This can introduces unwanted configuration due to previous side effects in the code. Make sure to assign and set the spoofed MAC for all interfaces that require a spoofed MAC.
* Media settings are no longer shown for non-parent interfaces and need to be set individually to take effect. This can introduce unwanted configuration due to previous side effects in the code. If the parent interface was not previously assigned please assign it to reapply the required media settings.
* Router advertisement static mode option is still subject to change in this release candidate series.
* IPsec hash and cipher removals in FreeBSD 13 can affect existing setups as insecure cryptographic options have been removed upstream. For more information see the FreeBSD commit in question `[21] <https://github.com/opnsense/src/commit/16aabb761c0a>`__ . We will be adding an explict configuration check to 21.7 before its end of life.
* Circular logging support has been removed. No user interaction is required.
* The migration notes are subject to change and will be extended as needed in the upcoming weeks.
The public key for the 22.1 series is:
.. code-block::
# -----BEGIN PUBLIC KEY-----
# MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1o1Bk31AcX5xsqgVAoWQ
# 1fTDznz22ojsK+qCkhW7MKSWlCyEZYEueUtq7hOt/gqttc3qT0WgHjhjI/WE2RQ4
# 53yfSw/2DDdt3v2WRoupaMzu2Px6I0A+dzo/DM0UWHHsjUaa1HnTvrC14W2vy9wY
# rdotDpp6vSA3WoBmpz+6cpAOlOMTboJouaZy2gSAAcFUmnmP6KDE+lQEqudENTpr
# wb/tIILTE3s6HMBrnmyTNz3Oyy77qH0Xq4mU0r+GS3If0LN+zIr3evt/hhS80otG
# 4WA2ifFeoZVUC//ArAqRiuOJKWvDe5455W1tOuoLkVKVwWMUd1YjaLq8/SRNtTVT
# jRWO6znUHJa7LKtwY7SJvJ8bl8kR8QnrEBRLqT3IA+FcRH+8RaeCivPV7oS1tMiV
# 7hUmu4yXkiMU9c/RrUj7UGZfPKa6K1yP2p3pRvHwCpMclhlVdaiAGNQ8X1GmUAmg
# 3hsoay1ximpj0Yzs+ynDdT1WPkjx8+mDWI08qTuVX+KN3xiohzjxUyD6kBbw2N4z
# EkKTu36KLxo+Hs2iHh4iPWV+EZ5pBn/BseUeHha+V76xM/fPU3H2htwF6/lAz3KH
# J6cevsMenCaYBAqpUsQMBjxhDgMmpCcjiZRPijFpe5zsNSUD1NJ8QMpecBZCE6Vt
# YHWiWxZTN13z4mPqA4uebakCAwEAAQ==
# -----END PUBLIC KEY-----
Please let us know about your experience!
.. code-block::
# SHA256 (OPNsense-22.1.r1-OpenSSL-dvd-amd64.iso.bz2) = c6388b7960ec8e65a89dd8baf0a118410340f94b260bfea64faf3008c525376e
# SHA256 (OPNsense-22.1.r1-OpenSSL-nano-amd64.img.bz2) = 10aa979b754c8d4b0ffdad4c8befa1ab3b0bb146981333d5731ffa5c7b99b9b3
# SHA256 (OPNsense-22.1.r1-OpenSSL-serial-amd64.img.bz2) = e09addbab2a479cd5155926373c2bbe141d3f6aa057f044b43d9ad11fcc75e85
# SHA256 (OPNsense-22.1.r1-OpenSSL-vga-amd64.img.bz2) = 7f02135fdddf6227fd1ef4bb3012ce83b622bf7ec18baadaf03105792a38576c