pfSense plus 23.01即将发布,这是一个定期发布的软件版本,包括一些新功能和错误修复。
常规部分
- PHP 已经从 7.4 升级到 8.1
- 基本操作系统已升级到 FreeBSD 14-CURRENT
作为 FreeBSD 升级的一部分,此版本删除了几个已弃用的 IPsec 算法:
- 3DES加密
- Blowfish加密
- CAST 128加密
- MD5 HMAC 认证
最佳做法是使用更好的加密方法重新配置隧道并在执行升级之前对其进行测试,以确保平稳过渡。
在升级时,IPsec隧道将被调整从其配置中删除任何已弃用的算法。如果隧道没有剩余的有效加密或身份验证选项,升级过程将禁用隧道。升级过程会通知用户所做的任何更改。
此更改仅影响IPsec,不影响这些算法的其他用途。例如,BGP仍然可以使用 TCP-MD5 身份验证。
- 解决了Unbound在重新加载期间长期难以重现的崩溃问题。Christian McDonald追踪到Unbound SIGHUP崩溃的根源是MaxMindDB Python模块中的引用计数错误。MaxMind的补丁和FreeBSD端口的修订都已提交并被接受。现在可以安全地在pfBlockerNG中启用DHCP注册和Unbound Python 模式。
- 除了Unbound 崩溃之外,Christian还发现了DHCP注册和Unbound Python模式的内存泄漏问题。现在通过更新Python和相关库得到缓解,但还有其他正在进行的工作来进一步解决它。
- Netgate1000在FreeBSD 14上不起作用,因此无法升级到此版本。
- 在先前版本的接口之间批量复制规则可能会创建多个具有相同内部跟踪器 ID的规则,在版本中该问题已得到纠正,但必须手动更正具有重复ID的任何规则(例如,通过删除并重新复制或重新创建规则)。
别名/表
- 修复:当别名同时包含FQDN和IP地址条目时,别名内容有时不完整。
- 修复:具有非解析FQDN条目的别名会破坏底层PF表。
- 修复:如果防火墙无法解析别名中的FQDN,别名内容有时会不完整。
- 添加:下载和验证URL别名内容时指定CA信任存储位置。
- 修复:删除别名将子系统标记为不干净,但也会无条件地重新加载过滤器配置。
- 修复:缺少对防火墙别名引用者的描述会导致在删除正在使用的别名时返回引用的空字符串。
验证
- 修复:由于缺少TLS 1.3的SNI,Google LDAP会连接失败。
- 修复:RADIUS 身份验证尝试不再发送 RADIUS NAS IP 属性。
- 修复:无法将Web界面会话超时设置为
0
(即永不过期)。 - 更改:改进LDAP调试。
自动配置备份
- 添加:以“反向”顺序列出AutoConfigBackup条目的选项(最新的在顶部)。
- 添加:支持 AutoConfigBackup 提示/标识符字段中的国际字符。
备份/恢复
- 修复:多个
<sshdata>
或<rrddata>
部分在config.xml
恢复期间导致 XML 解析错误。 - 修复:尝试恢复0字节
config.xml
打印出无法读取文件的错误。 - 修复:无论在确认对话框中单击哪个选项,配置历史都会恢复修订。
构建/发布
- 更改:禁用
pkg
创建txz
文件扩展符号链接的兼容性标志。
强制门户
- 修复:通过强制门户传递的流量不能在其他规则上使用限制器队列。
- 修复:凭证 CSV 输出在凭证代码之前有前导空格。
- 修复:使用带限制器的强制门户时出错
dummynet: bad switch 21!
- 修复:强制门户打破了MAC地址绕过客户端的基于策略的路由。
- 修复:多个强制门户接口未正确形成门户 IP 地址列表。
- 修复:自定义徽标或背景图像
..
在文件扩展名前带有两个点 ( )。 - 修复:强制门户不跟踪客户端数据使用情况。
- 修复:所有强制门户用户都获得相同的限制器管道对。
- 修复:强制门户阻止的MAC地址未被阻止。
- 修复:禁用区域时,不会删除经过身份验证的强制网络门户用户的规则。
- 修复:RADIUS开始/停止计费不会在每次计费开始时重置计数器。
- 修复:强制门户不会将RADIUS带宽限制应用于用户管道。
证书
- 修复:
curl
在shell中使用时未定义 CA 路径。 - 修复:从证书管理器导出 PKCS#12 文件不使用预期的加密算法。
- 修复:默认生命周期的CRL过期日期太长,超过了 UTC时间限制。
- 修复:ECDSA 证书更新导致摘要算法重置为SHA1 。
配置后端
- 修复:输入验证正在检查RAM磁盘处于非活动状态时的大小。
控制台菜单
- 修复:如果接口已经存在,则在控制台更改接口IP地址和网关不会保存新网关。
- 修复:隐藏菜单选项
100
错误地处理 HTTPS 检测。
动态主机配置协议 (IPv4)
- 补充:改进DHCP 租用列表中在线和空闲/离线条目之间的区别。
- 更改:清理DHCP服务器选项语言。
- 添加:静态映射中编号的DHCP选项的输入验证。
- 修复:DHCP服务器“禁用 Ping 检查”选项在保存时不保存问题。
动态主机配置协议 (IPv6)
- 修复:当为DHCP6配置多个WAN 时应用设置时不会重新启动。
- 修复:高级 DHCP6 客户端设置仅适用于单个接口。
- 修复:“为DHCPv6客户端提供DNS服务器”设置在页面重新加载之前不会反映更改的值。
- 修复:不会为具有静态IPv6的接口创建 DHCPv6 规则。。
DNS转发器
- 修复:DNS转发器在某些情况下拒绝来自客户端的有效重试。
DNS解析器
- 修复:Unbound中的内存泄漏与 Python 模块和 DHCP 租约注册活动。
- 修复:Unbound在重新加载时因信号11而崩溃。
- 修复:DNS解析器在每个
rc.newwanip
事件期间重新启动,即使对于解析器中未使用的接口也是如此。 - 修复:DNS解析器在链接断开事件期间不更新其配置或重新加载。
- 修复:启用DNS over TLS服务器功能时,DNS解析器以意外的源地址进行响应。
- 修复: “网络接口”帮助文本中的单词不正确
services_unbound.php
。 - 更改:更新Unbound 以使用 Python 3.11 而不是 Python 3.9 。
仪表板
- 修复:如果驱动程序未附加,仪表板上的 QAT 检测不正确。
- 修复:APU1 硬件未正确识别当前 BIOS 版本。
诊断
- 修复:NDP 表中的邻居主机名
diag_ndp.php
始终为空。 - 更改:将多播组成员资格 (
ifmcstat
) 添加到status.php
。
动态域名系统
- 修复:Namecheap动态DNS响应未正确解析。
- 修复:DigitalOcean动态DNS更新失败并出现“错误请求”错误。
- 修复:Dynv6动态DNS客户端更新时不检查响应码。
- 修复:DNSExit动态DNS更新不再有效。
过滤DNS
- 修复:解析间隔
filterdns
可能与配置值不匹配。
FreeBSD
- 已修复:同时使用 EFI 和序列号时无法将 EFI 控制台设置为主控制台 。
- 已修复:CVE-2022-23093 / FreeBSD-SA-22:15.ping 。
网关监控
- 修复:将网关标记为关闭不会影响使用网关组的IPsec 条目。
- 修复:
get_dpinger_status()
中调用的函数参数不正确gwlb.inc
网关
- 修复:恢复接口网关可能不会按预期添加回网关组和规则。
硬件/驱动程序
- 修复:软件VLAN标记在
ixgbe(4)
接口上不起作用。 - 修复:Intel i226网络接口不支持手动选择的链接速度。
IPsec
- 修复:
filterdns
不监视远程IPsec网关的IPv6地址更改。 - 修复:IPsec在任何SAN为通配符时拒绝证书,而不是在所有SAN均为通配符时拒绝证书。
- 更改:
status_ipsec.php
即使建立了隧道,信息框也会显示“IPsec 未启用” 。 - 修复:Split DNS属性值的引用不正确
strongswan.conf
。 - 添加:支持使用 IPsec ChaCha20-Poly1305加密。
- 更改:删除不推荐使用的IPsec算法(3DES、Blowfish 和 CAST 128 加密;MD5 HMAC/哈希)。
接口
- 修复:当存在VIP时,并不总是使用主接口地址。
- 添加:支持 VLAN
0
。 - 修复:带有 QinQ 接口的桥在启动时未正确设置。
- 修复:几个高级 DHCP6 客户端选项在拒绝无效输入时不通知用户。
- 更改:清理
pfSense-dhclient-script
过时代码。 - 修复:分配的网桥接口未在启动时配置。
- 修复:设置 IPv6 MTU 的代码可能无意中作用于 IPv4 地址。
OPENVPN
- 修复:OpenVPN DCO因短UDP数据包而崩溃 。
- 修复:OpenVPN 在达到配置的并发连接限制后崩溃。
- 修复:到第一个可用隧道IP地址之上的OpenVPN DCO RA 客户端的流量被错误路由。
- 添加:使用OpenVPN DCO时支持ChaCha20-Poly1305和AES-128-GCM 加密。
- 修复:GUI允许使用不兼容的选项(TCP、压缩、TAP、net30)配置 OpenVPN DCO 。
- 修复:多用户VPN的OpenVPN 状态显示信息图标以在没有可显示的情况下显示RADIUS规则。
操作系统
- 修复:
/boot/loader.conf
中重复的条目net.link.ifqmaxlen
。 - 修复:
vmstat -m
temp
的值计算不正确,导致下溢。 - 修复:检索以太网规则时PF中的内存泄漏。
- 更改:在基本系统中将Python 3.9.15更新为3.9.16 。
- 更改:将Python 3.11.1添加到基本系统。
PHP解释器
- 补充:将 PHP 从 7.4 升级到 8.1 。
- 修复:
fcgicli
无法写入nvpair
值超过128
字节的数据包。
PPP接口
- 修复:当PPP接口连接时服务不重启。
- 修复:PPP接口自定义重置日期/时间小时和分钟字段未正确处理
0
值。
规则/NAT
- 修复:删除多个规则时规则分隔符位置发生变化。
- 修复:即使选择包含已定义前缀长度的下拉条目,用户也被迫选择 NPt 目标 IPv6 前缀长度。
- 修复:
negate_networks
表格在rules.debug
中重复。 - 修复:当存在多个选择时,NPt目标IPv6前缀列表中的每一行还包含上一行的网络。
- 修复:在防火墙规则上使用复制(而非克隆)功能无意中将接口转换
address
为接口net
。 - 修复:PF 无法加载新规则集。
- 修复:来自防火墙的 TCP 流量只能使用默认网关。
- 修复:
easyrule
CLI 脚本有多个错误和不良行为。 - 更改:在生成的防火墙规则集中更正 DHCP 客户端规则描述。
- 修复:同时复制多个规则会导致新规则具有重复的跟踪器 ID 。
- 修复:使用按钮方法切换 NAT 规则不会启用/禁用相应的防火墙规则。
- 修复:使用端口别名创建端口转发规则时出错
流量整形器 (ALTQ)
- 添加:ALTQ GUI 支持 Broadcom Netextreme II (
bxe
) 接口。
UPnP/NAT-PMP
- 修复:UPnP/NAT-PMP 状态页面不显示所有端口映射。
用户证书/权限
- 修复:RADIUS 身份验证不适用于 IPv6 。
网络接口
- 修复:登录页面中不必要的链接标签。
- 修复:“深色”主题不能充分区分选项列表中的选定和取消元素。
- 修复:在不进行更改的情况下加载/保存管理 GUI 设置时,VGA安装默认为串行作为主控制台。
- 更改:更正拼写错误。
- 修复:“深色”主题对禁用和启用的输入字段使用相同的颜色。
- 修复:输入验证对
system_advanced_firewall.inc
某些字段使用不正确的变量引用。 - 更改:更新外部HTTPS/HTTP 链接。
- 修复:表格行选择在深色主题下对比度差。
- 修复:更改GUI端口不会在保存时将浏览器重定向到新端口。