Я установил ubuntu lucid LDAP + SAMBA PDC, в основном на основе этой статьи: http://ubuntuforums.org/showthread.php?t=1499753 - оно работает. Пользователи могут изменить свой пароль, войдя в систему на ПК Win и нажав Ctrl+Alt+Del. Таким образом меняются и пароли unix - об этом позаботится самба.
Я также использую этот сервер LDAP для аутентификации с настольных компьютеров ubuntu. Они могут войти в систему и изменить свой пароль с помощью /usr/bin/passwd
, но при этом пароль самбы не меняется.
Вопросы:
1) Есть ли способ изменить не только userPassword, но sambaNTpassword
атрибут тоже? Я читал о pam_smbpass.so
но я понятия не имею, как это использовать - я даже где-то читал, что таким образом можно обновлять только локальные пароли smb.
2) Если на первый вопрос будет дан ответ «нет», то есть ли способ slapd
синхронизировать sambaNTPassword
на основе unixPassword
? Возможно, настройка "exop
"сделать это?
3) Если еще раз ответ «нет», то я мог бы жить с ясными паролями в userPassword и запустить внешний скрипт для вычисления хэша для sambaNTpassword
. Я попытался jacksum -a md4 -q "txt:password"
но вычисленный хэш не равен хешам, хранящимся в ldap. Понятия не имею почему.
4) Что еще я мог сделать?
Вы можете добиться этого, используя OpenLDAP's smbk5pwd
наложение.
Этот оверлей необходимо добавить в slapd
конфигурация. Затем любое изменение пароля с помощью операции exop «Изменить пароль» также обновит пароли Samba (и, возможно, Kerberos).
Вы можете просто настроить свои рабочие столы Ubuntu для использования операции смены пароля exop через /etc/ldap.conf
.