MIT Kerberos 更新生命周期不起作用

MIT Kerberos 更新生命周期不起作用

我试图弄清楚为什么我的票的可续期期限只有 0 天而不是我指定的 7 天。

我尝试在 krb5.conf 和 kdc.conf 中同时设置max_renewable_life(如另一个问题中所示)以及renew_lifetime7 天(7d856800),但没有奏效。我已将它们设置在[realms](krb5/kdc) 和[libdefaults](krb5) 下,但守护进程似乎忽略了此设置。ticket_lifetime但是 有效。

我运行了以下命令(删除了不必要的输出):

$ kinit -r 20m -l 10m PRINCIPAL
$ klist -f
Valid starting       Expires              Service principal
04.03.2020 19:18:46  04.03.2020 19:28:44  krbtgt/REALM@REALM
    renew until 04.03.2020 19:18:46, Flags: RIA

正如您所看到的,kinit 的最大寿命效果很好,但更新却无济于事。

令我沮丧的是,我也在客户端上设置了这些,但没有成功。我知道maxlife校长的,也把它设置为 7 天,但这对我来说也不起作用。

如果有帮助:我正在运行 FreeBSD (FreeNAS) 并自行编译了 kerberos。是否有其他设置可以使用,或者是否有我需要设置的编译时选项?

编辑1:

$ kadmin                                                                       
kadmin:  getprinc comfix
Principal: comfix@REALM
Expiration date: [never]
Last password change: Mi Mär 04 21:00:00 CET 2020
Password expiration date: [never]
Maximum ticket life: 0 days 10:00:00
Maximum renewable life: 7 days 00:00:00
Last modified: Mi Mär 04 21:02:47 CET 2020 (comfix/admin@REALM)
Last successful authentication: Mi Mär 04 22:14:13 CET 2020
Last failed authentication: [never]
Failed password attempts: 0
Number of keys: 2
Key: vno 1, aes256-cts-hmac-sha1-96
Key: vno 1, aes128-cts-hmac-sha1-96
MKey: vno 1
Attributes: REQUIRES_PRE_AUTH DISALLOW_SVR
Policy: [none]

答案1

解决方案:

有 4 种设置(准确地说是 5 种,但第 5 种是kinit -r TIME参数本身),其中取最小值:

  1. krb5.confREALM = { max_renewable_life = 7d }
  2. kdc.confREALM = { max_renewable_life = 7d }
  3. 校长@领域:Maximum renewable life: 7 days 00:00:00*[1]
  4. krbtgt/REALM@REALM:Maximum renewable life: 7 days 00:00:00*[1]

[1](通过modprinc -maxrenewlife PRINCIPALkadmin设置)

我忘记/不知道第四个。设置 renewlife 后,一切都按预期工作。我认为,当我创建领域时,kdc.conf和中的参数krb5.conf未设置,并且 Kerberos 默认为 0 秒...

相关内容