Samba 4.12.0 发布

由...所提交 发布 Samba 4.12.0,继续分支的发展 Samba 4 完全实现域控制器和 Active Directory 服务,与 Windows 2000 的实现兼容,并能够为 Microsoft 支持的所有版本的 Windows 客户端(包括 Windows 10)提供服务。Samba 4 是一款多功能服务器产品,还提供以下功能的实现:文件服务器、打印服务和身份服务器 (winbind)。

钥匙 变化 在 Samba 4.12 中:

  • 加密函数的内置实现已从代码库中删除,以支持使用外部库。 决定使用 GnuTLS 作为主要加密库(至少需要 3.4.7 版本)。 除了减少与识别加密算法内置实现中的漏洞相关的潜在威胁之外,过渡到 GnuTLS 还可以在 SMB3 中使用加密时显着提高性能。 当使用 Linux 5.3 内核的 CIFS 客户端实现进行测试时,写入速度提高了 3 倍,读取速度提高了 2.5 倍。
  • 添加了一个新的后端,用于使用该协议搜索 SMB 分区 聚焦基于搜索引擎 Elasticsearch (之前后端是基于 GNOME 追踪器)。 “mdfind”实用程序也已添加到带有客户端实现的软件包中,允许您将搜索请求发送到运行 Spotlight RPC 服务的任何 SMB 服务器。 “spotlight backend”设置的默认值已更改为“noindex”(对于 Tracker 或 Elasticsearch,必须显式将值设置为“tracker”或“elasticsearch”)。
  • “net ads kerberos pac save”和“net eventlog export”操作的行为已更改,以便它们不再覆盖文件,而是在尝试导出到现有文件时显示错误。
  • samba-tool 改进了为群组成员添加联系人条目的功能。 如果以前使用“samba-tool group addmemers”命令,您可以简单地将用户、组和计算机添加为新组成员,但现在支持将联系人添加为组成员。
  • Samba-tool 允许按组织单位(OU、组织单位)或子树进行过滤。 添加了新标志“--base-dn”和“-member-base-dn”,从而可以仅对 Active Directory 树的特定部分(例如,仅在一个 OU 内)执行操作。
  • 使用新的 Linux 内核接口添加了新的 VFS 模块“io_uring” io_uring 用于异步 I/O。 Io_uring支持I/O轮询并且可以与缓冲一起工作(之前提出的“aio”机制不支持缓冲I/O)。 当启用轮询时,io_uring 的性能明显领先于 aio。 Samba 现在使用 io_uring 来支持 SMB_VFS_{PREAD,PWRITE,FSYNC}_SEND/RECV,并减少使用默认 VFS 后端时在用户空间中维护线程池的开销。 要构建“io_uring”VFS 模块,需要该库 利布林 和 Linux 内核 5.1+。
  • VFS 提供了指定特殊时间值 UTIME_OMIT 的功能,以标记需要忽略 SMB_VFS_NTIMES() 函数中的时间。
  • 在 smb.conf 中,对“写入缓存大小”参数的支持已停止,在引入 io_uring 支持后该参数变得毫无意义。
  • Samba-DC 和 Kerberos 不再支持 DES 加密。 从 Heimdal-DC 中删除了弱加密代码。
  • vfs_netatalk 模块已被删除,该模块不再维护且不再相关。
  • BIND9_FLATFILE 后端已被弃用,并将在未来版本中删除。
  • zlib 库作为程序集依赖项包含在内。 本机 zlib 实现已从代码库中删除(该代码基于旧版本的 zlib,不正确支持加密)。
  • 代码库的模糊测试已经建立,包括在服务中
    oss-模糊。 在模糊测试过程中,发现并纠正了许多错误。

  • 最低 Python 版本要求从 Python 增加
    3.4 到 Python 3.5。 使用Python 2构建文件服务器的能力仍然保留(在运行./configure'和'make'之前,您应该设置环境变量'PYTHON=python2')。

来源: opennet.ru

添加评论