LDAP 和 pam 没有 binddn 和匿名访问

我在一家大公司工作,可以远程使用其中央LDAP服务器,只读。 服务器 LDAP 做。

不是

允许匿名绑定。 使用此服务器使用模块对我的小型服务器上的用户身份验证用户 pam, 我需要一个为我提供数据的帐户 LDAP. 帐户数据通常填充

binddn



bindpw

配置字段。 当我理解模块时 pam 通常进入系统

binddn



bindpw

, 然后搜索和绑定想要登录的每个用户。

但是,服务器管理员不希望向我披露所有数据。 所以我的问题:

我如何配置 pam 没有帐户 binddn? 理想情况下,必须在未使用帐户登录的情况下执行对每个用户的直接绑定 binddn.
已邀请:

詹大官人

赞同来自:

我无法想出如何用现有的模块来做这件事 PAM, 因此,写了一个。 目前它只支持简单的身份验证。 务必指定此类模板参数。 uri 和 binddn:

auth    sufficient    pam_ldapdb.so uri=ldap://example.com binddn=uid=%s,dc=example,dc=com

% s 将被连接的用户替换。

它是必需的 g ++, pam devel 和 ldap devel. 他被测试了 CentOS 6 和 7, 64 页。

https://github.com/rmbreak/pam_ldapdb

窦买办

赞同来自:

问题是用户身份验证 UNIX 使用简单的用户名字符串工作,例如 'usera'.

LDAP 不这样做,而是需要完整 DN 例如,用户名

uid=mruser,cn=users,dc=ibm,dc=com

.

因此,您需要解决绑定的原因 anon 或者有效 binddn, 是您的身份验证系统可以连接到服务器 LDAP 并执行搜索翻译

usera

->

uid=mruser,cn=users,dc=ibm,dc=com

. 如果没有这个机会,他就不知道在目录中检查密码。

管理人员 LDAP 通常不想解决匿名绑定,但他们应该能够为您创建特定用户,这允许您仅访问身份验证所需的特定详细信息。 LDAP 工作B. UNIX. 那些。 只读访问层次结构的用户和组区域 LDAP.

你没有提到你真正说的操作系统,但请记住 PAM 专为身份验证而设计 - 您还需要服务 NSS 还允许用户名和用户标识符。 根据实现,这可能是您需要执行的配置工作的另一部分。

涵秋

赞同来自:

我想我明白你想做什么,即:

用户介绍您进行检查的凭据。

而不是绑定到服务器 LDAP 通过匿名访问或使用标准绑定凭据集,您希望使用您的凭据,即用户刚刚代表服务器上的身份验证 LDAP, 要求他检查这些权力。

就是这个?

如果是这样,则为了使其有意义,每个用户的凭据必须有效 LDAP 只是验证它或自己的凭据; 否则,您可以通过这种方式对第一组凭据进行清晰危险的广泛搜索。 如果LDAP服务器管理员可以如此紧密地链接得分数据集,那么它们应该能够为您提供一组标准的绑定凭据,仅用于搜索您授权的用户。 看。

你明白我的观点吗? 如果您的LDAP服务器管理员在搜索中如此良好,可以执行凭据,它们具有为您提供适合绑定的合适凭据所需的技能。 如果他们不如那么好,请问你要做他们想要的事,因为你已经有足够的权威来做他们不希望你做的事情。

访问服务器的两个标准方法 LDAP 是 (1) 匿名I. (2) 使用Server Administrators发出的一组凭据,该凭据仅适用于执行您需要的东西。 如果服务器管理员不喜欢 (1), 然后是他们的任务 - 为您提供合适的凭据进行执行 (2).

要回复问题请先登录注册