Kerberos常见报错汇总

          Kerberos常见报错汇总

                              作者:尹正杰 

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

 

一.kdb5_util: Password mismatch while reading master key from keyboard

1>.错误复现

2>.错误原因分析

  在初始化Kerberos数据库时需要输入密码,2次密码输入不一致就会导致该错误。

3>.解决方案

  重新执行"kdb5_util -r YINZHENGJIE.COM create -s"指令,输入2次相同的密码即可。

 

二.kdb5_util: Required parameters in kdc.conf missing while initializing kerberos admin interface

1>.错误复现

2>.错误原因分析

  一般情况下出现在配置文件(kdc.conf)中的"supported_enctypes"的某个加密类型不可用。

3>.解决方案

  下面我针对"supported_enctypes"做了修改,大家可以做个对比。使用修改后的参数问题得到解决,之所以贴出来修改后的是为了提供一个参考。

  修改前:     supported_enctypes
= aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal   修改后:     supported_enctypes = aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal

 

三.kadmin.local: Required parameters in kdc.conf missing while initializing kadmin.local interface

1>.错误复现

2>.错误原因分析

  一般情况下出现在配置文件(kdc.conf)中的"supported_enctypes"的某个加密类型不可用。

3>.解决方案

  参考案例二。

 

四.kadmin.local: Cannot open DB2 database '/yinzhengjie/softwares/kerberos/data/principal': No such file or directory while initializing kadmin.local interface

1>.错误复现

2>.错误原因分析

  报错很明显提示咱们找不到DB数据库相关信息。一般情况下是我们在安装Kerberos时没有做数据库初始化操作。

3>.解决方案

  注意观察KDC配置文件("kdc.conf")的"database_name"属性。当我们对Kerberos数据库做了初始化操作时,对生成对应的文件哟~

  初始化Kerberos数据库的命令如下:
    kdb5_util -r YINZHENGJIE.COM create -s

 

五.(Error): WARNING! Cannot find dictionary file /yinzhengjie/softwares/kerberos/data/dict/words, continuing without one.

1>.错误复现

2>.错误原因分析

  根据日志的报错信息可判断,是因为没有对应的文件(由kdc.conf配置文件的"dict_file"标签指定路径)导致的报错信息,但这并不影响您启动程序。

3>.解决方案

解决方法很简单,创建响应的文件即可,操作案例如下所示:
[root@kdc.yinzhengjie.com ~]# mkdir -pv /yinzhengjie/softwares/kerberos/data/dict
mkdir: created directory ‘/yinzhengjie/softwares/kerberos/data/dict’
[root@kdc.yinzhengjie.com ~]# 
[root@kdc.yinzhengjie.com ~]# vim /yinzhengjie/softwares/kerberos/data/dict/words
[root@kdc.yinzhengjie.com ~]# 
[root@kdc.yinzhengjie.com ~]# cat /yinzhengjie/softwares/kerberos/data/dict/words
123456
[root@kdc.yinzhengjie.com ~]# 

 

六.Couldn't open log file ${KERBEROS_HOME}/logs/kadmind.log: No such file or directory

1>.错误复现

2>.错误原因分析

  一般是krb5.conf配置文件中的[logging]的"admin_server"标签对应的路径并不存在,建议写绝对路径,若写自定义的Linux变量可能不会被识别哟!

3>.解决方案

指定绝对路径即可,下面是我修改krb5.conf配置文件的过程。

修改前:
[logging]
 default = FILE:${KERBEROS_HOME}/logs/krb5libs.log
 kdc = FILE:${KERBEROS_HOME}/logs/krb5kdc.log
 admin_server = FILE:${KERBEROS_HOME}/logs/kadmind.log


修改后:
[logging]
 default = FILE:/yinzhengjie/softwares/kerberos/logs/krb5libs.log
 kdc = FILE:/yinzhengjie/softwares/kerberos/logs/krb5kdc.log
 admin_server = FILE:/yinzhengjie/softwares/kerberos/logs/kadmind.log

 

七.kdb5_util: Cannot open DB2 database '/yinzhengjie/softwares/kerberos/data/yinzhengjie-principal': File exists while creating database '/yinzhengjie/softwares/kerberos/data/yinzhengjie-principal'

1>.错误复现

2>.错误原因分析

  数据库已经存在啦,因此会出现上图所示的错误。

  温馨提示:
    Kerberos的数据库初始化一次即可,无需初始化第二次,若你的管理员密码忘记了那就得重新初始化了,但这意味之前的数据必须全部删除。生产环境中要慎重啊!

3>.解决方案

  方案一:
    删除已存在的数据库文件,重新执行初始化操作,这意味着之前的所有数据全部丢失!生产环境要慎重哟,尽量避免不要这样干!

  方案二:
    放弃重新初始化操作,因为已经存在数据库文件了,直接使用现有数据库即可,除非你不得不重新初始化操作(比如忘记了KDC管理员的密码)!

  温馨提示:
    初始化的数据库密码一定要记住哈,这样可以给你减少不必要的麻烦!

 

八.kadmind: Cannot allocate memory while initializing network, aborting

1>.错误复现

2>.错误原因分析

 

3>.解决方案

 

九.官方故障排除案例

  博主推荐阅读:
    https://web.mit.edu/kerberos/krb5-latest/doc/admin/troubleshoot.html

 

posted @ 2020-09-28 05:36  尹正杰  阅读(4753)  评论(0编辑  收藏  举报