Я запускаю Ubuntu 12.04 и 2.4.28-1.1ubuntu4.5 OpenLDAP. Мне заполнили пользователей в LDAP с userPassword
причем атрибут является {SHA1} хешем. Пользователи могут войти в систему по SSH и пройти проверку подлинности к веб-приложениям.
Теперь, я хотел бы добавить аутентификацию RADIUS (с сервера OTP) к серверу LDAP как дополнительный механизм. Таким образом, пользователи могли аутентифицировать через их Радиус 'Одноразовый пароль', но все атрибуты POSIX раскрыть от LDAP. Действительно ли это возможно? Чем называют механизм?
Openldap 2.4 поддерживает SASL-аутентификацию с помощью пароля ( http://www.openldap.org/doc/admin24/security.html).
Эта функция позволяет делегировать процесс аутентификации демону saslauthd и управляет другими атрибутами в Openldap.
Эта функция требует замены действительного значения userPassword на строку "{SASL}username@realm", чтобы вы не могли использовать SHA1-пароль и SASL-аутентификацию для одного и того же пользователя. Более того, SASL может использовать PAM в качестве метода аутентификации бэкэнда.
PAM имеет модуль, позволяющий использовать аутентификацию по свободному радиусу. Полной цепочкой аутентификации будет:
OpenLDAP Server --> saslauthd --> pam модуль с radius --> Freeradius server
Есть два других способа решения этой проблемы:
если ваше веб-приложение поддерживает PAM-аутентификацию, создайте модуль pam, который использует как freeradius, так и ldap-аутентификацию
если ваше веб-приложение поддерживает Radius-аутентификацию, настройте freeradius с OpenLDAP в качестве бэкэнда
SSH поддерживает уже PAM-аутентификацию и Radius-аутентификацию (последняя с помощью модуля pam).