RDP 代理

通过 Citrix 网关的 RDP 代理概述和增强功能

以下 RDP 代理功能可通过 Citrix 网关访问远程桌面场:

  • 通过 CVPN 或 iCAProxy 模式(无完整隧道)保护 RDP 流量。

  • 通过 Citrix 网关登录到 RDP 服务器的单次登录 (SSO)。如果需要,还提供了一个禁用 SSO 的选项)。

  • 强制 (智能访问) 功能,其中 Citrix ADC 管理员可以通过 Citrix 网关配置禁用某些 RDP 功能。

  • 满足所有需求的单/无状态(双)网关解决方案(VPN/ICA/RDP/Citrix 端点管理)。

  • 与本机 Windows MSTSC 客户端的 RDP 兼容性,而无需任何自定义客户端。

  • 在 MACOSX、iOS 和 Android 上使用 Microsoft 提供的现有 RDP 客户端。

部署概述

下图描述了部署的概述:

本地化后的图片

RDP 代理功能作为 Citrix 网关的一部分提供。在典型部署中,RDP 客户端在远程用户的计算机上运行。Citrix 网关设备部署在 DMZ 内,RDP 服务器场位于内部企业网络中。远程用户连接到 Citrix 网关公有 IP 地址,建立 SSL VPN 连接,并对自己进行身份验证,之后他或她可以通过 Citrix 网关设备访问远程桌面。

在 CVPN 和 ICA 代理模式中支持 RDP 代理功能。

通过 CVPN 进行部署

在此模式下,RDP 链接将以书签形式在网关主页或门户网站上发布,通过 “添加 vpn url” 配置或通过外部门户网站。用户可以单击这些链接来访问远程桌面。

通过 ICaProxy 进行部署

在此模式下,通过使用 wihome 参数在网关 VIP 上配置自定义主页。可以使用允许用户访问的远程桌面资源列表自定义此主页。此自定义页面可以托管在 Citrix ADC 上,如果是外部页面,则可以是现有网关门户页面中的 iFrame。

在任何一种模式下,用户单击已置备的 RDP 链接或图标后,相应资源的 HTTPS 请求到达 Citrix 网关。网关为请求的连接生成 RDP 文件内容并将其推送到客户端。调用本机 RDP 客户端,并连接到网关上的 RDP 侦听器。网关通过支持强制(智能访问)对 RDP 服务器执行 SSO,其中网关根据 Citrix ADC 配置阻止客户端对某些 RDP 功能的访问,然后代理 RDP 客户端与服务器之间的 RDP 流量。

执行详细信息

Citrix ADC 管理员可以通过 Citrix 网关配置配置某些 RDP 功能。Citrix 网关为重要的 RDP 参数提供了 “RDP 强制执行” 功能。Citrix ADC 确保客户端无法启用阻止的参数。如果已启用阻止的参数,则 RDP 强制功能将取代启用客户端的参数,并且不支持这些参数。

支持强制执行的 RDP 参数

支持强制执行以下重定向参数。这些可作为 RDP 客户端配置文件的一部分进行配置。

  • 剪贴板的重定向

  • 打印机的重定向

  • 磁盘驱动器的重定向

  • COM 端口的重定向

  • pnp 设备的重定向

连接流程

连接流程可分为两个步骤:

  • RDP 资源枚举和 RDP 文件下载。

  • RDP 连接启动。

基于上述连接流程,有两种部署解决方案:

  • 无状态(双)网关解决方案-RDP 资源枚举和 RDP 文件下载通过身份验证器网关进行,但 RDP 连接启动通过 RDP 侦听器网关进行。

  • 单个网关解决方案-通过同一网关进行 RDP 资源枚举、RDP 文件下载和 RDP 连接启动。

无状态(双)网关兼容性

下图描述了部署情况:

本地化后的图片

  • 用户连接到身份验证器网关 VIP 并提供其凭据。

  • 成功登录到网关后,用户将被重定向到主页或外部门户,该门户将枚举用户可以访问的远程桌面资源。

  • 用户选择 RDP 资源后,身份验证器网关 VIP 将接收请求,格式为https://vserver-vip/rdpproxy/rdptarget/listener 指示用户单击的已发布资源。此请求包含有关用户选择的 RDP 服务器的 IP 地址和端口的信息。

  • /rdpproxy/ 请求由身份验证器网关处理。由于用户已经通过身份验证,因此此请求附带有效的网关 cookie。

  • RDPTarget 和 RDP用户信息存储在 STA 服务器上,并生成 STA 票证。通过使用配置的预共享密钥对存储在 STA 服务器上的信息进行加密。身份验证器网关使用网关 vserver 上配置的 STA 服务器之一。

  • 在 /rdpproxy/ 请求中获得的 ‘侦听器’ 信息作为 “完整地址” 放入 .rdp 文件中,STA 票证(预先使用 STA AuthID)作为 “负载均衡信息” 放入 .rdp 文件中。 “

  • .rdp 文件被发送回客户端端点。

  • 本机 RDP 客户端启动并连接到 RDPListener 网关。它在初始数据包中发送 STA 票证。

    RDPListener 网关验证 STA 票证并获取 RDPs 目标和 RDPs 用户信息。要使用的 STA 服务器通过使用负载均衡信息中存在的 “AuthID” 来检索。

