Kerberos 客户端如何确定 SPN 的服务名称部分?

Kerberos 客户端如何确定 SPN 的服务名称部分?

如果我部署一个服务器调用 FOO/host.example.com@myrealm,客户端如何知道服务名称是 FOO?

环境:Unix / MIT kerberos 1.4 或 1.10

我看到 Windows 有某种映射:HOST/机器 SPN 究竟如何工作?那么 unix 怎么样?

答案1

通常客户端特定于服务 FOO,并且 SPN 语法FOO/<hostname>将在客户端应用程序中硬编码。

您需要为您所提供的服务手动设置正确的 SPN。

有时,多个服务会归入同一个 SPN 下,例如,经常可以看到实际的 Web 服务器 apache 使用HTTP/host服务主体名称进行响应,以及像 Jboss 或 Websphere 这样的应用程序服务器。这可以解释为,这些服务通常由同一类型的客户端(即 Web 浏览器)访问。

例如使用 SSH 和 telnet,HOST/<hostname>而不是像服务特定的 SPN SSH/<hostname>

如果您设置了 Dovecot 并提供 POP3 和 IMAP 访问,那么您将需要两个 SPN,每个服务/协议一个,尽管它只是一个应用程序。

相关内容