Наши серверы KDC работают под управлением Ubuntu Dapper (2.6.15-28) или Hardy (2.6.24-19). Программное обеспечение Kerberos - это реализация Kerberos 5 в MIT. По умолчанию билет Kerberos действует 10 часов. Однако мы хотели бы немного увеличить его (например, на 14 часов), чтобы лучше соответствовать нашим потребностям. Я сделал следующее, но срок действия билета по-прежнему составляет 10 часов:
На всех серверах KDC установите следующий параметр в разделе «[области]» в /etc/krb5kdc/kdc.conf
и перезапустили демон KDC:
max_life = 14h 0m 0s
Через "kadmin" изменил "maxlife" для тестового принципала через "modprinc -maxlife 14hours".
"getprinc" показывает, что максимальный срок службы билета действительно составляет 14 часов: Максимальный срок службы билета: 0 дней 14:00:00
На клиентской машине с Kerberos установите следующие параметры в [libdefaults], [realms], [domain_realm] и [login] в /etc/krb5.conf (везде, в основном, поскольку ничего из того, что я пробовал, не сработало):
ticket_lifetime = 13hrs
default_lifetime = 13hrs
Я предполагаю, что с указанными выше настройками время жизни билета будет ограничено 13 часами. Когда я делаю k5start -l 14h -t <principal>
, Я вижу, что время окончания строки «продлить до» теперь составляет 14 часов с момента начала:
Valid starting Expires Service principal
04/13/10 16:42:05 04/14/10 02:42:05 krbtgt/<realm>@<realm>
renew until 04/14/10 06:42:03
«-l 13h» сделает время окончания в строке «продлить до» через 13 часов после времени начала.
Однако срок действия билета все равно истекает через 10 часов (13.04.16: 42:05 - 014/14 02:42:05).
Я не меняю правильный файл (ы) / параметр (ы) конфигурации, не указываю правильный вариант при получении билета Kerberos или что-то еще?
Оказалось, что мне также пришлось изменить параметр «maxlife» для принципала службы. В частности, мне пришлось сделать «modprinc -maxlife 14hours krbtgt / [REALM_in_CAPS]», чтобы увеличить время жизни до 14 часов.
Подводя итог, срок службы билета - это минимум следующих значений:
max_life
в kdc.conf
на серверах KDC.
ticket_lifetime
в krb5.conf
на клиентской машине.
maxlife для принципала пользователя.
maxlife для принципала службы "krbtgt / [REALM_in_CAPS]" => Что я пропустил!
запрошенное время жизни в запросе билета. Например:
k5start -l 14h
kinit -l 14h
maxlife
для принципала службы AFS «afs / [realm_in_lower_case]», если вы хотите увеличить время жизни вашего токена AFS.
Тайна раскрыта!