单网关兼容性

下图描述了部署情况:

本地化后的图片

在单个网关部署的情况下,不需要 STA 服务器。身份验证器网关对 RDPTarget 和 AAA 会话 cookie 进行安全编码,并将它们作为 .rdp 文件中的负载均衡信息发送。当 RDP 客户端在初始数据包中发送此令牌时,身份验证器网关将解码 RDPTarget 信息,查找会话并连接到 RDPTarget。

RDP 代理的许可证要求

白金版、白金版、企业版

注意 RDP 代理功能不适用于只有网关平台许可证或只有标准版的客户。

RDP 代理功能必须启用 RDP 代理才能工作。

enable feature rdpProxy

配置步骤

高级配置步骤如下所示:

  1. 启用此功能
  2. 在网关门户上创建书签或使用枚举 RDP 资源的自定义网关门户
  3. 配置 RDP 客户端配置文件
  4. 配置 RDP 服务器配置文件

启用所需的功能和模式

  • 启用 ns 功能 SSL

  • 启用 ns 功能 sslvpn

  • 启用 ns 功能 rdpproxy

  • 启用模式 usnip

创建书签

  1. 在门户页面上创建书签以访问 RDP 资源:(实际 URL 以 rdp: // 开头)。

  2. 添加 VPN 网址<urlName> <linkName>  <actualURL>

    • URL 必须采用以下格式:rdp://<TargetIP:Port>
    • 对于无状态 RDP 代理模式,URL 必须采用以下格式:rdp://<TargetIP:Port>/<ListenerIP:Port>

    • 该 URL 将以下格式在门户上发布: https://<VPN-VIP>/rdpproxy/<TargetIP:Port> https://<VPN-VIP>/rdpproxy/<TargetIP:Port>/<ListenerIP:Port>
  3. 将书签绑定到用户、组、VPN 虚拟服务器或 VPN 全局。

配置客户端配置文件

在身份验证器网关上配置客户端配置文件。以下是一个示例配置:

add rdpClient profile <name> [-addUserNameInRdpFile ( YES | NO )] [-audioCaptureMode ( ENABLE | DISABLE )] [-keyboardHook <keyboardHook>] [-multiMonitorSupport ( ENABLE | DISABLE )] [-psk <string>] [-rdpCookieValidity <positive_integer>] [-rdpCustomParams <string>] [-rdpFileName <string>] [-rdpHost <optional FQDN that will be put in the RDP file as ‘fulladdress>] [-rdpUrlOverride ( ENABLE | DISABLE )] [-redirectClipboard ( ENABLE | DISABLE )] [-redirectComPorts ( ENABLE | DISABLE )] [-redirectDrives ( ENABLE | DISABLE )] [-redirectPnpDevices ( ENABLE | DISABLE )] [-redirectPrinters ( ENABLE | DISABLE )] [-videoPlaybackMode ( ENABLE | DISABLE )]

将 RDP 客户端配置文件与 VPN vserver 关联。

这可以通过配置会话操作 + 会话策略或通过设置全局 vpn 参数来完成。

示例:

add vpn sessionaction <actname> -rdpClientprofile <rdpprofilename>

add vpn sessionpolicy <polname> NS_TRUE <actname>

bind vpn vserver <vservername> -policy <polname> -priority <prioritynumber>

或者

set vpn parameter –rdpClientprofile <name>

配置服务器配置文件

在侦听器网关上配置服务器配置文件。

add rdpServer Profile <profilename> -rdpIP <IPV4 address of the RDP listener> -rdpPort <port for terminating RDP client connections> -psk <key to decrypt RDPTarget/RDPUser information, needed while using STA>

RDPServer 配置文件必须在 “VPN 虚拟服务器” 上进行配置。

add vpn vserver v1 SSL <publicIP> <portforterminatingvpnconnections> -rdpServerProfile <rdpServer Profile>

示例配置

本地化后的图片

  • 启用所需的功能和模式

    • 启用 ns 功能 SSL

    • 启用 ns 功能 sslvpn

    • 启用 ns 功能 rdpproxy

    • 启用模式 usnip

  • 为具有目标信息的用户添加 VPN URL

     add aaa user Administrator –password freebsd123$%^
    
     add vpn url rdp RdpLink rdp://rdpserverinfo
    
     add dns addrec rdpserverinfo 10.102.147.132
    
     bind aaa user Administrator  –urlName rdp
    
  • 为 VPN 连接配置 RDP 客户端和服务器配置文件

     add rdp clientprofile p1 –psk citrix -redirectClipboard ENABLE
    
     add rdp serverprofile p1 -rdpIP 10.102.147.134 -psk citrix
    
     add vpn vserver mygateway SSL  10.102.147.134 443 –rdpserverprofile p1
    
     set vpn parameter -clientlessVpnMode ON -defaultAuthorizationAction ALLOW -rdpClientProfileName p1
    
     add ssl certKey gatewaykey -cert rdp_rootcert.pem  -key rdp_rootkey
    
     bind ssl vserver mygateway -certkeyName gatewaykey
    
  • 添加 SNIP 以便从 Citrix ADC 连接到目标

     add ns ip 10.102.147.135  255.255.255.0 –type SNIP
    

禁用 SSO 的选项

可以通过配置 Citrix ADC 流量策略来禁用具有 RDP 代理的 SSO(单点登录)功能,以便始终提示用户输入凭据。禁用 SSO 时,RDP 强制(智能访问)不起作用。

示例配置:

add vpn trafficaction <TrafficActionName> HTTP -SSO OFF

流量策略可以根据要求进行配置,以下是两个示例:

• 要为所有流量禁用 SSO,请执行以下操作:

add vpn trafficpolicy <TrafficPolicyName>  "url contains rdpproxy" <TrafficActionName>

• 基于源/目标IP/FQDN 禁用 SSO

add vpn trafficPolicy <TrafficPolicyName>  "REQ.HTTP.URL CONTAINS rdpproxy && REQ.IP.SOURCEIP == <IP/FQDN>" <TrafficActionName> bind vpnvserver rdp -policy <TrafficActionName>

支持单个监听器

  • 用于 RDP 和 SSL 流量的单个侦听器。

  • RDP 文件下载和 RDP 流量可以通过 Citrix ADC 上的相同 2 元组(即 IP 和端口)进行处理。

书签

**通过门户网站生成 RDP 链接。 **无需为用户配置 RDP 链接或通过外部门户发布 RDP 链接,您可以通过提供 Targerip: Port 来为用户提供生成自己的 URL 的选项。对于无状态 RDP 代理部署,管理员可以在 FQDN:端口格式中包含 RDP 侦听器信息,作为 RDP 客户端配置文件的一部分。这是在 Rdplistener 选项下完成的。此配置将用于在双网关模式下通过门户生成 RDP 链接。

本地化后的图片

RDP 代理配置

执行以下操作来配置 RDP 代理:

  1. 展开 Citrix 网关,展开 略,右键单击 RDP,然后单击 启用功能

    本地化后的图片

  2. 点击左侧的 RDP。在右侧,切换到 客户端配置文件 选项卡,然后单击 添加

    本地化后的图片

  3. 为客户端配置文件指定一个名称,并根据需要对其进行配置。向下滚动

    本地化后的图片

  4. 在 RDP 主机字段中,输入解析为 RDP 代理侦听器的 FQDN,该侦听器通常与 Citrix 网关设备的 FQN 相同。

  5. 底部附近是一个预共享密钥。输入密码,然后单击 确定。你以后会需要这个。

    本地化后的图片

  6. 为服务器配置文件指定一个名称。

  7. 输入要绑定的网关虚拟服务器的 IP 地址。

  8. 输入您为 RDP 客户端配置文件配置的相同预共享密钥。点击 创建

    本地化后的图片

  9. 如果要将 RDP 书签放在 “无客户端访问” 门户页面上,请在左侧展开 Citrix 网关,展开 “ 资源”,然后单击 “ 书签”。

    本地化后的图片

  10. 点击右侧的 “ 添加”。

    本地化后的图片

  11. 为书签指定一个名称。

  12. 对于 URL,请使用 IP 或 DNS 输入 rdp: //MyRDP服务器。

  13. 选中使用 Citrix 网关作为反向代理旁边的复选框,然后单击创建。

  14. 根据需要创建更多书签。

    本地化后的图片

  15. 创建或编辑会话配置文件或策略。

  16. 在 “安全” 选项卡上,将 “ 默认授权操 作” 设置为 “ 允许 ”。或者,您可以使用授权策略来控制访问。

    本地化后的图片

  17. 在 “远程桌面” 选项卡上,选择您之前创建的 RDP 客户端配置文件。

    本地化后的图片

  18. 如果要使用书签,请在 “ 客户端体验 ” 选项卡上,将 无客户端访问 设置为 “ ”。

    本地化后的图片

  19. 在 “ 已发布的应用程序 ” 选项卡上,确保 ICA 代理 处于 关闭状态

    本地化后的图片

  20. 修改或创建网关虚拟服务器。

  21. 基本设置 部分,单击 更多

    本地化后的图片

  22. 使用 RDP 服务器配置文件下拉菜单选择之前创建的 RDP 服务器配置文件。

    本地化后的图片

  23. 向下滚动。确保未选中 “ 仅 ICA ”。

    本地化后的图片

  24. 绑定证书。

  25. 绑定身份验证策略。

  26. 绑定配置了 RDP 客户端配置文件的会话策略/配置文件。 本地化后的图片

  27. 点击左侧的 RDP。在右侧,切换到 客户端配置文件 选项卡,然后单击 添加

    本地化后的图片

  28. 为客户端配置文件指定一个名称,并根据需要对其进行配置。向下滚动

    本地化后的图片

  29. 在 RDP 主机字段中,输入解析为 RDP 代理侦听器的 FQDN,该侦听器通常与 Citrix 网关设备的 FQN 相同。

  30. 底部附近是一个预共享密钥。输入密码,然后单击 确定。你以后会需要这个。

    本地化后的图片

  31. 为服务器配置文件指定一个名称。

  32. 输入要绑定的网关虚拟服务器的 IP 地址。

  33. 输入您为 RDP 客户端配置文件配置的相同预共享密钥。点击 创建

    本地化后的图片

  34. 如果要将 RDP 书签放在 “无客户端访问” 门户页面上,请在左侧展开 Citrix 网关,展开 “ 资源”,然后单击 “ 书签”。

    本地化后的图片

  35. 点击右侧的 “ 添加”。

    本地化后的图片

  36. 为书签指定一个名称。

  37. 对于 URL,请使用 IP 或 DNS 输入 rdp: //MyRDP服务器。

  38. 选中使用 Citrix 网关作为反向代理旁边的复选框,然后单击创建。

  39. 根据需要创建更多书签。

    本地化后的图片

  40. 创建或编辑会话配置文件或策略。

  41. 在 “安全” 选项卡上,将 “ 默认授权操 作” 设置为 “ 允许 ”。或者,您可以使用授权策略来控制访问。

    本地化后的图片

  42. 在 “远程桌面” 选项卡上,选择您之前创建的 RDP 客户端配置文件。

    本地化后的图片

  43. 如果要使用书签,请在 “ 客户端体验 ” 选项卡上,将 无客户端访问 设置为 “ ”。

    本地化后的图片

  44. 在 “ 已发布的应用程序 ” 选项卡上,确保 ICA 代理 处于 关闭状态

    本地化后的图片

  45. 修改或创建网关虚拟服务器。

  46. 基本设置 部分,单击 更多

    本地化后的图片

  47. 使用 RDP 服务器配置文件下拉菜单选择之前创建的 RDP 服务器配置文件。

    本地化后的图片

  48. 向下滚动。确保未选中 “ 仅 ICA ”。

    本地化后的图片

  49. 绑定证书。

  50. 绑定身份验证策略。

  51. 绑定配置了 RDP 客户端配置文件的会话策略/配置文件。

    本地化后的图片

  52. 您可以将书签绑定到 Citrix 网关虚拟服务器或 AAA 组。要绑定到 Citrix 网关虚拟服务器,请在右侧的 “高级设置” 部分中,单击 P高级应用程序

    本地化后的图片

  53. 在左侧的 “ 已发布的应用程序 ” 部分,单击 No Url

    本地化后的图片

  54. 绑定您的书签。

    本地化后的图片

  55. 由于未为此 Citrix 网关虚拟服务器指定 “仅 ICA”,因此请确保正确配置了 Citrix 网关通用许可证。在左侧,展开 Citrix 网关 ,然后单击 全局设置

    本地化后的图片

  56. 单击右侧的 更改身份验证 AAA 设置

    本地化后的图片

  57. 最大用户数 更改为您的许可限制。

    本地化后的图片

  58. 如果要使用 DNS 连接到 RDP 服务器,请确保在设备上配置了 DNS 服务器(流量管理 > DNS > 名称服务器)。

    本地化后的图片

  59. 如果要使用短名称而不是 FQDN,请添加 DNS 后缀(流量管理 > DNS > DNS 后缀)

    本地化后的图片

  60. 连接到您的网关并登录。

    本地化后的图片

  61. 如果配置了 书签,请单击书

    本地化后的图片

  62. 您可以将地址栏更改为 /RDPProxy/MyRDP服务器。您可以输入一个 IP 地址(例如:一个 IP 地址 /192.168.1.50)或 DNS 名称(/rdpprox/ 我的服务器)。

    本地化后的图片

  63. 打开下载的 .rdp 文件。

    本地化后的图片

  64. 您可以转到 Citrix 网关策略 > RDP 查看当前已连接的用户。 **右侧是 “ **连接 ” 选项卡。

    本地化后的图片