Kerberos «Сервер не найден в базе данных Kerberos» с использованием SSH и флага -K для машины Linux, присоединенной к AD

Kerberos «Сервер не найден в базе данных Kerberos» с использованием SSH и флага -K для машины Linux, присоединенной к AD

У меня возникла ситуация, когда я пытаюсь воспользоваться переадресацией GSSAPI (Kerberos) для подключения к другому серверу Linux, который также присоединен к Windows AD и использует SSSD.

Машины Linux присоединены к домену с использованием имени машины, отличного от фактического FQDN сервера. Когда я вхожу в первую машину с учетными данными моего домена, PAM успешно срабатывает, и мне выдается действительный токен. Он отображается с klist. Однако даже после включения входов GSSAPI и Kerberos на SSH на другом хосте Linux, также присоединенном к домену, я все еще получаю ошибку клиента «Сервер не найден в базе данных Kerberos», и он возвращается к использованию аутентификации по паролю. Я передаю данные, -Kчтобы включить пересылку токенов Kerberos.

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

решение1

Вы можете использовать имя принципала, известное вашему контроллеру домена, передав эту GSSAPIServerIdentityопцию вашему sshклиенту:

-oGSSAPIServerIdentity=host.domain.com

Из ssh_configстраницы руководства:

GSSAPIServerIdentity Если установлено, указывает идентификатор сервера GSSAPI, который ssh ​​должен ожидать при подключении к серверу. Значение по умолчанию не установлено, что означает, что ожидаемый идентификатор сервера GSSAPI будет определяться из целевого имени хоста.

Связанный контент