Citrix Gateway.

RDP代理

RDP代理功能是作为Citrix网关的一部分提供的。在典型的部署中,RDP客户机运行在远程用户的机器上。Citrix Gateway设备部署在DMZ内,RDP服务器场位于公司内部网络中。

远程用户;

  1. 连接到Citrix网关公共IP地址
  2. 建立SSL VPN连接
  3. 进行身份验证
  4. 通过Citrix Gateway设备访问远程桌面

在无客户端VPN和ICA代理模式下支持RDP-proxy特性。

笔记:

Citrix网关不支持RDSH (Remote Desktop Session Host)、Remote App、RDS multiuser、RDP会话。

以下RDP Proxy特性提供了通过Citrix Gateway访问远程桌面群的功能。

  • 通过无客户端VPN或ICA代理(无全隧道)方式安全的RDP流量。

  • 通过Citrix Gateway单点登录RDP服务器。如果需要,还提供了禁用SSO的选项。

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

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

  • 兼容本地Windows MSTSC客户端RDP不需要任何自定义客户端。

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

下图描述了部署的概述:

RDP代理概述

通过无客户端VPN部署

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

通过ICA代理部署

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

在任一模式中,用户单击提供的RDP链路或图标后,对应资源的HTTPS请求到达Citrix网关。网关为所请求的连接生成RDP文件内容,并将其推向客户端。调用本机RDP客户端,它连接到网关上的RDP侦听器。网关通过支持强制执行(SmartAccess)来对RDP服务器进行SSO。网关基于Citrix ADC配置阻止客户端访问某些RDP功能,然后它代理RDP客户端和服务器之间的RDP流量。

执行细节

Citrix ADC管理员可以通过Citrix Gateway配置某些RDP能力。Citrix Gateway为重要的RDP参数提供了“RDP强制”特性。Citrix ADC确保客户端不能启用阻塞参数。如果启用了阻塞参数,RDP强制特性将取代启用客户端的参数,它们将不被接受。

重要的:只有启用了SSO,强制特性才会生效。

支持用于强制执行的RDP参数

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

  • 重定向的剪贴板

  • 打印机重定向

  • 磁盘驱动器重定向

  • COM端口重定向

  • 重定向PNP设备

连接流

连接流程可分为两步:

  • RDP资源枚举和RDP文件下载。
  • RDP连接启动。

根据上述连接流程,有两种部署方案:

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

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

无状态(双)网关兼容性

下图描述了部署:

双网关兼容性

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

  • 成功登录网关后,用户会被重定向到首页或外部门户,其中列出了用户可以访问的远程桌面资源。

  • 一旦用户选择了RDP资源,Authenticator Gateway VIP就会接收这种格式的请求https://vserver-vip/rdpproxy/rdptarget/listener指示用户单击的已发布资源。该请求包含用户选择的RDP服务器的IP地址和端口信息。

  • Authenticator Gateway处理/rdpproxy/请求。因为用户已经通过了身份验证,所以该请求附带一个有效的Gateway cookie。

  • RDPTargetRDPUser信息存储在STA服务器上,并生成STA Ticket。存储在STA服务器上的信息使用配置的预共享密钥进行加密。Authenticator Gateway使用网关虚拟服务器上配置的STA服务器之一。

  • 在/rdpproxy/请求中获得的“侦听器”信息被放入.rdp文件为“fulladdress“和STA票(用STA authid)放入.rdp文件为“loadbalanceinfo..”

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

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

    RDPListener网关验证STA票据并获取RDPTargetRDPUser信息要使用的STA服务器是通过使用loadbalanceinfo.

  • 创建网关会话用于存储授权/审计策略。如果用户的会话存在,那么它将被重用。

  • RDPListener网关连接到RDPTarget使用CREDSSP进行单签。

重要的:

  • 对于无状态RDP代理,STA服务器对RDP客户端发送的STA票据进行验证,以获得RDP代理RDPTarget / RDPUser信息。需要在绑定VPN虚拟服务器的同时绑定STA服务器。

单一网关兼容性

下图描述了部署:

单一网关兼容性

重要的:

单网关部署时,不需要配置STA服务器。验证器网关对RDPTarget和Citrix认证、授权和审计会话cookie安全发送loadbalanceinfo..rdp文件.当RDP客户端在初始包中发送这个令牌时,验证方网关对其进行解码RDPTarget信息,查找会话,并连接到RDPTarget

支持单个侦听器

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

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

RDP代理的许可证要求

高级版,高级版

笔记:

只有网关平台license和标准版license的客户不能使用RDP Proxy功能。

您可以使用以下命令启用RDP代理。

启用功能rdpProxy<--需要复制-->

书签

通过Portal生成RDP链路。不需要为用户配置RDP链接或通过外部门户发布RDP链接,您可以通过提供选项来生成用户自己的urltargerIP:端口.对于无状态RDP-proxy部署,管理员可以在RDP客户端配置文件中包含FQDN: Port格式的RDP侦听器信息。这是在rdpListener选择。该配置用于双网关模式下通过portal生成RDP链路。

书签

创建书签

  1. 在Portal页面上创建书签以访问RDP资源:( Actemurl始于rdp: / /)。

  2. 添加VPN url

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

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

RDP代理要启用的功能和模式

- enable ns feature SSL - enable ns feature SSLVPN - enable ns feature rdpproxy - enable mode usnip 

RDP代理高级配置步骤

以下是无状态RDP代理配置的高级步骤。

  • 创建RDP服务器配置文件
  • 创建RDP客户端配置文件
  • 创建并绑定虚拟服务器
  • 创建书签
  • 创建或编辑会话配置文件或策略
  • 绑定一个书签

配置客户端概要文件

在验证方网关上配置客户端配置文件。下面是一个配置示例:

添加rdpClient概要文件<名称> [-addUserNameInRdpFile(是的|不)][-audioCaptureMode(启用|禁用)][-keyboardHook < keyboardHook >] [-multiMonitorSupport(启用|禁用)][相移键控<字符串>][-rdpCookieValidity < positive_integer >] [-rdpCustomParams <字符串>][-rdpFileName <字符串>][-rdpHost <可选的FQDN将RDP文件‘fulladdress>] [-rdpUrlOverride ( ENABLE | DISABLE )] [-redirectClipboard ( ENABLE | DISABLE )] [-redirectComPorts ( ENABLE | DISABLE )] [-redirectDrives ( ENABLE | DISABLE )] [-redirectPnpDevices ( ENABLE | DISABLE )] [-redirectPrinters ( ENABLE | DISABLE )] [-videoPlaybackMode ( ENABLE | DISABLE )] 

关联RDP客户端配置文件和VPN虚拟服务器。

这可以通过配置sessionAction+sessionPolicy或设置全局VPN参数来实现。

例子:

add vpn sessionaction  -rdpClientprofile  add vpn sessionpolicy  NS_TRUE  bind vpn vserver < vserverame > -policy  -priority  

或者

设置vpn参数-rdpClientprofile  

配置服务器配置文件

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

add rdpServer Profile  -rdpIP < RDP listener的IPV4地址> -rdpPort <终止RDP客户端连接的端口> -psk  ' 

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

add vpn vserver v1 SSL   -rdpServerProfile  ' 

示例配置

通过CLI配置RDP Proxy

下面是通过CLI配置RDP Proxy的示例。

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

    添加aaa用户管理员–免密码BSD123$%^添加vpn url rdp RdpLinkrdp://rdpserverinfo 添加dns addrec rdpserverinfo 10.102.147.132绑定aaa用户管理员–urlName rdp<--需要复制-->
  • 配置VPN连接的RDP客户端和服务器配置文件。

    添加rdp clientprofile p1相移键控citrix -redirectClipboard启用添加rdp serverprofile p1 -rdpIP 10.102.147.134相移键控citrix添加vpn vserver mygateway SSL 10.102.147.134 443 -rdpserverprofile p1 vpn参数设置-clientlessVpnMode -defaultAuthorizationAction允许-rdpClientProfileName p1添加SSL certKey gatewaykey cert rdp_rootcert。openssl . pem -key rdp_rootkey bind ssl vserver mygateway -certkeyName gatewaykey 
  • ADD SNIP连接从Citrix ADC到目标。

    add ns ip 10.102.147.135 255.255.255.0 -type SNIP 

