AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 876320
Accepted
Mikhail T.
Mikhail T.
Asked: 2017-10-01 16:37:03 +0800 CST2017-10-01 16:37:03 +0800 CST 2017-10-01 16:37:03 +0800 CST

较旧的 CIFS 无法从 Samba-4 服务器挂载共享

  • 772

我有一个媒体播放器,它可以毫无问题地连接到运行 Samba 的主计算机。它运行旧版本的嵌入式 Linux(内核 2.6.22.19-27)并具有 CIFS。

在某些时候,在我升级服务器上的 Samba 软件(目前在 FreeBSD-10.4 上运行的 samba-4.6.8)后,播放器失去了这种能力——它仍然可以列出相同的导出共享,但不能再打开任何东西:“错误的凭据”。

我手机上支持 SMB 的应用程序可以很好地打开相同的文件夹(使用相同的凭据)...

是否有一些选项我需要显式打开服务器以启用与旧客户端的某种兼容模式?

更新:根据@Tin 的建议,我在 - 部分添加了以下行[global]:smb4.conf不幸 的 max protocol = NT1 是,这并没有改变——除了媒体播放器,我仍然可以从大多数系统连接,它仍然告诉我,我的凭据都不好。

在服务器上使用tcpdump我捕获了以下交换:

    SMB PACKET: SMBnegprot (REQUEST)
    SMB Command   =  0x72
    Error class   =  0x0
    Error code    =  0 (0x0)
    Flags1        =  0x0
    Flags2        =  0x1
    Tree ID       =  0 (0x0)
    Proc ID       =  1283 (0x503)
    UID           =  0 (0x0)
    MID           =  1 (0x1)
    Word Count    =  0 (0x0)
    smb_bcc=12
    Dialect=NT LM 0.12

服务器响应的:

SMB PACKET: SMBnegprot (REPLY)
SMB Command   =  0x72
Error class   =  0x0
Error code    =  0 (0x0)
Flags1        =  0x80
Flags2        =  0x3
Tree ID       =  0 (0x0)
Proc ID       =  1283 (0x503)
UID           =  0 (0x0)
MID           =  1 (0x1)
Word Count    =  17 (0x11)
NT1 Protocol
DialectIndex=0 (0x0)
SecMode=0x3
MaxMux=50 (0x32)
NumVcs=1 (0x1)
MaxBuffer=16644 (0x4104)
RawSize=65536 (0x10000)
SessionKey=0xA4AA
Capabilities=0x80F3FD
ServerTime=Sun Oct  1 18:00:38 2017
TimeZone=240 (0xf0)
CryptKey=Data: (1 bytes)
...

然后客户说:

    SMB PACKET: SMBsesssetupX (REQUEST)
    SMB Command   =  0x73
    Error class   =  0x0
    Error code    =  0 (0x0)
    Flags1        =  0x0
    Flags2        =  0x1
    Tree ID       =  0 (0x0)
    Proc ID       =  1283 (0x503)
    UID           =  0 (0x0)
    MID           =  2 (0x2)
    Word Count    =  13 (0xd)
    Com2=0xFF
    Res1=0x0
    Off2=0 (0x0)
    MaxBuffer=16644 (0x4104)
    MaxMpx=50 (0x32)
    VcNumber=0 (0x0)
    SessionKey=0x0
    CaseInsensitivePasswordLength=24 (0x18)
    CaseSensitivePasswordLength=24 (0x18)
    Res=0x0
    Capabilities=0x80D0DC
    Pass1&Pass2&Account&Domain&OS&LanMan=
    smb_bcc=179
    ...

最后是服务器:

SMB PACKET: SMBsesssetupX (REPLY)
SMB Command   =  0x73
Error class   =  0x6D
Error code    =  49152 (0xc000)
Flags1        =  0x80
Flags2        =  0x3
Tree ID       =  0 (0x0)
Proc ID       =  1283 (0x503)
UID           =  0 (0x0)
MID           =  2 (0x2)
Word Count    =  0 (0x0)
NTError = STATUS_LOGON_FAILURE
smb_bcc=0

到底是怎么回事?

更新:我可以挂载任何东西的方法是创建一个密码为空的帐户 ( smbpasswd -n ...) 并进行编辑smb.conf以允许null passwords。

samba
  • 3 3 个回答
  • 2092 Views

3 个回答

  • Voted
  1. Tin
    2017-10-02T02:36:45+08:002017-10-02T02:36:45+08:00

    我的猜测是新版本禁用了 SMB1。检查配置是否有类似于:“min protocol = SMB2”的行。

    当我(故意)在我的家庭服务器上禁用 SMB1 时,我得到了类似的结果。所有 Kodi 媒体播放器都无法连接,并引发了有关身份验证的错误。

    • 3
  2. Best Answer
    Mikhail T.
    2017-10-06T04:27:53+08:002017-10-06T04:27:53+08:00

    好的,这里是对 Samba-4.5 中引入的默认设置的更改列表。就我而言,我必须明确地将一件事改回“是”以允许我的媒体播放器访问服务器:

    [global]
        ntlm auth = yes
    
    • 2
  3. Armando Karin
    2020-09-23T05:06:03+08:002020-09-23T05:06:03+08:00

    在互联网上花费了一些时间并尝试了各种建议,我设法找到了能够帮助我解决此问题的解决方案。解决方法是为FreeNAS下的SMB服务设置辅助参数server min protocol = NT1。重新启动 SMB 服务后,一切都像以前一样无缝运行。

    • 1

相关问题

  • AD 组成员身份更改未反映在 winbind 信息中

  • 使用 smbldap 管理用户/组的 Web 前端

  • 修复 FreeBSD 上缺少的库

  • 连接到具有共享模式安全性的 Samba 服务器时出现问题

  • 3台计算机(Windows和Linux)的家庭网络[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve