Kerberos 创建 spn 和 keytabs 以包含代理 DNS

Kerberos create spn and keytabs to include proxy DNS

我想创建 SPN 和密钥表以包含代理 DNS,以便代理可以将 headers 转发到 back-end。我不确定什么是主机、域和领域。有人可以验证它看起来是否正常吗?还是我加的 example.com 太多了?

代理将服务器名称配置为测试。example.com 领域是example.com

setspn -a HTTP/testing.example.com testinghttp

setspn -a HTTP/testing.example.com.example.com testinghttp

ktpass -princ HTTP/testing.example.com.example.com@example.com -pass 密码 -mapuser example\testinghttp -crypto ALL -ptype KRB5_NT_PRINCIPAL -out d:\temp\key.keytab -kvno 0

假设代理在同一个域,你只需要知道代理的脸url。使用这张脸 url 作为 SPN 值。假设你的代理人脸 url 是 http://testing.example.com,命令 setspn -a HTTP/testing.example.com testinghttp 是正确的。

此外,如果您是生成keytab,则无需执行上述命令。 ktpass 中指定的 SPN(代理面url)会自动附加到给定的用户。 用户的 UPN 也更改为此 SPN 值。

代理将(它必须)将请求 'as is'(包含所有 header)重定向到末尾 node/server。 在接收端(服务器),您需要接受 'Negotiate' header 中的票证。为此,您必须使用上面生成的密钥表(及其密码)。