Я настраиваю эту аутентификацию через 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 правильно настроен для работы с SASL Authenticatino в PLAIN:
[root@ldap /]# ldapsearch -h localhost -b "" -LLL -s base supportedSASLMechanisms -x
dn:
supportedSASLMechanisms: PLAIN
И userPassword моего пользователя goingsolo настроен с помощью {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)
Также при выполнении привязки sasl с полным DNS аутентификация не выполняется из-за / 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).
Какие-нибудь советы о том, что я должен проверить?





Проблема заключалась в том, как был собран OpenLdap (я думаю, неправильная компиляция). Я попытался переустановить его, и все заработало. Убедитесь, что механизм SASL прост.