Citrix Gateway

双跳 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 部署中,对用户进行身份验证是用户连接过程的第一步。

下图显示了此部署中的用户连接过程。

双跳 DMZ 中的用户身份验证过程

在用户身份验证阶段,将发生以下基本过程:

  1. 用户在第一个 DMZ 中输入 Citrix Gateway 的地址,例如 https://www.ng.wxyco.com 在 Web 浏览器中连接到 Citrix Gateway。如果在 Citrix Gateway 上启用了登录页面身份验证,Citrix Gateway 将对用户进行身份验
  2. 第一个 DMZ 中的 Citrix Gateway 会收到请求。
  3. Citrix Gateway 会将 Web 浏览器连接重定向到 Web Interface。
  4. Web Interface 会将用户凭据发送到在内部网络的服务器场中运行的 Citrix XML 服务。
  5. Citrix XML 服务会对用户进行身份验证。
  6. 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 部署中用户连接过程的第二阶段。

    在会话票证创建阶段,将执行以下基本过程:

  7. Web Interface 与内部网络中的 XML 服务和 Secure Ticket Authority (STA) 进行通信,为用户有权访问的每个已发布应用程序生成会话票证。会话票证包含运行托管已发布应用程序的 Citrix Virtual Apps 的计算机的别名地址。
  8. STA 保存托管已发布应用程序的服务器的 IP 地址。然后 STA 将请求的会话票证发送到 Web Interface。每个会话票证都包含一个别名,该别名表示托管已发布应用程序的服务器的 IP 地址,但不是实际的 IP 地址。
  9. Web Interface 会为每个已发布的应用程序生成一个 ICA 文件。ICA 文件包含 STA 签发的票证。然后,Web Interface 会创建一个网页,并使用指向已发布应用程序的链接列表填充网页,然后将此网页发送到用户设备上的 Web 浏览器。

    启动 Citrix Workspace 应用程序是双跃点 DMZ 部署中用户连接过程的第三阶段。基本过程如下:

  10. 用户在 Web Interface 中单击指向已发布应用程序的链接。Web Interface 会将该已发布应用程序的 ICA 文件发送到用户设备的浏览器。

    ICA 文件包含指示 Web 浏览器启动 Receiver 的数据。

    ICA 文件还包含第一个 DMZ 中 Citrix Gateway 的完全限定域名 (FQDN) 或域名系统 (DNS) 名称。

  11. 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 的计算机进行通信

    完成用户连接过程的详细步骤如下:

  12. Citrix Workspace 应用程序将已发布应用程序的 STA 票证发送到第一个 DMZ 中的 Citrix Gateway。
  13. 第一个 DMZ 中的 Citrix Gateway 与内部网络中的 STA 联系以进行票证验证。要联系 STA,Citrix Gateway 会在第二个 DMZ 中建立与 Citrix Gateway 代理的 SSL 连接的 SOCKS 或 SOCKS。
  14. 第二个 DMZ 中的 Citrix Gateway 代理将票证验证请求传递给内部网络中的 STA。STA 会验证票证并将其映射到运行 Citrix Virtual Apps 的托管已发布应用程序的计算机。
  15. STA 向第二个 DMZ 中的 Citrix Gateway 代理发送响应,该响应将在第一个 DMZ 中传递给 Citrix Gateway。此响应将完成票证验证,并包含托管已发布应用程序的计算机的 IP 地址。
  16. 第一个 DMZ 中的 Citrix Gateway 将 Citrix Virtual Apps 用服务器的地址合并到用户连接数据包中,然后将此数据包发送到第二个 DMZ 中的 Citrix Gateway 代理。
  17. 第二个 DMZ 中的 Citrix Gateway 代理向连接数据包中指定的服务器发出连接请求。
  18. 服务器在第二个 DMZ 中响应 Citrix Gateway 代理。第二个 DMZ 中的 Citrix Gateway 代理将此响应传递给第一个 DMZ 中的 Citrix Gateway,以在第一个 DMZ 中完成服务器与 Citrix Gateway 之间的连接。
  19. 第一个 DMZ 中的 Citrix Gateway 通过将最终连接数据包传递到用户设备来完成与用户设备的 SSL/TLS 握手。从用户设备到服务器的连接已建立。
  20. ICA 流量在用户设备和服务器之间通过第一个 DMZ 中的 Citrix Gateway 和第二个 DMZ 中的 Citrix Gateway 代理在用户设备和服务器之间流动。
双跳 DMZ 部署中的通信流