我们有一个可以运行的 FreeIPA 安装,它自二月份开始投入生产。几乎所有东西都按预期运行,但是当我们尝试运行与 FreeIPA 相关的命令行工具时,它们都不起作用:
[admin@ipa ~]$ kinit admin
Password for [email protected]:
[admin@ipa ~]$ klist
Ticket cache: KEYRING:persistent:8800000
Default principal: [email protected]
Valid starting Expires Service principal
06/30/2014 21:19:30 07/01/2014 21:19:12 krbtgt/[email protected]
[admin@ipa ~]$ ipa pwpolicy-show global_policy
ipa: ERROR: Kerberos error: ('Unspecified GSS failure. Minor code may provide more information', 851968)/('No Kerberos credentials available', -1765328243)
[admin@ipa ~]$
我不是 Kerberos 专家,也不知道该检查什么。我们该如何调试和解决这个问题?
更新:当我添加时,-vv
我得到以下信息:
[admin@ipa ~]$ ipa -vv pwpolicy-show global_policy
ipa: INFO: trying https://ipa.example.com/ipa/xml
ipa: INFO: Forwarding 'pwpolicy_show' to server 'https://ipa.example.com/ipa/xml'
ipa: ERROR: Kerberos error: ('Unspecified GSS failure. Minor code may provide more information', 851968)/('No Kerberos credentials available', -1765328243)
[admin@ipa ~]$
更新 2:内容/etc/krb5.conf
如下:
includedir /var/lib/sss/pubconf/krb5.include.d/
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = true
rdns = false
ticket_lifetime = 24h
forwardable = yes
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
EXAMPLE.COM = {
kdc = ipa.example.com:88
master_kdc = ipa.example.com:88
admin_server = ipa.example.com:749
default_domain = example.com
pkinit_anchors = FILE:/etc/ipa/ca.crt
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
[dbmodules]
EXAMPLE.COM = {
db_library = ipadb.so
}
更新 3:这是单服务器安装,发行版是 Fedora 19,FreeIPA 版本是 3.3.5
答案1
与我的实时 FreeIPA(在 Fedora 20 上)相比,我看到的您的配置的主要区别在于我不使用内核密钥环作为票证缓存。
default_ccache_name = KEYRING:persistent:%{uid}
我的/etc/krb5.conf
根本没有指定这个,所以使用默认文件。删除它应该可以让你重新开始。
正如 Matthew Ife 在评论中指出的那样,内核密钥环更安全,并且(最终)将成为主流,但目前看来它还不够稳定,无法用于生产。您可能希望将此作为错误报告给 Fedora。