Домен/Kerberos
{{review |Title = Работа с Kerberos в ALT-домене |Annotation = Работа с Kerberos в ALT-домене |Author = [[АндрейЧерепанов|Андрей Черепанов (cas) |Tag = kerberos,домен |Section = практика |Issue = }}
|
Kerberos — сетевой протокол аутентификации, позволяющий передавать данные через незащищённые сети для безопасной идентификации. Более подробно узнать об этом протоколе можете в статье на Wikipedia Kerberos. В домене ALT Linux этот протокол занимает важное место, так как обеспечивает инфраструктуру для аутентификации пользователей (для входа в систему, для использования сетевых ресурсов по протоколу SMB и доступа в Интернет через прокси-сервер.
Сервер аутентификации выполняет одну функцию: получает запрос, содержащий имя клиента, запрашивающего аутентификацию, и возвращает ему зашифрованный TGT (Ticket Granting Ticket, билет для получения билета). Затем пользователь может использовать этот TGT для запроса дальнейших билетов на другие службы.
С практической точки зрения нас интересуют нюансы использования и отладки Kerberos. Итак, при создании ALT-домена настраивается также и служба Kerberos на сервере krb5kdc. Основной её чертой является крайняя немногословность, что затрудняет отладку.
Нюансы работы
- Тикет Kerberos по умолчанию выдаётся не более чем на 1 сутки. Если хотите выдавать тикет больше, чем на сутки, пропишите
- в файле /var/lib/kerberos/krb5kdc/kdc.conf (максимальный срок выдаваемого тикета — 30 дней)
max_life = 30d
- на LDAP-сервере dn: krbPrincipalName=krbtgt/<ваш_домен> (срок выдаваемого тикета с сервера — 30 дней, указывается в количестве секунд)
krbMaxTicketLife: 2592000
- Для указания периода возобновления тикета (хотя странно, имея такой «длинный» тикет, указывать период его обновления) параметры и krbMaxRenewableAge: 2592000 соответственно.
max_renewable_life = 30d
- При использовании сервера или клиента домена на Седьмой платформе с клиентами или сервером ранних версий на новой системе пропишите в раздел [libdefaults] файла /etc/krb5.conf строку Без этого с тикетами Kerberos будут проблемы.
allow_weak_crypto = true
TODO
- Отладка получения тикета: kinit, klist, kdestroy
- Troubleshooting
- kadmin.local
- срок тикета в /etc/krb5.conf
- синхронизация времени с помощью settime-rfc867