Samba NT_STATUS_NO_TRUST_SAM_ACCOUNT

Samba NT_STATUS_NO_TRUST_SAM_ACCOUNT

对于一个项目,我们配置了多个 samba 共享,如下所示:

[global]
   workgroup = <domain name>
   netbios name = <machine name>
   passdb backend = tdbsam
   security = ads
   encrypt passwords = yes
   realm = <fully qualified domain>
   password server = <ldap server ip>

[Share1]
   path = <path>
   ......

这个想法是,连接的用户将由 ldap 服务器进行身份验证,并且他们编写的每个文件将由同名的 Linux 用户拥有。除了 SAMBA 之外,Linux 机器不使用 ldap 做任何其他事情。

一切都按预期进行,直到 ldap 服务器发生变化,我们现在收到错误NT_STATUS_NO_TRUST_SAM_ACCOUNT。我们正在与 ldap 团队进行沟通,但看到其他所有 Active Directory 身份验证都正常工作,我们预计我们有责任相应地更改 samba 配置 -_-”

我看到的指南几乎都集中在 Linux 机器上安装和使用 OpenLDAP 服务器(我们不需要),或者配置 Linux 身份验证以在内部使用 LDAP 用户或执行除用户名之外的复杂映射(我们也不需要)不需要。

我们使用的是 samba 4.2,众所周知,升级到更新版本无法使用上述配置(即使在 ldap 服务器更改之前)。

您是否知道任何其他(可能更正确)的方法来配置 samba 以实现所请求的行为?我们需要的只是 LDAP 服务器回答“user auth ok”,没有用户映射,域中没有机器,没有复杂的配置。

答案1

当您成为域的成员(例如“security = ads”所必需的)时,将在目录中创建您的服务器的计算机帐户。您的服务器使用此帐户来访问域中的资源。

NT_STATUS_NO_TRUST_SAM_ACCOUNT 表明您的计算机在使用其计算机帐户时遇到问题(其凭据可能由于某种原因已失效)。离开域并再次加入(“网络广告加入”)应该可以解决此问题。

旧版本的 Samba 支持将身份验证转发到远程服务器,而无需成为域成员,但 AFAICT 这已不再存在。

相关内容