ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Устранение неполадок аутентификации Kerberos в Linux

Устранение неполадок аутентификации Kerberos в Linux

Как и многие другие протоколы аутентификации, вы часто можете столкнуться с проблемами при настройке Linux для аутентификации с помощью Kerberos. Конечно, проблемы всегда различаются в зависимости от вашего этапа аутентификации.

В этой статье рассматриваются некоторые проблемы, которые могут возникнуть. Некоторые из вопросов, которые мы включаем здесь:

 

Устранение неполадок системы Linux Kerberos и проблем с мониторингом

Примечательно, что проблемы, с которыми вы можете столкнуться при использовании Linux Kerberos, часто начинаются на этапе установки. И единственный способ свести к минимуму проблемы с настройкой и мониторингом — это выполнить следующие шаги:

Шаг 1: Убедитесь, что на обеих машинах правильно установлен работающий протокол Kerberos.

Шаг 2: Синхронизируйте время на обеих машинах, чтобы убедиться, что они работают в одинаковых временных рамках. В частности, используйте сетевую синхронизацию времени (NTS), чтобы компьютеры находились в пределах 5 минут друг от друга.

Шаг 3: Проверьте, все ли узлы в сетевой службе домена (DNS) имеют правильные записи. При этом убедитесь, что каждая запись в файле хоста имеет соответствующие IP-адреса, имена хостов и полные доменные имена (FQDN). Хорошая запись должна выглядеть так:

IP_address 
FQDN hostname

 

Устранение неполадок клиентской утилиты Linux Kerberos

Если вам сложно управлять клиентскими утилитами, вы всегда можете использовать следующие три метода для решения проблем:

Способ 1: использование команды Klist

Команда Klist поможет вам визуализировать все билеты в любом кэше учетных данных или ключи в файле вкладки ключей. Получив билеты, вы можете отправить данные для завершения процесса аутентификации. Вывод Klist для устранения неполадок клиентских утилит будет выглядеть следующим образом:

bash-2.05$ klist
Ticket cache: /tmp/krb5cc_1002
Default principal: HTTP/sol8sunone.test.com @TEST.COM
Valid starting                    Expires                    Service principal

Tue Nov 22 16:14:03 2022         Tue Nov 22 22:46:03 2014   krbtgt/ www.MaxDestroyer@ANDREYEX.RU

 

Способ 2: использование команды Kinit для проверки проблем на клиенте KDC

Вы также можете использовать команду Kinit, чтобы подтвердить, есть ли у вас какие-либо проблемы с вашим хостом KDC и клиентом KDC. Утилита Kinit поможет вам получить и кэшировать билет на выдачу билетов для субъекта-службы и пользователя. Проблемы с клиентской утилитой всегда могут возникать из-за неправильного имени участника или неправильного имени пользователя.

Ниже приведен синтаксис Kinit для принципала пользователя:

kinit username

 

Вышеупомянутая команда запросит пароль, поскольку она создает участника-пользователя. При выполнении команды убедитесь, что вы заменили имя пользователя действительной записью из вашего каталога.

С другой стороны, синтаксис Kinit для субъекта-службы аналогичен деталям на снимке экрана ниже. Обратите внимание, что это может варьироваться от одного хоста к другому:

kinit -k[-t keytab_file] principal_name

 

Интересно, что команда Kinit для субъекта-службы не будет запрашивать никаких паролей, поскольку для проверки подлинности субъекта-службы используется файл вкладки ключа в квадратных скобках.

 

Способ 3: использование команды kinit для проверки проблем с SMP

Вы также можете запустить приведенную ниже команду независимо от того, сработала ли приведенная выше команда комплекта или нет. Это помогает определить, есть ли какие-либо проблемы с хостом SMP. Примечательно, что это более полезно при тестировании вашего сервера на mail.company.com.

Ваша команда kinit будет иметь следующую структуру:

kbd>kinit -S host/mail.company.com@SERVER01.COMPANY.COM

 

Способ 4: использование команды ktpass

Иногда проблема может быть связана с вашими паролями. Чтобы убедиться, что это не является причиной ваших проблем с Linux Kerberos, вы можете проверить версию утилиты ktpass.

 

Устранение проблем с поддержкой KDC

Kerberos часто может дать сбой из-за множества проблем. Но иногда проблемы могут быть связаны с поддержкой шифрования KDC. Примечательно, что такая проблема приведет к следующему сообщению:

kinit: KDC has no support for encryption type while getting initial credentials

 

Если вы получили указанное выше сообщение, выполните следующие действия:

 

Устранение неполадок с Keytab

Вы можете предпринять следующие шаги, если у вас возникнут какие-либо проблемы с ключевыми вкладками:

Шаг 1: Убедитесь, что расположение и имя файла вкладки ключа для хоста аналогичны данным в файле krb5.conf.

Шаг 2: Убедитесь, что хост и клиентские серверы имеют основные имена.

Шаг 3: Подтвердите тип шифрования перед созданием файла вкладки ключа.

Шаг 4: Проверьте правильность файла вкладки ключа, выполнив приведенную ниже команду kinit:

kinit -t C:\Linux\MaxDestroyer.keytab HTTP/MaxDestroyer@ANDREYEX.RU

kinit host/fqdn@ANDREYEX.COM

 

Приведенная выше команда не должна возвращать ошибку, если у вас есть действительный файл вкладки ключа. Но в случае ошибки вы можете проверить действительность имени участника-службы с помощью этой команды:

kinit -t C:\Linux\MaxDestroyer.keytab HTTP/MaxDestroyer@ANDREYEX.RU

kinit host/fqdn@ANDREYEX.COM

 

Вышеупомянутая утилита предложит вам ввести пароль. Отсутствие запроса пароля означает, что ваше имя участника-службы недействительно или его невозможно идентифицировать. Как только вы введете правильный пароль, команда не вернет никаких ошибок.

Выше приведены некоторые распространенные проблемы, с которыми вы можете столкнуться при настройке или аутентификации с помощью Linux Kerberos. Эта статья также содержит возможные решения для каждой из проблем, с которыми вы можете столкнуться.

Exit mobile version