我们正在尝试将Linux机器(debian 4.0)绑定到W2k3 AD。我们已经正确配置了kerberos,以便我们可以获得TGT。并且用户可以正确验证。然而,PAM似乎是粘性检票口。例如,当我们尝试作为AD用户之一SSH连接到Linux机器时,身份验证成功(根据auth.log)但我永远不会得到shell。默认环境配置正确,PAM甚至可以正确创建Homedir。作为参考,我们松散地关注:
答案 0 :(得分:1)
如果你确信除了PAM之外的所有东西都能正常工作,我建议将调试选项传递给pam_krb5.so,看看是否能给出发生了什么的线索。
我还建议使用
验证是否正确设置了nss-ldapgetent passwd avalidusername
答案 1 :(得分:0)
我已经在我们的服务器上使用了类似的功能。以下是我们用于配置它的过程:
同样安装:
$ sudo apt-get update
$ sudo apt-get install likewise-open
加入域名(假设域名为“domain.local”)
$ sudo domainjoin-cli join domain.local Administrator
$ sudo update-rc.d likewise-open defaults
$ sudo /etc/init.d/likewise-open start
假设您正在使用sudo并且希望AD用户能够具有sudoer权限,则需要编辑sudoers文件。这可以通过以下命令完成:
$ sudo visudo
然后将以下内容添加到文件的末尾(这假设域“DOMAIN”,并且应该具有sudo的所有用户都在活动目录中名为“linux_admin”的组中):
%DOMAIN\\linux_admin ALL=(ALL) ALL
答案 2 :(得分:0)
POSIX帐户要求您在用户帐户中设置vaild shell。使用LDAP时,属性loginShell会引用它。您需要使用PAM并在配置中将适当的属性映射到loginShell,或者在DC上映射适用于UNIX的活动MS服务,这将扩展AD模式以包含所需的POSIX属性。
请参阅http://www.ietf.org/rfc/rfc2307.txt作为对RFC2307的参考,RFC2307为LDAP定义了这一点。
答案 3 :(得分:0)
一个简单的解决方案.. pam_krb5+ldap project
pam_krb5 PAM模块的一个分支,它提供了一个非常易于使用的配置,可以利用针对现有Active Directory域和/或OpenLDAP服务器的Linux客户端身份验证。