将我的家庭服务器从 CentOS 版本 6 升级到 7,同时也将 Samba 从版本 3.6.9-169.el6_5 升级到版本 4.6.2。
在执行此操作时,我/etc/samba/smb.conf
直接移植了文件,这对于 Samba 共享到我的 PC 来说效果很好。
但是,我的 WD TV Media Player 无法连接到 Samba 共享,之前它是运行正常的。
我的文件中活跃且相关的部分smb.conf
是这样的:
[global]
workgroup = MY
server string = %h
netbios name = MYSRV
hosts allow = 127. 192.168.12. 192.168.13.
auto services = global movie
guest ok = yes
guest account = movie
browseable = yes
wins support = yes
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
[movie]
comment = Movie all files
path = /media/movie
public = yes
writable = yes
valid users = @users, movie, nobody
create mask = 0644
directory mask = 0755
printable = no
smbstatus
成功连接到共享后,搭载 Samba 版本 3.6.9-169.el6_5 的 CentOS 6 服务器给出以下输出:
Samba version 3.6.9-169.el6_5
PID Username Group Machine
-------------------------------------------------------------------
3158 movie nobody 192.168.13.57 (192.168.13.57)
3153 movie nobody mymh7 (192.168.13.57)
Service pid machine Connected at
-------------------------------------------------------
barn 3158 192.168.13.57 Sun Mar 25 12:57:37 2018
IPC$ 3149 mymh7 Sun Mar 25 12:56:51 2018
movie 3158 192.168.13.57 Sun Mar 25 12:57:37 2018
IPC$ 3153 mymh7 Sun Mar 25 12:57:36 2018
IPC$ 3150 mymh7 Sun Mar 25 12:56:51 2018
No locked files
smbstatus
安装了 Samba 版本 4.6.2 的 CentOS 7 服务器在无法连接共享后给出以下输出:
Samba version 4.6.2
PID Username Group Machine Protocol Version Encryption Signing
----------------------------------------------------------------------------------------------------------------------------------------
7268 movie nobody mymh7 (ipv4:192.168.13.57:41824) NT1 - -
7267 movie nobody 192.168.13.57 (ipv4:192.168.13.57:56874) NT1 - -
7266 movie nobody 192.168.13.57 (ipv4:192.168.13.57:56873) NT1 - -
Service pid Machine Connected at Encryption Signing
---------------------------------------------------------------------------------------------
IPC$ 7266 192.168.13.57 Sun Mar 25 12:01:58 PM 2018 CEST - -
IPC$ 7267 192.168.13.57 Sun Mar 25 12:01:58 PM 2018 CEST - -
IPC$ 7268 mymh7 Sun Mar 25 12:02:01 PM 2018 CEST - -
对于可能出现的问题有什么想法或建议吗?
答案1
似乎 WD (Western Digital) TV Media Player (Live gen. 3) 使用 NTLMv1 和/或 Lanman 密码验证,而这在 Samba 版本 4.6.2 中默认禁用。因此,我必须在文件中至少启用 NTLM 验证,方法是smb.conf
:
ntlm auth = yes
供参考,然后调试过程将smb.conf
使用以下命令在文件中启用详细日志记录:
log level = 3
然后/var/log/samba/192.168.13.57.log
列出的文件:
...
[2018/03/31 17:05:42.238771, 2] ../libcli/auth/ntlm_check.c:423(ntlm_password_check)
ntlm_password_check: NTLMv1 passwords NOT PERMITTED for user movie
[2018/03/31 17:05:42.238821, 3] ../libcli/auth/ntlm_check.c:442(ntlm_password_check)
ntlm_password_check: Lanman passwords NOT PERMITTED for user movie
[2018/03/31 17:05:42.238913, 3] ../libcli/auth/ntlm_check.c:588(ntlm_password_check)
ntlm_password_check: LM password and LMv2 failed for user movie, and NT MD4 password in LM field not permitted
[2018/03/31 17:05:42.239469, 2] ../source3/auth/auth.c:315(auth_check_ntlm_password)
check_ntlm_password: Authentication for user [movie] -> [movie] FAILED with error NT_STATUS_WRONG_PASSWORD
...
答案2
我遇到了同样的问题,并通过smb.conf
在公共部分中添加此行来修复它:
server min protocol = NT1
这将重新启用 SMBv1,而这正是 WD TV Live 设备所需要的。出于安全原因,较新版本的 Samba 取消了 SMBv2 以下的所有内容,因此如果您想重新启用它,请自行做出选择。
答案3
您可能还必须添加:
server min protocol = NT1
这取决于您使用的 Samba 版本。