【发布时间】:2015-06-14 12:46:07
【问题描述】:
首先,我使用 keytab 文件运行 kinit {principal} -k -t {keytabfile}。
其次,我运行klist检查是否存在TGT。
似乎一切正常,但是当我运行kadmin -p {principal} 时,仍然需要密钥表或密码。
这是否意味着 kadmin 不使用 kinit 进行身份验证?
【问题讨论】:
标签: kerberos
首先,我使用 keytab 文件运行 kinit {principal} -k -t {keytabfile}。
其次,我运行klist检查是否存在TGT。
似乎一切正常,但是当我运行kadmin -p {principal} 时,仍然需要密钥表或密码。
这是否意味着 kadmin 不使用 kinit 进行身份验证?
【问题讨论】:
标签: kerberos
这是 kadmin 服务主体的默认策略(为了明显的安全性)只接受直接为该服务获得的票证。您可以根据需要进行更改,但不建议这样做。
如果您查看 kdc 日志,您会注意到
Jun 18 01:17:27 aron krb5kdc[21377](info): TGS_REQ (4 etypes {18 17 16 23}) 192.168.1.56: TGT BASED NOT ALLOWED: authtime 0, root/DOMAIN.NET for kadmin/@DOMAIN.NET, KDC policy rejects request
这是对有关此默认策略的文档的参考
存在两个用于与管理员通信的 Kerberos 主体 系统:kadmin/admin 和 kadmin/changepw。两位校长 在其属性中设置了 KRB5_KDB_DISALLOW_TGT_BASED 位,因此 他们的服务票只能通过 基于密码的 (AS_REQ) 请求。此外,kadmin/changepw 设置了 KRB5_KDB_PWCHANGE_SERVICE 位,以便具有 过期的密码仍然可以为其获取服务票。
【讨论】: