在 macOS 10.13.4 及更高版本中,数据包签名默认处于关闭状态。如果服务器提供了数据包签名功能,则 SMB 2 或 SMB 3 连接的数据包签名会在需要时自动打开。本文中的说明适用于 macOS 10.13.3 及更早版本。
如果您使用 SMB 2 或 SMB 3 连接,则数据包签名在默认情况下处于打开状态。出现以下情况时,您可能需要关闭数据包签名:
- 当您连接到第三方服务器时,性能有所下降。
- 无法连接到不支持数据包签名的服务器。
- 无法将第三方设备连接到您的 macOS SMB 服务器。
如果您关闭数据包签名,SMB 连接的安全性便会下降。仅在客户端和服务器均位于安全的网络上时,才关闭数据包签名。
关闭 macOS 客户端上的数据包签名
检查您的 macOS 电脑上有没有“/etc/nsmb.conf”文件。
如果您的 macOS 电脑上有“/etc/nsmb.conf”文件
- 打开“/etc/nsmb.conf”文件。
- 将“signing_required”值设为“no”,如下所示:
[default]
signing_required=no
- 存储“/etc/nsmb.conf”文件。
- 断开连接,然后重新连接所有装载的 SMB 共享,以使更改生效。
如果您的 macOS 电脑上没有“/etc/nsmb.conf”文件
- 打开“终端”。
- 使用以下命令创建一个“signing_required”值被设为“no”的“/etc/nsmb.conf”文件。
sudo -s
echo "[default]" >> /etc/nsmb.conf
echo "signing_required=no" >> /etc/nsmb.conf
exit
- 断开连接,然后重新连接所有装载的 SMB 共享,以使更改生效。
关闭托管 SMB 共享的 macOS 电脑上的数据包签名
请在 macOS 或 macOS 服务器上完成以下操作步骤。
在 macOS 上
- 选取苹果菜单 >“系统偏好设置”,然后点按“共享”。
- 清除“文件共享”复选框,然后关闭“共享”面板。
- 在“终端”中,使用以下命令:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server SigningRequired -bool FALSE
- 选取苹果菜单 >“系统偏好设置”,然后点按“共享”。
- 选中“文件共享”复选框,然后关闭“共享”面板。
在 macOS 服务器上
- 打开“终端”。
- 在“终端”中,使用以下命令使数据包签名可供客户端选择:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server SigningRequired -bool FALSE
sudo /usr/libexec/smb-sync-preferences