双跃点 DMZ 部署中的通信流
要了解双跃点 DMZ 部署中涉及的配置问题,您必须对双跃点 DMZ 部署中的各种 Citrix Gateway 和 Citrix Virtual Apps 组件如何通信以支持用户连接有基本的了解。StoreFront 和 Web Interface 的连接过程是相同的。
尽管用户连接过程在一个连续的流程中进行,但该过程涉及以下高级步骤。
-
验证用户身份
-
创建会话票证
-
启动 Citrix Workspace 应用程序
-
完成连接
下图显示了在用户连接到 StoreFront 或 Web Interface 的过程中发生的步骤。在安全网络中,运行 Citrix Virtual Apps 的计算机也在运行 Secure Ticket Authority (STA)、XML 服务和已发布的应用程序。
连接过程
在双跃点 DMZ 部署中,对用户进行身份验证是用户连接过程的第一步。
下图显示了此部署中的用户连接过程。
在用户身份验证阶段,将发生以下基本过程:
-
用户在第一个 DMZ 中输入 Citrix Gateway 的地址,例如
<https://www.ng.wxyco.com>在 Web 浏览器中连接到 Citrix Gateway。如果在 Citrix Gateway 上启用了登录页面身份验证,Citrix Gateway 将对用户进行身份验 -
第一个 DMZ 中的 Citrix Gateway 会收到请求。
-
Citrix Gateway 会将 Web 浏览器连接重定向到 Web Interface。
-
Web Interface 会将用户凭据发送到在内部网络的服务器场中运行的 Citrix XML 服务。
-
Citrix XML 服务会对用户进行身份验证。
-
XML 服务创建用户有权访问的已发布应用程序的列表,并将此列表发送到 Web Interface。注意:
-
如果在 Citrix Gateway 上启用身份验证,则设备会向用户发送 Citrix Gateway 登录页面。用户在登录页面上输入身份验证凭据,设备将对用户进行身份验证。然后,Citrix Gateway 将用户凭据返回到 Web Interface。
-
如果未启用身份验证,Citrix Gateway 将不会执行身份验证。设备连接到 Web Interface,检索 Web Interface 登录页面,然后将 Web Interface 登录页发送给用户。用户在 Web Interface 登录页面上输入身份验证凭据,Citrix Gateway 将用户凭据传回 Web Interface。
创建会话票证是双跃点 DMZ 部署中用户连接过程的第二阶段。在会话票证创建阶段,将执行以下基本过程: -
-
Web Interface 与内部网络中的 XML 服务和 Secure Ticket Authority (STA) 进行通信,为用户有权访问的每个已发布应用程序生成会话票证。会话票证包含运行托管已发布应用程序的 Citrix Virtual Apps 的计算机的别名地址。
-
STA 保存托管已发布应用程序的服务器的 IP 地址。然后 STA 将请求的会话票证发送到 Web Interface。每个会话票证都包含一个别名,该别名表示托管已发布应用程序的服务器的 IP 地址,但不是实际的 IP 地址。
-
Web Interface 会为每个已发布的应用程序生成一个 ICA 文件。ICA 文件包含 STA 签发的票证。然后,Web Interface 会创建一个网页,并使用指向已发布应用程序的链接列表填充网页,然后将此网页发送到用户设备上的 Web 浏览器。启动 Citrix Workspace 应用程序是双跃点 DMZ 部署中用户连接过程的第三阶段。基本过程如下:
-
用户在 Web Interface 中单击指向已发布应用程序的链接。Web Interface 会将该已发布应用程序的 ICA 文件发送到用户设备的浏览器。ICA 文件包含指示 Web 浏览器启动 Receiver 的数据。ICA 文件还包含第一个 DMZ 中 Citrix Gateway 的完全限定域名 (FQDN) 或域名系统 (DNS) 名称。
-
Web 浏览器启动 Receiver,用户通过使用 ICA 文件中的 Citrix Gateway 名称在第一个 DMZ 中连接到 Citrix Gateway。进行初始 SSL/TLS 握手是为了建立运行 Citrix Gateway 的服务器的身份。在双跃点 DMZ 部署中,完成连接是用户连接过程的第四个也是最后一个阶段。在连接完成阶段,将发生以下基本过程:
-
用户在 Web Interface 中单击指向已发布应用程序的链接。
-
Web 浏览器接收由 Web Interface 生成的 ICA 文件并启动 Citrix Workspace 应用程序。 注意:ICA 文件包含指示 Web 浏览器启动 Citrix Workspace 应用程序的代码。
-
Citrix Workspace 应用程序在第一个 DMZ 中启动与 Citrix Gateway 的 ICA 连接。
-
第一个 DMZ 中的 Citrix Gateway 与内部网络中的 Secure Ticket Authority (STA) 进行通信,以将会话票证中的别名地址解析为运行 Citrix Virtual Apps 或 StoreFront 的计算机的真实 IP 地址。此通信由 Citrix Gateway 代理通过第二个 DMZ 进行代理。
-
第一个 DMZ 中的 Citrix Gateway 完成了与 Citrix Workspace 应用程序的 ICA 连接。
-
Citrix Workspace 应用程序现在可以通过两个 Citrix Gateway 设备与内部网络上运行 Citrix Virtual Apps 的计算机进行通信
完成用户连接过程的详细步骤如下: -
-
Citrix Workspace 应用程序将已发布应用程序的 STA 票证发送到第一个 DMZ 中的 Citrix Gateway。
-
第一个 DMZ 中的 Citrix Gateway 与内部网络中的 STA 联系以进行票证验证。要联系 STA,Citrix Gateway 会在第二个 DMZ 中建立与 Citrix Gateway 代理的 SSL 连接的 SOCKS 或 SOCKS。
-
第二个 DMZ 中的 Citrix Gateway 代理将票证验证请求传递到内部网络中的 STA。STA 会验证票证并将其映射到运行 Citrix Virtual Apps 的托管已发布应用程序的计算机。
-
STA 向第二个 DMZ 中的 Citrix Gateway 代理发送响应,该响应将在第一个 DMZ 中传递到 Citrix Gateway。此响应将完成票证验证,并包含托管已发布应用程序的计算机的 IP 地址。
-
第一个 DMZ 中的 Citrix Gateway 将 Citrix Virtual Apps 用服务器的地址合并到用户连接数据包中,然后将此数据包发送到第二个 DMZ 中的 Citrix Gateway 代理。
-
第二个 DMZ 中的 Citrix Gateway 代理向连接数据包中指定的服务器发出连接请求。
-
服务器在第二个 DMZ 中响应 Citrix Gateway 代理。第二个 DMZ 中的 Citrix Gateway 代理将此响应传递到第一个 DMZ 中的 Citrix Gateway,以在第一个 DMZ 中完成服务器与 Citrix Gateway 之间的连接。
-
第一个 DMZ 中的 Citrix Gateway 通过将最终连接数据包传递到用户设备来完成与用户设备的 SSL/TLS 握手。从用户设备到服务器的连接已建立。
-
ICA 流量通过第一个 DMZ 中的 Citrix Gateway 和第二个 DMZ 中的 Citrix Gateway 代理在用户设备和服务器之间流动。