这篇文章已经过机器翻译.放弃
从物理服务器卸载 Kerberos 身份验证
NetScaler 设备可以从服务器卸载身份验证任务。NetScaler 在将所有客户端请求转发到绑定到它的任何物理服务器之前,先对所有客户端请求进行身份验证,而不是物理服务器对来自客户端的请求进行身份验证。用户身份验证基于 Active Directory 令牌。
NetScaler 和物理服务器之间没有身份验证,并且身份验证卸载对最终用户是透明的。首次登录 Windows 计算机后,最终用户不必在弹出窗口或登录页面中输入任何其他身份验证信息。
在当前的 NetScaler 设备版本中,Kerberos 身份验证仅适用于身份验证、授权和审核流量管理虚拟服务器。NetScaler Gateway Advanced Edition 设备中的 SSL VPN 或 NetScaler 设备管理不支持 Kerberos 身份验证。
Kerberos 身份验证需要在 NetScaler 设备和客户端浏览器上进行配置。
在 NetScaler 设备上配置 Kerberos 身份验证
注意
以下示例配置中使用的口令只是示例,而不是实际的配置口令。
-
在 Active Directory 上创建一个用户帐户。创建用户帐户时,请验证“用户属性”部分中的以下选项:
- 确保没有选择下次登录时更改密码选项。
- 请务必选择“密码不会过期”选项。
-
在 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 文件中。
-
使用安全复制 (SCP) 客户端将 kerbtabfile.txt 文件上载到 NetScaler 设备的 /etc 目录。
-
运行以下命令将 DNS 服务器添加到 NetScaler 设备。
- add dns nameserver 1.2.3.4
没有 DNS 服务器,NetScaler 设备无法处理 Kerberos 请求。确保使用 Microsoft Windows 域中使用的 DNS 服务器相同。
-
切换到 NetScaler 的命令行界面。
-
运行以下命令创建 Kerberos 身份验证服务器:
- 添加身份验证谈判操作 KerberosServer-域“crete.lab.net”-域用户 kerbuser-domainUserPassWD Citrix1-keytab /var/mykcd.keytab
注意
如果 keytab 不可用,则可以指定参数:域、域用户和-domainUserPasswd。
-
运行以下命令创建协商策略:
add authentication negotiatePolicy Kerberos-Policy "REQ.IP.DESTIP == 192.168.17.200" KerberosServer<!--NeedCopy-->
-
运行以下命令创建身份验证虚拟服务器。
add authentication vserver Kerb-Auth SSL 192.168.17.201 443 -AuthenticationDomain crete.lab.net<!--NeedCopy-->
-
运行以下命令将 Kerberos 策略绑定到身份验证虚拟服务器:
bind authentication vserver Kerb-Auth -policy Kerberos-Policy -priority 100<!--NeedCopy-->
-
运行以下命令将 SSL 证书绑定到身份验证虚拟服务器。您可以使用其中一个测试证书,可以从 GUI NetScaler 设备安装该证书。运行以下命令以使用 ServerTestCert 示例证书。
bind ssl vserver Kerb-Auth -certkeyName ServerTestCert<!--NeedCopy-->
-
使用 IP 地址 192.168.17.200 创建 HTTP 负载平衡虚拟服务器。
如果 NetScaler 9.3 版本早于 9.3.47.8,请确保从命令行界面创建虚拟服务器。
-
运行以下命令来配置身份验证虚拟服务器:
set lb vserver <name>-authn401 ON -authnVsName Kerb-Auth<!--NeedCopy-->
-
在 Web 浏览器的地址栏中输入主机名 示例 。
Web 浏览器显示一个身份验证对话框,因为在浏览器中未设置 Kerberos 身份验证。
注意
Kerberos 身份验证需要在客户端上进行特定配置。确保客户端可以解析主机名,这将导致 Web 浏览器连接到 HTTP 虚拟服务器。
-
在客户端计算机的 Web 浏览器上配置 Kerberos。
- 要在 Internet Explorer 上进行 配置,请参阅为 Kerberos 身份验证配置 Internet Explorer。
- 要在 Mozilla Firefox 上进行 配置,请参阅为 Kerberos 身份验证配置互联网浏览器
-
验证是否可以在没有身份验证的情况下访问后端物理服务器。
为 Kerberos 身份验证配置 IE 浏览器
- 从“工具”菜单中 选择“Internet 选项”。
- 激活“安 全”选项卡。
- 从选择要查看的区域更改安全设置部分中选择 本地 Intranet 。
- 单击“站点”。
- 单击高级。
- 指定 URL, 示例 ,然后单击 添加。
- 重新启动 Internet Explorer。
为 Kerberos 身份验证配置 Mozilla Firefox
- 在浏览器的地址栏中输入 about: config。
- 单击警告免责声明。
- 在“筛选器”框 中键入 Network.谈判auth.Trusted-URI 。
-
双击 网络。谈判身份验证。Trustedd-URIS。下面显示了一个示例屏幕。
- 在“输入字符串值”对话框中,指定 www.crete.lab.net。
- 重新启动火狐浏览器。