Я пытаюсь понять, как сбросить пароль администратора freeipa3. Я могу видеть пользователя, когда ищу в домене:
[root@ipaserver ipa]# LDAPTLS_CACERT=/etc/ipa/ca.crt ldapsearch -h localhost -ZZ -x -b uid=admin,cn=users,cn=compat,dc=central,dc=example,dc=com
# extended LDIF
#
# LDAPv3
# base <uid=admin,cn=users,cn=compat,dc=central,dc=example,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# admin, users, compat, central.example.com
dn: uid=admin,cn=users,cn=compat,dc=central,dc=example,dc=com
objectClass: posixAccount
objectClass: top
gecos: Administrator
cn: Administrator
uidNumber: 1909600000
gidNumber: 1909600000
loginShell: /bin/bash
homeDirectory: /home/admin
uid: admin
и я нашел этот единственный фрагмент (кажется) в сети для сброса моего пароля.
Однако когда я пытаюсь это сделать, я получаю следующее сообщение:
[root@ipaserver ipa]# LDAPTLS_CACERT=/etc/ipa/ca.crt ldappasswd -ZZ -D 'cn=directory manager' -W -S uid=admin,cn=users,cn=compat,dc=central,dc=example,dc=com
New password:
Re-enter new password:
Enter LDAP Password:
Result: No such object (32)
Additional info: Failed to update password
Кто-нибудь, у кого есть прошлый опыт сброса админ-сервера freeIPA, может иметь какие-то предложения?
Не используйте запись cn = compat для изменения пароля. cn = compat - это дерево совместимости только для чтения, которое автоматически создается для основного дерева данных в cn = accounts. Записи в дереве совместимости не имеют паролей.
Ваша проблема в том, что вы пытаетесь изменить пароль для записи, которая предназначена только для чтения и реализована через плагин, специально не предоставляющий поле пароля в записях.
обновить пароль с помощью утилиты ldappasswd. Смените домен как у вас. первый экспорт затем попробуйте с помощью ниже.
# export LDAPTLS_CACERT=/etc/ipa/ca.crt
# ldappasswd -ZZ -D 'cn=directory manager' -W -S uid=admin,cn=users,cn=accounts,dc=example,dc=com -H ldap://ipa.example.com
New password:
Re-enter new password:
Enter LDAP Password: