系统极客一直在努力
专注操作系统及软件使用技能

Samba 4.24 发布:强化 Kerberos 安全,无缝接入 Entra ID 密码重置

Samba

开源跨平台文件共享与打印服务套件 Samba 4.24 正式发布!本次大版本升级,聚焦在企业级安全加固与现代身份体系的深度融合。下面,我们来逐一拆解本次更新的核心亮点。

Samba 4.24 主要更新

Kerberos 安全性升维

Samba 4.24 对 Kerberos 安全机制进行了全维度升级:

  • 针对 2008 及更高「域功能级别」,系统现已默认强制启用 AES 加密。
  • 在 KDC 配置层面,新版本严格要求「客户端请求」必须完成规范化处理,并引入了更完善的 dollar ticket 攻击防御策略。
  • Kerberos 底层能力也同步升级,支持灵活强大的证书映射,兼容证书中的 SID 扩展,并在响应报文中默认包含了 PAC 特权属性证书。

完美兼容 Entra ID 与现代认证

  • 在混合身份验证生态中,Samba 4.24 新增了对 Microsoft Entra ID 和 Keycloak 中,「策略提示控制机制」的精准识别。当企业用户通过 Entra ID 自助密码重置(SSPR),或同类云平台进行「远程密码修改」时,Samba 可以确保相关操作完美适配到本地的密码安全策略。
  • 与此同时,基于证书的身份验证能力也迎来大幅优化。新版本正式加入了 Kerberos PKINIT KeyTrust 登录支持,彻底打通了基于自签名密钥的 Windows Hello for Business 认证链路。为了适配升级,系统进一步完善了对msDS-KeyCredentialLink属性的验证机制。管理员可通过新增的samba-tool子命令,轻松完成相关密钥管理、KeyTrust 配置,甚至直接生成 CSR 证书签名请求。

安全审计与底层存储性能进化

在 Active Directory 域管安全层面,Samba 的审计能力得到了全面强化:

  • 现已支持对非机密、但安全敏感度极高的「AD 属性」变更进行全量日志记录,例如servicePrincipalNamedNSHostName字段。

底层存储层面,VFS 虚拟文件系统模块迎来了 2 项核心更新:

  1. 突破容量瓶颈vfs_streams_xattr模块现在支持把「较大的数据流」拆分到多个扩展属性(EA)中,「有效大小上限」一举提升到了 1MB。
  2. 精细化流量管控:新增异步 I/O 限速 VFS 模块,为存储管理员带来了更细粒度的管控能力,支持直接基于每秒操作数(IOPS)或带宽阈值,来限制系统吞吐量。

面向分布式存储场景,ceph_new VFS 模块现已全面支持 FSCrypt,可对共享的数据内容、文件名进行高强度加密。通过无缝对接 Keybridge 协议,系统可以从外部服务中,安全动态获取加密密钥,进一步完善企业级存储的安全闭环。


Samba 4.23 主要更新

默认启用 SMB3 Unix 扩展

这次更新的最大亮点,就是默认启用了 SMB3 Unix 扩展。Linux 和 UNIX 客户端从此无需额外配置,就能直接获得完整的 POSIX 语义支持:

  • 比如正确的权限处理、符号链接、硬链接以及特殊文件类型。
  • 对于不支持这些扩展的 Windows 客户端,其功能则完全不受影响,可以继续正常工作。

新增 SMB3 over QUIC 支持

Samba 4.23 的另一项重大变更是新增了对 SMB3 over QUIC 的支持:

  • 现在,除了 TCP 之外,管理员还可以选择 QUIC 传输方式,为安全文件传输带来了更大的灵活性。
  • 在服务器端,需要来自 lxin/quic 项目quic.ko模块(已在 Linux 6.14 内核上完成测试)。如果客户端缺少该内核模块,系统会回退到用户空间的ngtcp2库。

其它重要更新

  • 更新了文件时间戳处理方式:新版本告别了旧有的延迟写入行为,转而采用「即时时间戳」更新机制,以更好地对齐现代 Windows 10 和 Windows Server 2016 系统的实现。
  • 在监控方面:新增的smb_prometheus_endpoint工具,能够以「兼容 Prometheus 的格式」导出各项指标,极大地简化了将 Samba 监控数据接入 Prometheus 和 Grafana 平台的过程。
  • 在管理工具方面samba-tool domain backup命令增加了一个--no-secrets选项。使用该选项,可以避免在备份中存储机密属性,例如 BitLocker 恢复数据和 TPM 信息。
  • CTDB 也迎来了更新:现已支持从/etc/ctdb/tunables.d/目录加载可调参数,为管理员在分发或覆盖集群配置时,提供了更高的灵活性;此外,Samba 现在还支持基于单个共享区的性能分析统计,当启用性能分析时,管理员可以对每个共享区的活动进行精细化监控。

最后,Samba 4.23 还修复了早期候选版本中的多个 Bug,涵盖了 macOS Finder DFS 兼容性、自签名证书处理,以及加入 AD 域等方面的问题。


Samba 4.22 主要更新

SMB3 目录租约:性能新突破

Samba 4.22 最大的亮点是对 SMB3 目录租约功能的引入。简单来说,这个功能允许客户端缓存「目录列表」,从而减少 SMB 请求的数量。这样一来,系统性能,特别是在高并发、高访问量的环境下,有了显著提升。

这个功能在默认配置下会根据 Samba 的集群模式自动调整:在非集群环境下自动启用,而在集群设置中默认关闭。如果你有特殊需求,还可以通过全局参数smb3 directory leases手动配置,非常灵活。

初步支持 Azure Entra ID 身份验证

另一个重要更新是对 Azure Entra ID 的实验性身份验证支持。Samba 4.22 引入了一个名为 himmelblaud 的组件(基于 Rust 开发),实现了对 Azure Entra ID 的基础身份验证功能,可以通过smb.conf配置文件完成相关设置。

为了方便用户定制,Samba 还新增了几个全局参数,包括himmelblaud_sfa_fallbackhimmelblaud_hello_enabledhimmelblaud_hsm_pin_path,提供了更灵活的配置选项。

性能优化:离线 AD 操作加速

在性能优化方面,Samba 4.22 通过提升 LDB 索引缓存的大小,大幅加快了离线活动目录操作的处理速度。特别是「预配置」和「架构升级」等任务,在新版本中的执行效率达到了前所未有的水平。

新增基于 TCP 的 LDAP 查询支持

新版本中,管理员可以选择通过基于 TCP 的 LDAP rootDSE 查询来获取「域控制器」信息,而不再依赖传统的无连接(UDP 协议)方式。这项改进对于使用网络防火墙来阻止 UDP 流量访问域控制器的环境尤其有用。

与此功能对应,Samba 4.22 还引入了一个新的client netlogon ping protocol参数,支持用户在「无连接 LDAP(CLDAP)」和「TCP 协议查询」之间自由切换。

功能清理:删减部分遗留特性

Samba 4.22 还对一些不再适用的功能进行了清理,移除的旧版特性包括:

  • nmbd proxy logon:一种老旧的方式,用于在 Samba 4 引入内置的 NBT 服务之前处理代理登录请求。
  • cldap port:由于 CLDAP 始终使用 UDP 的 389 端口,此功能允许用户配置替代端口的能力已被移除,以解决早期实现中的不一致问题。
  • fruit:posix_rename:曾用于 macOS(OS X)目录重命名的功能,但由于与 Windows 客户端的兼容性冲突,现已被弃用。
赞(1)
分享到

评论 抢沙发