从 3 升级到 4 后,无法让 WD TV Media Player 连接到 Samba/SMB;也许是 IPC$ 问题?

从 3 升级到 4 后,无法让 WD TV Media Player 连接到 Samba/SMB;也许是 IPC$ 问题?

将我的家庭服务器从 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 版本。

相关内容