【问题标题】:OpenLDAP SASL AuthenticationOpenLDAP SASL 身份验证
【发布时间】:2018-04-03 00:26:36
【问题描述】:

我正在通过 OpenLDAP 设置此身份验证:

OpenLDAP -> 直通(外部身份验证)-> SASL -> PAM -> RSA 代理

为了通过 RSA 令牌访问应用程序。

从下往上:

这是我的 PAM 配置:

#%PAM-1.0
auth required pam_securid.so
account      sufficient pam_ldap.so
account    include      password-auth
password      sufficient pam_ldap.so
password   include      password-auth

这个测试效果很好:

[root@ldap ~]# testsaslauthd -u goingsolo -p 11111111
0: OK "Success."

OpenLdap 已正确配置为与 PLAIN 中的 SASL Authenticatino 一起使用:

[root@ldap /]# ldapsearch -h localhost -b "" -LLL -s base supportedSASLMechanisms -x
dn:
supportedSASLMechanisms: PLAIN

而我的 gosolo 用户的 userPassword 配置为 {SASL}goingsolo 如果我进行 SASL 绑定,它可以工作:

[root@datap-keldap-1-n01 /]# ldapsearch -h localhost -b dc=ldap,dc=com -U "goingsolo" -w 11111111                  
SASL/PLAIN authentication started
0: OK "Success."

问题是当我使用 -D 而不是 -U 执行简单绑定时,我收到无效凭据:

[root@datap-keldap-1-n01 /]# ldapsearch -h localhost -b dc=ldap,dc=com -D "cn=goingsolo,ou=People,dc=ldap,dc=com" -w 11111111                  
ldap_bind: Invalid credentials (49)

此外,当使用完整 dn 执行 sasl 绑定时,身份验证失败,因为来自 /var/lag/messages:

Mar 27 19:01:00 ldap saslauthd[11777]: do_auth         : auth failure: [user=cn=goingsolo,ou=People,dc=ldap,dc=com] [service=ldap] [realm=] [mech=pam] [reason=PAM auth error]

我猜这是因为它没有从完整的 dn 转换为简单的用户 (goingsolo)。

关于我应该检查什么的任何提示?

【问题讨论】:

    标签: authentication rsa openldap pam sasl


    【解决方案1】:

    问题在于 OpenLdap 是如何构建的(我猜是编译错误)。我尝试重新安装它,然后它工作。确保 SASL 机制设置为普通。

    【讨论】:

      猜你喜欢
      • 2011-07-08
      • 2014-10-31
      • 2021-10-09
      • 2017-09-14
      • 2018-06-23
      • 2016-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多