我有一个在 Ubuntu 20.04 服务器上运行 samba 的主文件和打印服务器。
我想加密客户端和服务器之间的流量。我对 man smb.conf 的理解是,这是通过在 /etc/samba/smb.conf 中设置 [global] smb encrypt = required 来完成的。
但是,当我这样做时,我无法从本地网络上运行 Ubuntu 20.04.3 Desktop 的客户端访问我的共享。它返回的错误是“糟糕!出了点问题。无权访问请求的位置。” 此外,如果我尝试在客户端上使用 smbclient,它会返回以下错误:
~$ smbclient -L ip.of.server -U my_user_name
Enter WORKGROUP\my_user_name's password:
session setup failed: NT_STATUS_ACCESS_DENIED
注释掉该行并重新启动 samba 可以解决这两个问题。
需要哪些额外配置(服务器端或客户端)才能访问加密的 samba 共享?
谢谢你。
======
在这里捕获解决方案:我在服务器上设置了 max protocol = SMB2。注释掉该行解决了这个问题。
SMB 加密需要 SMB 协议版本 3。 (*) 尝试将选项添加
--max-protocol=SMB3_11
到您的smbclient
命令中,看看这是否是问题的原因。还添加选项--debuglevel=1
以让smbclient
您更详细地了解它在做什么以及哪里出了问题。(*) 忽略与此处不相关的 Samba SMBv1 加密。