在 centos 中对 ldap 进行身份验证

在 centos 中对 ldap 进行身份验证

我正在尝试将 centos 设置为向 2003 AD 服务器进行身份验证。我运行 authconfig-gtk 并选择 ldap 作为“用户信息”和“身份验证”,然后按此进行配置

基本 DN:dc=test,dc=com

ldap 服务器:192.168.0.1 且无 TLS 加密(需要先运行它)

在选项页面上

缓存用户信息、使用影子密码、密码哈希算法 md5、本地授权对于本地用户来说就足够了、首次登录时创建主目录

但它不允许我使用 AD 帐户 ssh 进入该框。即使我登录本地帐户,也会出现巨大的延迟。1-5 分钟。

我在 /var/log/secure 中不断收到这些错误,但使用谷歌搜索它们却没有帮助。

nss_ldap:重新连接到 LDAP 服务器(休眠 4 秒)

nss_ldap:重新连接到 LDAP 服务器(休眠 8 秒)

我已经在 AD 上安装了 SFU3.5,并为测试用户填写了 unix 选项卡。

答案1

开始之前,请确保同时添加/var/log/secureAND /var/log/messages;secure 会返回来自 pam 的错误,但 messages 会返回来自 ssh 的错误(即,来自查询 LDAP 的错误):

tail -f -n0 /var/log/{messages,secure}

因此,我们在工作中采用相同的设置(使用 AD 服务器 2003)。由于听起来您已经让 pam 命中 LDAP(因为当您尝试登录时它会失败),让我们检查一下 中的一些值/etc/ldap.conf

首先,将 bind_policy 从 hard 设置为 soft;hard 会反复尝试连接,从而成倍增加尝试之间的休眠时间(这些是您在 中看到的错误/var/log/secure)。将其设置为 soft 将消除使用本地帐户时的延迟。

bind_policy soft

接下来,验证您使用的是正确的连接设置(ssl、tls 等);您ldapsearch也可以使用更详细的设置进行测试。不幸的是,如果没有更多的调试输出(设置了什么服务器、LDAP 查询返回了哪些错误消息、配置文件),恐怕没人能提供太多帮助。

希望这能帮助您走上正确的道路!

安德鲁

答案2

检查 ldap.conf 中的 SFU 设置,详情请参阅

http://wiki.freaks-unidos.net/linux%20ldap%20howto#setting-up-sfu

将 AD 模式映射到 posix 模式对我来说很有意义。

答案3

另一种方法是让盒子加入 AD 并使用 winbind 进行身份验证。

我很确定 authconfig 会让您设置 AD。

我从未使用过 authconfig 进行 AD 身份验证,我一直都是手动设置,因此您可能需要运行一些其他命令来启动 winbind 并加入域:

chkconfig winbind 在服务 winbind 启动 net ads join -U

这只会进行身份验证,如果您想执行帐户/组信息,您需要进行设置,这可能涉及 SFU,正如 lucabotti 所建议的那样。

相关内容