Система аутентификации пользователей Kerberos в Linux работает следующим образом: 1
- Запрос на начальную аутентификацию. 1 Клиент отправляет запрос в службу аутентификации (AS) центра распространения ключей (KDC). 1 Клиент предоставляет своё имя пользователя, и AS проверяет учётные данные по базе данных. 1
- Генерация билета предоставления билета (TGT). 1 При успешной проверке AS генерирует TGT, который включает сеансовый ключ и зашифрован паролем клиента. 1 Клиент сохраняет TGT в памяти и использует его для аутентификации к другим службам. 1
- Запрос доступа к службе. 1 Когда клиенту нужен доступ к конкретной службе, он отправляет TGT в службу выдачи билетов (TGS) вместе с запросом на сервисный билет. 1 TGS дешифрует TGT с помощью общего секретного ключа между ним и AS, проверяя личность клиента. 1
- Сервисный билет. 1 Если клиент успешно аутентифицирован, TGS выдаёт сервисный билет, который содержит сеансовый ключ и зашифрован секретным ключом службы. 1
- Доступ к службе. 2 Клиент представляет сервисный билет серверу службы. 2 Сервер службы дешифрует билет и проверяет его подлинность. 2 Если билет действителен, клиент получает доступ к службе. 2
В Kerberos используется симметричная криптография, что означает, что клиент и сервер имеют доступ к одному и тому же секретному ключу для шифрования и дешифрования данных. 1