Mr.*_*nce 2 debian ldap samba pam
tl;dr假设有基本(但正常)的 LDAP/PAM 配置,当我尝试将现有 UNIX/LDAP 用户添加到 Samba 时,smbpasswd 为什么会失败并显示此错误消息?
我在 Debian 服务器上有一个基本但有效的 LDAP 设置,该服务器几乎没有加载密码等的帐户,并且已经创建了它们相应的 UNIX 帐户。我还有一个基本的 PAM/NSS 配置,似乎可以正常工作。
我可以通过 LDAP 登录并使用帐户。现在我想使用 Samba 配置一个简单的文件共享,并让它通过 PAM/LDAP 后端对用户进行身份验证。我现在需要使用该smbpasswd
实用程序创建 Samba 用户,但这会导致错误。
首先,我设置 LDAP 密码:
# smbpasswd -W
Run Code Online (Sandbox Code Playgroud)
然后我尝试添加一个已在 LDAP 中配置的用户:
# smbpasswd -a new_user
New SMB password:
Retype SMB password:
Failed to add entry for user new_user.
Run Code Online (Sandbox Code Playgroud)
所以我不知道为什么这个命令失败了。起初我认为这是因为我需要将 LDAP 目录中的用户设置为sambaSamAccount
s。所以我更新了用户的 LDIF 文件,如下所示:
dn: cn=new_user,ou=group,dc=example,dc=com
cn: new_user
gidNumber: 1000
objectClass: top
objectClass: posixGroup
dn: uid=new_user,ou=people,dc=example,dc=com
objectClass: top
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: sambaSamAccount
uid: new_user
uidNumber: 1000
gidNumber: 1000
cn: test user
sn: new_user
mail: new_user@example.com
loginShell: /bin/bash
homeDirectory: /home/new_user
sambaSID: 3000
sambaDomainName: TEST-ROME
Run Code Online (Sandbox Code Playgroud)
对上述 LDIF 所做的唯一更改是添加了sambaSamAccount
as anobjectClass
和。最终我想实现一个 PDC,所以我很确定我无论如何都需要一个。sambaSID
sambaDomainName
sambaSamAccount
然而,毕竟我仍然遇到同样的错误。
那么如何调试这个错误呢?
已解决按照建议调试守护进程后,我发现正在smbpasswd
使用空字段执行查询base dn
,因此不返回任何结果。通过将ldap suffix
和ldap user suffix
字段添加到我的smb.conf
. 之后我意识到我还需要一种正确的方法来生成 sambaSID,但这是一个单独的问题。
归档时间: |
|
查看次数: |
22002 次 |
最近记录: |