ADC

从物理服务器卸载 Kerberos 身份验证

NetScaler 设备可以从服务器卸载身份验证任务。NetScaler 在将所有客户端请求转发到绑定到它的任何物理服务器之前,先对所有客户端请求进行身份验证,而不是物理服务器对来自客户端的请求进行身份验证。用户身份验证基于 Active Directory 令牌。

NetScaler 和物理服务器之间没有身份验证,并且身份验证卸载对最终用户是透明的。首次登录 Windows 计算机后,最终用户不必在弹出窗口或登录页面中输入任何其他身份验证信息。

在当前的 NetScaler 设备版本中,Kerberos 身份验证仅适用于身份验证、授权和审核流量管理虚拟服务器。NetScaler Gateway Advanced Edition 设备中的 SSL VPN 或 NetScaler 设备管理不支持 Kerberos 身份验证。

Kerberos 身份验证需要在 NetScaler 设备和客户端浏览器上进行配置。

在 NetScaler 设备上配置 Kerberos 身份验证

注意

以下示例配置中使用的口令只是示例,而不是实际的配置口令。

  1. 在 Active Directory 上创建一个用户帐户。创建用户帐户时,请验证“用户属性”部分中的以下选项:

    • 确保没有选择下次登录时更改密码选项。
    • 请务必选择“密码不会过期”选项。
  2. 在 AD 服务器上的 CLI 命令提示符下键入:

    • ktpass -princ HTTP/kerberos.crete.lab.net@crete.lab.net -ptype KRB5_NT_PRINCIPAL -mapuser kerbuser@crete.lab.net -mapop set -pass Citrix1 -out C:\kerbtabfile.txt

    注意

    请务必在单行中键入上述命令。上述命令的输出将写入 C:\kerbtabfile.txt 文件中。

  3. 使用安全复制 (SCP) 客户端将 kerbtabfile.txt 文件上载到 NetScaler 设备的 /etc 目录。

  4. 运行以下命令将 DNS 服务器添加到 NetScaler 设备。

    • add dns nameserver 1.2.3.4

    没有 DNS 服务器,NetScaler 设备无法处理 Kerberos 请求。确保使用 Microsoft Windows 域中使用的 DNS 服务器相同。

  5. 切换到 NetScaler 的命令行界面。

  6. 运行以下命令创建 Kerberos 身份验证服务器:

    • 添加身份验证谈判操作 KerberosServer-域“crete.lab.net”-域用户 kerbuser-domainUserPassWD Citrix1-keytab /var/mykcd.keytab

    注意

    如果 keytab 不可用,则可以指定参数:域、域用户和-domainUserPasswd。

  7. 运行以下命令创建协商策略:

    • add authentication negotiatePolicy Kerberos-Policy "REQ.IP.DESTIP == 192.168.17.200" KerberosServer<!--NeedCopy-->
  8. 运行以下命令创建身份验证虚拟服务器。

    • add authentication vserver Kerb-Auth SSL 192.168.17.201 443 -AuthenticationDomain crete.lab.net<!--NeedCopy-->
  9. 运行以下命令将 Kerberos 策略绑定到身份验证虚拟服务器:

    • bind authentication vserver Kerb-Auth -policy Kerberos-Policy -priority 100<!--NeedCopy-->
  10. 运行以下命令将 SSL 证书绑定到身份验证虚拟服务器。您可以使用其中一个测试证书,可以从 GUI NetScaler 设备安装该证书。运行以下命令以使用 ServerTestCert 示例证书。

    • bind ssl vserver Kerb-Auth -certkeyName ServerTestCert<!--NeedCopy-->
  11. 使用 IP 地址 192.168.17.200 创建 HTTP 负载平衡虚拟服务器。

    如果 NetScaler 9.3 版本早于 9.3.47.8,请确保从命令行界面创建虚拟服务器。

  12. 运行以下命令来配置身份验证虚拟服务器:

    • set lb vserver <name>-authn401 ON -authnVsName Kerb-Auth<!--NeedCopy-->
  13. 在 Web 浏览器的地址栏中输入主机名 示例

    Web 浏览器显示一个身份验证对话框,因为在浏览器中未设置 Kerberos 身份验证。

    注意

    Kerberos 身份验证需要在客户端上进行特定配置。确保客户端可以解析主机名,这将导致 Web 浏览器连接到 HTTP 虚拟服务器。

  14. 在客户端计算机的 Web 浏览器上配置 Kerberos。

  15. 验证是否可以在没有身份验证的情况下访问后端物理服务器。

为 Kerberos 身份验证配置 IE 浏览器

  1. 从“工具”菜单中 选择“Internet 选项”。
  2. 激活“安 ”选项卡。
  3. 从选择要查看的区域更改安全设置部分中选择 本地 Intranet
  4. 单击“点”。
  5. 单击高级
  6. 指定 URL, 示例 ,然后单击 添加
  7. 重新启动 Internet Explorer

为 Kerberos 身份验证配置 Mozilla Firefox

  1. 在浏览器的地址栏中输入 about: config。
  2. 单击警告免责声明。
  3. 在“筛选器”框 中键入 Network.谈判auth.Trusted-URI
  4. 双击 网络。谈判身份验证。Trustedd-URIS。下面显示了一个示例屏幕。

    本地化后的图片

  5. 在“输入字符串值”对话框中,指定 www.crete.lab.net。
  6. 重新启动火狐浏览器。
从物理服务器卸载 Kerberos 身份验证