我有一种情况,我试图利用GSSAPI(Kerberos)转发连接到另一个也join到Windows AD并使用SSSD的Linux服务器。
Linux机器使用与服务器的实际FQDN不同的机器名称join域。 当我用我的域名证书login到第一台机器时,PAM成功了,我发出了一个有效的令牌。 它显示与klist 。 但是,即使在另一台已join域的Linux主机上启用了SSH上的GSSAPI和Kerberoslogin之后,我仍然得到“在kerberos数据库中找不到服务器”的客户端错误,并退回到使用密码身份validation。 我正在通过-K来启用Kerberos令牌转发。
如果我的内存服务正确,这可能是由于AD中的Kerberos服务器(在这种情况下是Kerberos服务器)中的SPN问题,而Linux机器与我正在连接(或从中)连接的实际机器的FQDN以不同的机器名称连接我不确定,需要一些帮助指引我在正确的方向。
您可以通过将GSSAPIServerIdentity选项传递给您的ssh客户端来使用您的域控制器已知的主体名称:
-oGSSAPIServerIdentity=host.domain.com
从ssh_config页:
GSSAPIServerIdentity如果设置,则指定连接到服务器时ssh应该预期的GSSAPI服务器标识。 默认值是未设置,这意味着预期的GSSAPI服务器标识将由目标主机名确定。