25.11 New Features and Changes¶
This is a regularly scheduled software release including new features and bug fixes.
Tip
Review the Upgrade Guide before performing any upgrade of pfSense software.
Errata¶
rtsold¶
FreeBSD published security advisory FreeBSD-SA-25:12.rtsold for
a remote command execution vulnerability in rtsold, which also affects
pfSense software:
A fix for this issue is available via the Recommended System Patches function of the System Patches Package for users running pfSense Plus software version 25.11, pfSense Plus software version 25.07.1, and pfSense CE software version 2.8.1. Users of older versions can upgrade to a supported release or apply the patch on Redmine issue #16593.
IPv6 connection failures with TSO enabled¶
PF may receive packets that do not fit the interface MTU. This can happen when the packet should not be fragmented (e.g. with IPv6, or IPv4 flagged with DF) while the non-default TCP segmentation offload (TSO) behavior is enabled. When this happens for connections from the firewall itself, the connection is terminated.
Users with TSO enabled have reported this problem happening when attempting to communicate with Netgate servers over IPv6 for packages, updates, and so on. We have not received any reports of this happening over IPv4 or for users with TSO disabled.
This problem has been fixed upstream, and the correction will be available in the next release. However, to communicate with Netgate servers and receive updates or packages, affected users running pfSense Plus version 25.11 will need to revert the TSO option back to its default setting.
Navigate to System > Advanced, Networking tab
Check Disable hardware TCP segmentation offload
Click Save
TSO is disabled by default, and keeping TSO disabled is the best practice.
General¶
Base OS updated to FreeBSD 16-CURRENT
OpenSSL upgraded to 3.5.3
OpenSSH upgraded to 10.0p2
PHP updated to 8.4
VXLAN interface support has been re-added
TLS Certificate Strength¶
The version of OpenSSL in this release further tightens certificate requirements and removes support for certain weak properties. For example, if a TLS server certificate for a service such as the GUI has a weak key (<2048 bits), the service may fail with an error such as “key too small”.
Such weak certificates have been deprecated for some time and the GUI has warned against using weak settings, however, if the certificates were generated on other systems and imported, or generated years ago with long lifetimes, users may not realize such certificates are now considered insecure.
Before upgrading, navigate to the System > Certificates, Certificates
tab. On that page, check each TLS server certificate by clicking the
Renew/Reissue icon. On the renewal screen, inspect
the Certificate Properties vs Strict Security table. If any items in the
Would Change column are Yes, then either renew the certificate with
Strict Security checked, or create/import a replacement certificate which
meets these standards.
If the
Renew/Reissue icon is not available for a
certificate, such as for those imported from an external CA, use the
icon to view the certificate properties and check the values
manually.
If the upgrade has already happened and the GUI will not start, then generate and activate a new secure self-signed GUI certificate at a shell prompt with the following command:
# pfSsh.php playback generateguicert
Security¶
Fixed anti-brute force protection bypass and potential denial of service #16312 #16314 pfSense-SA-25_09.sshguard
Endpoint-independent Port Restricted Cone Outbound NAT¶
This version includes partial experimental support for “Port Restricted Cone” endpoint-independent outbound NAT. This functionality must be manually enabled on a per-rule basis.
“Port Restricted Cone” NAT mappings attempt to preserve port and external address mappings for clients when speaking to multiple remote hosts, but in a dynamic way that does not rely on static port NAT. This helps avoid issues with multiple local clients using the same source port to the same remote host. These rules enable a client communicating with multiple remote hosts using the same source port to receive the same external IP address and port on outbound connections to any destination. This behavior facilitates use cases such as online gaming, peer-to-peer connections, and VoIP.
Inbound communication from a remote host and port is only possible after a local client initiates first contact to that remote host and port. While this is more secure, it is not yet capable of “full cone” NAT which some use cases may require such as certain types of online gaming.
pfSense Plus¶
Changes in this version of pfSense Plus software.
Backup / Restore¶
Fixed: RRD data fails to restore via the ECL #16141
Captive Portal¶
Configuration Backend¶
Changed: Improve file handling of the configuration cache #16469
DHCP (IPv4)¶
DHCP (IPv6)¶
Fixed: Hostnames in Kea static leases may not be registered with DNS #16552
DNS Forwarder¶
Fixed: PHP error in DNS Forwarder host overrides when the language is set to French #14741
DNS Resolver¶
Changed: Update Unbound to 1.24.2 to address CVE-2025-11411 #16503
Dashboard¶
Diagnostics¶
Fixed: Captive Portal
backwardsyncpasswordvalue not sanitized in status output #16339
Dynamic DNS¶
Gateway Monitoring¶
Fixed: Gateway monitoring daemon can unexpectedly use a CARP VIP as the source IP address #16322
Gateways¶
Fixed: Gateway list order is incorrect until reloading page after moving entries and saving #16495
Hardware / Drivers¶
IPsec¶
Changed: Update strongSwan to 6.0.3 #16509
IPv6 Router Advertisements (radvd/rtsold)¶
Fixed: Cannot set RADVD router lifetime to
0#16472
Installer¶
Fixed: Configuration data restored during installation can be overwritten by hardware-specific default values #16176
Interfaces¶
Logging¶
OpenVPN¶
Fixed: Automatic IPv6 gateways for OpenVPN servers are created with the wrong gateway address #16351
Fixed: OpenVPN servers will not start with DH parameter lengths less than 2048 #16421
Fixed: OpenVPN does not include
client-to-clientin generated configuration for Peer-to-Peer SSL/TLS servers #16428
Operating System¶
PHP Interpreter¶
Changed: Upgrade PHP to 8.4 #16471
PPP Interfaces¶
Package System¶
Fixed: Error notification and log message
"Updating repositories metadata" returned error code 1at boot due tocertctlrace condition #16341
Rules / NAT¶
Added: Allow floating rules using the “match” action to match based on IP Options #16215
Added: Block non-global NAT64 addresses by default #16241
Changed: Refactor PF ruleset generation #16307
Added: Avoid traffic stalls from unnecessary filter reloads #16308
Fixed: NAT64 rules using
reply-todo not forward packets #16429Fixed: Filter rule evaluation continues after matching a
match quickrule #16475Added: Support state killing on gateway recovery for policy-routed traffic from the firewall itself #16502
Added: Endpoint-independent Port Restricted Cone Outbound NAT rules #16517
Fixed: NAT64 rules do not pass traffic when a gateway is specified for the rule #16546
Changed: Update output and parsing behavior for PHP shell
pfanchordrill#16551
System Logs¶
Fixed: Log entries without a hostname can cause the system log to display in an unexpected manner #15411
Traffic Shaper (Limiters)¶
Fixed: Using a Limiter on a rule with a gateway group limits all traffic through that gateway instead of the host IP address #15770
Translations¶
Fixed: Korean locale configuration name is incorrect #16505
Unknown¶
Fixed: pfSense Plus does not work with AWS new Instance Metadata Service (IMDSv2) #14772
Upgrade¶
User Manager / Privileges¶
Virtual IP Addresses¶
Fixed: Input validation text for deleting an IP Alias VIP within a CARP VIP subnet may reference incorrect VIP #16272
Web Interface¶
XMLRPC¶
Fixed: Membership to
adminsgroup is lost when synchronizing user changes via XMLRPC #16392