Kerberos ticket 生命周期

基本概念

Kerberos ticket 有两种生命周期,ticket timelife (票据生命周期) 和 renewable lifetime (可再生周期)。

  1. 当 ticket lifetime 结束时,该 ticket 将不再可用。
  2. 如果 renewable lifetime > ticket lifetime ,那么在票据生命周期内都可以其进行续期,直到达到可再生周期的上限。
  3. 当时间达到 renewable lifetime 后,ticket lifetime结束后将不能继续续期,续期时将会报错 KDC can't fulfill requested option while renewing credentials,之后需要重新申请新的 ticket。
  4. 在安全性方面,与使用较长的生命周期的票据相比,可再生票据的优点是KDC可以拒绝续期请求(例如,如果发现帐户被破坏,并且可再生票据可能在攻击者手中)。
  5. 可再生周期和 keytabs 无关,如果你没有修改 key 和 principal 的关系,keytabs 将不用关心。

例如:

  • ticket_lifetime = 1d
  • renew_lifetime = 7d
  1. 在登陆后的24h内可以对ticket进行续期,直到第一次登陆的7天后将不再允许续期。
  2. 在24h内如果没有续期,将无法续期。
  3. 对 ticket 进行一次续期后,ticket_lifetime 将恢复到24h。

影响生命周期的因素

  1. 命令行

    • kinit -l lifetime
      如果 -l 参数没有设置,会使用机器上 /etc/krb5.conf 配置的 ticket_lifetime ,但是如果指定的时间长度大于 max_life,则使用 max_life
    • kinit -s start_time – start_time 表示证书延时生效的时间
    • kinit -r renewable_life – 更新 renewable_lifetime 时间
  2. 客户端配置项 /etc/krb5.conf

    • renew_lifetime – 设置可续约的时长,默认为0。
    • ticket_lifetime – 初始化 ticket 的生命周期,默认是 1day。
  3. 服务端配置项 /var/kerberos/krb5kdc/kdc.conf

    • max_life – ticket 的默认生命周期,默认为 24h
    • max_renewable_life – ticket 允许被 renew 的最长时期,默认为 0

tip1: 在创建一个新的 ticket 时,ticket_lifetimerenewable_lifetime 由上述三种参数的最小值决定。

tip2: 如果你的 KDC 没有设置 max_renewable_life(max_renewable_life=0),那么在客户端 ticket_lifetime 结束时就会获取一个新的 ticket。

tip3: 如果 ticket 存在默认的缓存中,可以用 klist 检查 ticket 的生命周期或是 kinit -R 更新 ticket 的生命周期。

tip4: 添加一个新的 principal 时,默认使用kdc.conf中的生命周期。如果在新建 principal 后想要对最大生命周期进行修改,可以通过 modprinc -maxrenewlife/-maxlife 进行修改,例如 modprinc -maxlife 00:15:00 test/host1@TONGDUN.COM

add_one_principal (argv[i],
				 opt->random_key_flag,
				 opt->random_password_flag,
				 opt->use_defaults_flag,
				 opt->verbose_flag,
				 opt->password_string,
				 kdp,
				 opt->max_ticket_life_string,
				 opt->max_renewable_life_string,
				 opt->attributes_string,
				 opt->expiration_time_string,
				 opt->pw_expiration_time_string);

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值