SSH + SAMBA + LDAP 问题

SSH + SAMBA + LDAP 问题

我已经让 SSH + LDAP 正常工作了(我可以使用来自 LDAP 服务器 Server1 的凭据登录到 Server2)。现在,我想添加 Samba 服务器(Server3),如果它能像 Server2 一样对用户进行身份验证就好了。

我该如何实现这一点?据我所知,Samba 架构和用于存储 Unix 用户的架构是不同的。因此,如果我在 Samba 架构中更改密码,我将能够使用旧密码登录。我需要集中存储用户名/密码。如果我在 phpldapadmin 中更改一次,则意味着针对 samba 和 ssh。

谢谢。

答案1

您必须使用一些额外的机制来同步密码。

我知道有两种方法可以做到这一点:

  1. 在 Samba 中,您可以设置

    ldap passwd sync = yes
    

    当用户通过 Samba 更改密码时,这将更新 LDAP 中的所有三个密码哈希值。您还需要在 Samba 配置中设置一个预期脚本来更改 userPassword 属性。默认配置文件中有一个工作示例。

  2. 在 LDAP 服务器中使用覆盖。对于 OpenLDAP,您将需要 smbk5pwd。这似乎是一件相当麻烦的事。2005 年有一篇关于配置的文章。http://student.physik.uni-mainz.de/~reiffert/smbk5pwd.html

    此时,您可以将 Samba 设置为仅更改 UNIX 密码,并让您的覆盖完成其余工作。

    其他 LDAP 服务器可能也具有此功能。

答案2

要让 samba 使用 ldap 作为密码后端,请将其添加到配置中:

passdb 后端 = ldapsam:ldap://

ldap 后缀 =

或者也可以:

ldap 管理员 dn =

这里有更多相关信息:

Samba_&_LDAP

相关内容