通过GUI配置RDP代理

  1. 导航到Citrix网关>策略,右键单击RDP,然后单击使功能

  2. 单击导航窗格上的RDP。在右侧,选择客户端配置文件选项卡并单击添加

  3. 为客户端概要文件输入名称并配置它。

    为配置文件添加名称

  4. 在RDP Host字段中,输入解析到RDP代理侦听器的FQDN,该FQDN通常与Citrix Gateway设备的FDQN相同。

  5. 预共享密钥,输入密码,单击好的

    预共享密钥口令

  6. 输入服务器配置文件的名称。

  7. 输入要绑定此配置文件的网关虚拟服务器的IP地址。

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

    重新输入预共享密钥密码

  9. 如果您想在“无客户端访问”界面中添加RDP书签,请在左侧展开Citrix Gateway.,扩大资源,然后单击书签

  10. 在右侧单击添加

  11. 给书签起个名字。

  12. 对于URL,输入rdp://MyRDPServer 使用IP或DNS

  13. 选择使用Citrix Gateway作为反向代理点击创建

  14. 根据您的要求创建书签。

    添加多个书签

  15. 创建或编辑会话配置文件。导航到Citrix Gateway > Policies > Session

  16. 在Security选项卡上设置默认授权行动允许. 或者,您可以使用授权策略来控制访问。

    设置默认身份验证操作

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

    选择RDP客户端配置文件

  18. 如果要使用书签,请在客户体验选项卡,设置Clientless访问

    设置无客户端访问为On

  19. 发布应用程序选项卡,确保“ICA代理”为

    “ICA Proxy”设置为“OFF”

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

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

    设置基本设置

  22. 使用RDP服务器配置文件列表选择先前创建的RDP服务器配置文件。

    使用RDP服务器配置文件

  23. 向下滚动。确保ICA只不是检查。

    只设置ICA

  24. 绑定一个证书。

  25. 绑定身份验证策略。

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

    绑定会话策略

  27. 可以将书签绑定到Citrix Gateway虚拟服务器上,也可以绑定到认证、授权和审计组上。如果需要绑定Citrix Gateway虚拟服务器,请在右侧的“高级设置”区域单击发布应用程序

    点击发布应用程序

  28. 在左边,在发布应用程序部分,点击没有网址

    设置没有网址

  29. 绑定你的书签。

    绑定的书签

  30. 由于未为此Citrix网关虚拟服务器指定ICA Only,请确保正确配置了Citrix网关通用许可证。在左侧,展开Citrix Gateway.点击全局设置

    设置全局设置

  31. 在右侧单击更改身份验证AAA设置

    更改身份验证设置

  32. 改变最大用户数达到您的许可限制。

    设置最大用户数

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

    配置DNS服务器

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

    使用的fqdn

  35. 连接到你的网关并登录。

    连接到网关

  36. 如果你配置书签,单击书签

    单击书签

  37. 您可以将地址栏更改为/ rdpproxy MyRDPServer.可以输入IP地址(例如:rdpproxy/192.168.1.50)或DNS名称(例如:/rdpproxy/myserver)。

    改变地址栏

  38. 打开下载.rdp文件

    下载RDP文件

  39. 可以通过“”查看当前连接的用户Citrix Gateway Policies > RDP。在右边是连接标签。

    单击“连接”选项卡

禁用SSO选项

通过配置Citrix ADC流量策略,可以禁用带RDP代理的单点登录功能,因此总是提示用户提交凭据。禁用单点登录时,RDP强制(SmartAccess)功能将失效。

例子:

添加vpn流量动作<流量动作名称>HTTP-SSO关闭<--需要复制-->

可根据需要配置流量策略,以下为两个示例:

  • 关闭对所有流量的单点登录。

    add vpn trafficpolicy  "url contains rdpproxy"  
  • 取消基于源/目的IP/FQDN的单点登录

    add vpn trafficPolicy  "HTTP.REQ.URL.CONTAINS(\"rdpproxy\") && CLIENT.IP.SRC.EQ()" bind vpnvserver rdp -policy  -priority 10