两台MIT KDC同步异常求助:测试用户未同步至从KDC
Kerberos主从KDC同步问题排查方案
先澄清可能的同步机制误解
kprop的作用仅为主KDC将数据库dump文件传输到从KDC,默认不会自动触发从KDC加载dump到生效数据库。执行kprop提示成功,只代表文件传输完成,不代表从KDC已更新数据库内容。
具体排查步骤
验证主KDC的dump文件是否包含新用户
在主KDC上重新生成最新dump并检查:kdb5_util dump /tmp/latest_dump grep "你的测试用户名" /tmp/latest_dump如果未找到测试用户,说明你执行
kprop时用的是旧dump文件(/var/lib/krb5kdc/dump是之前生成的),需要先执行kdb5_util dump /var/lib/krb5kdc/dump更新dump后再同步。检查从KDC的日志与手动加载测试
- 查看从KDC的kpropd日志(通常在
/var/log/krb5kdc.log或/var/log/syslog),确认是否有成功接收dump的记录,比如包含kpropd: Received dump from master的条目。 - 在从KDC手动加载dump文件到数据库:
加载完成后再用kdb5_util load /var/lib/krb5kdc/dumpkadmin.local -q "getprinc 你的测试用户名@REALM"查询,如果能找到用户,说明问题是kpropd未自动触发加载。
- 查看从KDC的kpropd日志(通常在
检查从KDC的kpropd配置与状态
- 查看从KDC的
kdc.conf(通常在/var/lib/krb5kdc/或/etc/krb5.conf),确认kpropd_acl路径正确,且acl文件中允许主KDC的主机principal(格式如host/master.kdc.example.com@EXAMPLE.COM)进行同步操作。 - 确认kpropd服务处于运行状态:
若服务未运行,启动服务并设置开机自启。systemctl status kpropd
- 查看从KDC的
验证REALM与查询命令的正确性
- 主KDC创建用户时必须指定正确的REALM,比如
kadmin.local -q "addprinc testuser@EXAMPLE.COM"。 - 从KDC查询时需明确指定REALM,避免因默认REALM不一致导致查询失败:
kadmin.local -q "getprinc testuser@EXAMPLE.COM"
- 主KDC创建用户时必须指定正确的REALM,比如
确认dump文件路径一致性
检查主KDCkprop传输的dump路径,与从KDCkpropd接收后保存的路径是否一致。部分配置中kpropd会将dump存到临时目录,需调整配置确保路径匹配,或手动指定加载路径。
内容的提问来源于stack exchange,提问作者Alatau
相关产品推荐
相关产品推荐

