RDP代理
RDP代理功能作为Citrix Gateway的一部分提供。在典型的部署中,RDP客户端运行在远程用户的机器上。Citrix Gateway设备部署在DMZ中,RDP服务器场部署在企业内部网络中。
远程用户;
- 连接到Citrix Gateway的公网IP地址
- 建立SSL VPN连接
- 进行身份验证
- 通过Citrix Gateway设备访问远程桌面
RDP-proxy特性支持无客户端VPN和ICA Proxy两种方式。
注意:
Citrix Gateway不支持RDSH (Remote Desktop Session Host)、Remote App、RDS多用户或RDP会话。
以下RDP代理特性提供了通过Citrix Gateway访问远程桌面场的功能。
通过无客户端VPN或ICA代理模式(没有Full Tunnel)确保RDP流量安全。
通过Citrix Gateway到RDP服务器的SSO(单点登录)。如果需要,还提供了禁用SSO的选项。
强制(SmartAccess)特性,Citrix ADC管理员可以通过Citrix Gateway配置禁用某些RDP功能。
满足所有需求的单/无状态(双)网关解决方案(VPN/ICA/RDP/Citrix端点管理)。
兼容本地Windows MSTSC客户端用于RDP,无需任何自定义客户端。
MACOSX、iOS和Android上使用微软提供的现有RDP客户端。
部署概述如下图所示:
通过无客户端VPN部署
在此模式中,RDP链接作为书签通过添加VPN url
配置或通过外部门户。用户可以单击这些链接来访问远程桌面。
ICA代理部署
在这种模式下,在网关VIP上使用wihome
参数。可以使用允许用户访问的远程桌面资源列表定制此主页。该自定义页面可以托管在Citrix ADC上,如果是外部的,则可以是现有Gateway门户页面中的iFrame。
在任何一种模式下,在用户单击提供的RDP链接或图标之后,针对相应资源的HTTPS请求都会到达Citrix Gateway。网关为请求的连接生成RDP文件内容,并将其推送到客户端。本机RDP客户端被调用,它连接到网关上的RDP侦听器。网关通过支持强制(SmartAccess)实现对RDP服务器的单点登录。网关根据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文件下载通过验证器网关进行,但RDP连接启动通过RDP侦听器网关进行。
单网关解决方案——RDP资源枚举、RDP文件下载和RDP连接启动都通过同一个网关进行。
无状态(双)网关兼容性
部署场景如下图所示:
用户连接到Authenticator Gateway VIP并提供凭据。
用户成功登录网关后,会被重定向到首页或外部门户,其中列举了用户可以访问的远程桌面资源。
一旦用户选择了RDP资源,Authenticator Gateway VIP就会以该格式接收请求
https://vserver-vip/rdpproxy/rdptarget/listener
指示用户单击的已发布资源。该请求包含用户所选择的RDP服务器的IP地址和端口信息。验证方网关处理/rdpproxy/请求。因为用户已经通过了身份验证,所以这个请求带有一个有效的Gateway cookie。
的
RDPTarget
而且RDPUser
信息存储在STA服务器上,并生成STA Ticket。存储在STA服务器上的信息使用配置好的预共享密钥进行加密。验证方网关使用在网关虚拟服务器上配置的一个STA服务器。在/rdpproxy/ request中获得的' Listener '信息被放入
.rdp文件
作为“fulladdress
,并将STA票证(预先挂载STA AuthID)放入.rdp文件
作为“loadbalanceinfo
.”的
.rdp文件
发送回客户端端点。本机RDP客户端启动并连接到
RDPListener网关
.它在初始报文中发送STA票证。的
RDPListener
网关验证STA票证并获取RDPTarget
而且RDPUser
信息。中的“AuthID”检索要使用的STA服务器loadbalanceinfo
.创建网关会话用于存储授权/审计策略。如果用户存在会话,则重用该会话。
的
RDPListener
网关连接到RDPTarget
使用CREDSSP进行单点登录。
重要的是:
- 对于无状态RDP代理,STA Server通过验证RDP客户端发送的STA票证来获取
RDPTarget / RDPUser
信息。在绑定VPN虚拟服务器的同时,还需要绑定STA服务器。
单网关兼容性
部署场景如下图所示:
重要的是:
单网关部署场景下,不需要STA服务器。验证方网关对
RDPTarget
和Citrix身份验证、授权和审计会话cookie,并将它们作为loadbalanceinfo
在.rdp文件
.当RDP客户端在初始数据包中发送该令牌时,验证方网关将对该令牌进行解码RDPTarget
信息,查找会话并连接到RDPTarget
.
支持单个监听器
RDP和SSL流量的单一监听器。
可以通过Citrix ADC设备上相同的2元组(即IP和Port)处理RDP文件下载和RDP流量。
RDP Proxy的License要求
高级版,高级版
注意:
只有网关平台许可证或标准版的客户不能使用RDP代理功能。
可以使用以下命令启用RDP代理功能。
启用rdpProxy
书签
通过Portal生成RDP链路。无需为用户配置RDP链接或通过外部门户发布RDP链接,您可以为用户提供一个选项来生成他们自己的urltargerIP:端口
.对于无状态RDP-proxy部署,管理员可以将FQDN: Port格式的RDP监听器信息作为RDP客户端配置文件的一部分。这是在rdpListener
选择。此配置用于“双网关”模式下通过portal生成RDP链路。
创建书签
在门户页面上创建书签以访问RDP资源:(actualURL以
rdp
: / /)。添加VPN url
- URL必须是如下格式:
rdp: / / < TargetIP:端口>
. 对于无状态RDP代理模式,URL格式如下:
rdp: / / < TargetIP: Port > / < ListenerIP:端口>
- URL以以下格式发布在门户上:
https:// < VPN-VIP > / rdpproxy / < TargetIP:端口>
https:// < VPN-VIP > / rdpproxy / < TargetIP: Port > / < ListenerIP:端口>
- URL必须是如下格式:
将书签绑定到用户、组、VPN虚拟服务器或VPN全局。
RDP Proxy需要启用的特性和模式
- enable ns feature SSL - enable ns feature SSLVPN - enable ns feature rdpproxy - enable mode usnip
RDP Proxy高级配置步骤
无状态RDP代理配置涉及以下高级步骤。
- 创建RDP服务器配置文件
- 创建RDP客户端配置文件
- 创建并绑定虚拟服务器
- 创建书签
- 创建或编辑会话概要文件或策略
- 绑定书签
配置客户端概要文件
在验证方网关上配置客户端配置文件。下面是一个配置示例:
添加rdpClient概要文件<名称> [-addUserNameInRdpFile(是的|不)][-audioCaptureMode(启用|禁用)][-keyboardHook < keyboardHook >] [-multiMonitorSupport(启用|禁用)][相移键控<字符串>][-rdpCookieValidity < positive_integer >] [-rdpCustomParams <字符串>][-rdpFileName <字符串>][-rdpHost <可选的FQDN将RDP文件中的“fulladdress >] [-rdpUrlOverride(启用|禁用)][-redirectClipboard(启用|禁用)][-redirectComPorts(启用|禁用)[-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 -policy -priority < priitynumber >
或
设置vpn参数-rdpClientprofile
配置服务器概要文件
在监听网关上配置服务器配置文件。
add rdpServer Profile -rdpIP < RDP监听器的IPV4地址> -rdpPort <终止RDP客户端连接的端口> -psk '
rdpServer配置文件必须在VPN虚拟服务器上配置。
add vpn vserver v1 SSL -rdpServerProfile '
命令行方式配置RDP Proxy
下面以命令行方式配置RDP Proxy为例。
添加具有目标信息的用户的VPN URL。
add aaa user Administrator -password freebsd123$%^ add vpn url rdp RdpLink rdp://rdpserverinfo add dns addresc rdpserverinfo 10.102.147.132 bind aaa user Administrator -urlName rdp
配置VPN连接的RDP客户端和服务端配置文件。
add rdp clientprofile p1 -psk citrix -redirectClipboard ENABLE add rdpserverprofile 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。绑定ssl vserver mygateway——NeedCopy >
添加从Citrix ADC到目标的连接的SNIP。
add ns ip 10.102.147.135 255.255.255.0——NeedCopy >
界面方式配置RDP代理
导航到Citrix Gateway >策略,右键单击RDP,并单击使功能.
2 .在导航区单击“RDP”。在右侧,选择客户端配置文件选择并单击添加.
为客户端概要文件输入一个名称并配置它。
在RDP Host字段中,输入解析为RDP Proxy侦听器的FQDN,该FQDN通常与Citrix Gateway设备的FDQN相同。
在预共享密钥,输入密码,单击好吧.
输入服务器概要文件名称。
输入要绑定此配置文件的网关虚拟服务器的IP地址。
输入与RDP客户端配置文件相同的预共享密钥。点击创建.
如果要在无客户端访问门户页面上添加RDP书签,请在左侧展开Citrix网关,扩大资源,并单击书签.
在右侧,单击添加.
给书签起一个名字。
对于URL,输入rdp://MyRDPServer using IP or DNS.
选择使用Citrix网关作为反向代理并点击创建.
根据您的需求创建书签。
创建或编辑会话概要文件。导航到Citrix Gateway > Policies > Session.
在Security选项卡上,设置缺省授权动作来允许.或者您可以使用授权策略来控制访问。
在“远程桌面”选项卡上,选择前面创建的RDP客户端配置文件。
如果要使用书签,请在客户体验选项卡,设置Clientless访问来在.
在发布应用程序选项卡,确保ICA Proxy为从.
修改或创建网关虚拟服务器。
在基本设置部分中,点击更多的.
使用RDP服务器配置文件列表选择前面创建的RDP服务器配置文件。
向下滚动。确保ICA只未选中。
绑定证书。
绑定认证策略。
绑定配置了RDP客户端配置文件的会话策略/配置文件。
可以将书签绑定到Citrix Gateway虚拟服务器,也可以绑定到身份验证、授权和审核组。如果需要绑定Citrix Gateway虚拟服务器,请在右侧的“高级设置”区域单击发布应用程序.
在左边,在发布应用程序部分中,点击没有网址.
装订书签。
因为没有为这个Citrix Gateway虚拟服务器指定ICA Only,所以请确保正确配置了Citrix Gateway Universal许可证。在左侧,展开Citrix网关并点击全局设置.
在右侧,单击更改认证AAA设置.
改变最大用户数到你许可的限度。
如果要使用DNS连接到RDP服务器,请确保在设备上配置了DNS服务器(流量管理> DNS >名称服务器.
如果要使用短名称而不是fqdn,请添加DNS后缀(Traffic Management > DNS > DNS后缀).
连接到网关并登录。
如果你配置了书签,按书签.
您可以将地址栏更改为/ rdpproxy MyRDPServer.可输入IP地址(例如rdpproxy/192.168.1.50)或DNS名称(/rdpproxy/myserver)。
打开已下载的
.rdp文件
.您可以通过转查看当前已连接的用户Citrix Gateway Policies > RDP。右边是连接选项卡。
禁用SSO的选项
通过配置Citrix ADC流量策略,可以禁用带有RDP代理的SSO(单点登录)功能,以便始终提示用户提供凭据。当SSO被禁用时,RDP强制(SmartAccess)不起作用。
例子:
add vpn traffic HTTP -SSO OFF
流量策略可以根据需要进行配置,举例如下:
禁用所有流量的单点登录。
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