如果你忘记了FreeIPA管理员密码,请使用该方法处理。前提是可以访问Linux root shell或具有sudo权限的用户帐户。请注意,要重置FreeIPA管理员密码,你需要拥有目录管理员密码,否则必须在FreeIPA管理员密码之前重置目录管理员密码。安装FreeIPA的方法请参考在Ubuntu 18.04/Ubuntu 16.04上安装和配置FreeIPA服务器。
重置目录管理员密码
如果知道目录管理员密码,则可以跳过此步骤,以root用户或具有sudo权限的用户身份登录到FreeIPA并关闭服务器,如果服务器正在运行并且你对主配置文件dse.ldif进行了更改,则你的更改将丢失:
sudo /sbin/stop-dirsrv
你可以从/etc/dirsrv/slapd获取实例名称,例:
sudo /sbin/stop-dirsrv DOMAIN-COM
服务停止后,生成新的哈希目录管理密码:
sudo /usr/bin/pwdhash StrongPassword
将StrongPassword替换为你的实际密码,在生成时,应该可以看到如下的输出信息:
编辑389目录配置文件以设置新的哈希密码:
sudo vim /etc/dirsrv/slapd-EXAMPLE-COM/dse.ldif
用正确的实例名称值替换EXAMPLE-COM,搜索以nsslapd-rootpw开头的行,然后将其值替换为生成的密码值:
nsslapd-rootpw: {SSHA512}值({SSHA512}值请填写上面图片输出的行)
完成后,重新启动389目录服务:
/sbin/start-dirsrv
然后测试你的新密码:
ldapsearch -x -D "cn=directory manager" -w newpassword -s base -b "" "objectclass=*"
重置FreeIPA管理员密码
按上面的操作你已经拥有目录管理员密码,现在来重置FreeIPA管理员密码。
首先导出LDAP TLS证书路径:
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://ldap.example.com
更换:
example和com与你的domain组件。
ldap.example.com,带有可解析的FreeIPA服务器主机名。
系统会要求你提供新密码和目录管理员密码:
New password:
Re-enter new password:
Enter LDAP Password:
你应该设置新的FreeIPA管理员密码,通过请求新的Kerberos票证进行测试:
# kinit admin
Password for admin@EXAMPLE.COM:
提供新设置的密码,然后按键,完成后,列出可用的票证以确认它是否正常工作:
# klist
Ticket cache: KEYRING:persistent:0:0
Default principal: admin@EXAMPLE.COM
Valid starting Expires Service principal
02/01/2019 09:22:56 02/02/2019 09:22:50 krbtgt/EXAMPLE.COM@EXAMPLE.COM
如果你访问FreeIPA登录页面,则应接受新密码进行身份验证,如下图:
至此,重置FreeIPA管理员密码完成。
相关主题