Как добавить в ldap пользователя, чтобы он одновременно являлся пользователем samba и имел поле userPassword?Пример записи:
dn: uid=TestUser,dc=home,dc=ru
uid: TestUser
cn: TestUser
sambaSID: S-1-5-21-1370376854-2971062868-769107232-2040
displayName: TestUser
sambaPwdCanChange: 1200589128
sambaPwdMustChange: 2147483647
sambaLMPassword: qwerty
sambaNTPassword: qwerty
sambaPasswordHistory: 00000000000000000000000000000000000000000000000000000000 00000000
sambaPwdLastSet: 1200589128
sambaAcctFlags: [U ]
objectClass: sambaSamAccount
objectClass: account
objectclass: person
sn: fam_TestUser
userPassword: 123
ответ ldap-сервера:
adding new entry "uid=TestUser,dc=home,dc=ru"
ldap_result: Can't contact LDAP server (-1)После этого запроса ldap-сервер слетает. Приходится запускать его заново.
Если убрать последние три атрибута:
objectclass: person
sn: fam_TestUser
userPassword: 123то все работает.
За ранее большое спасибо за ответ :-)
>objectClass: account
>objectclass: personВпервые вижу оба класса, хотя возможно это и нормально.
В стандартных схемах класс юниксового пользователя носит имя PosixAccount, а не просто account. Может дело в этом?
Проблема решена. Спасибо за совет.
Вот правильное добавление пользователя:dn: uid=user,dc=home,dc=ru
uid: user
cn: user
sambaSID: S-1-5-21-2492224613-1109842903-2400323701-207
displayName: user
sambaPwdCanChange: 1200589128
sambaPwdMustChange: 2147483647
sambaLMPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX
sambaNTPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX
sambaAcctFlags: [U ]
objectClass: sambaSamAccount
objectClass: account
objectClass: posixAccount
userPassword: user
uidNumber: 1007
gidNumber: 1007
homeDirectory: /home/user
И, может кому пригодится, полезная команда замены samba пароля без ввода этого пароля из консоли:
(echo NewPassword; echo NewPassword) | smbpasswd -s -U userА чтобы при изменении пароля в самбе автоматически изменялся ldapPassword, в настройках smb.conf нужно добавить:
ldap passwd sync = yes