使用 SSH 和 -K 标志将 Linux 计算机加入 AD 时出现 Kerberos“在 Kerberos 数据库中未找到服务器”

使用 SSH 和 -K 标志将 Linux 计算机加入 AD 时出现 Kerberos“在 Kerberos 数据库中未找到服务器”

我遇到这样一种情况,我试图利用 GS​​SAPI(Kerberos)转发连接到另一台也加入 Windows AD 并使用 SSSD 的 Linux 服务器。

Linux 计算机使用与服务器实际 FQDN 不同的计算机名称加入域。当我使用域凭据登录第一台计算机时,PAM 成功,并向我发出有效令牌。它显示为klist。但是,即使在另一台也加入域的 Linux 主机上启用 SSH 上的 GSSAPI 和 Kerberos 登录后,我仍然收到“kerberos 数据库中未找到服务器”客户端错误,并且它恢复使用密码身份验证。我正在传递-K以启用 Kerberos 令牌转发。

如果我没记错的话,这可能是由于 AD(在本例中为 Kerberos 服务器)中的 SPN 问题造成的,其中 Linux 机器加入的机器名称与我要连接(或从?)的实际机器的 FQDN 不同,但我不确定,需要一些帮助为我指明正确的方向。

答案1

GSSAPIServerIdentity您可以通过将选项传递给客户端来使用域控制器已知的主体名称ssh

-oGSSAPIServerIdentity=host.domain.com

来自ssh_config手册页:

GSSAPIServerIdentity 如果设置,则指定 ssh 连接到服务器时应期望的 GSSAPI 服务器标识。默认为未设置,这意味着预期的 GSSAPI 服务器标识将根据目标主机名确定。

相关内容