Linux虚拟交付代理

影子会议

通过会话隐藏特性,域管理员可以查看内网用户的ICA会话。该特性使用noVNC连接ICA会话,仅RHEL 7支持。Ubuntu 16.04。

注意:

要使用会话阴影功能,Citrix Director的版本必须为7.16或更高版本。

安装和配置

依赖关系

两个新的依赖关系,python-websockifyx11vnc,是会话跟踪所必需的。的python-websockifyx11vnc在Ubuntu 16.04上安装Linux VDA时,会自动安装依赖项。在RHEL 7.x上,必须安装python-websockifyx11vnc安装Linux VDA后,请手动安装VDA。

在RHEL 7上执行如下命令。x安装python-websockifyx11vncx11vnc版本0.9.13或更高版本)。

sudo yum安装-y python websocify x11vnc<--需要复制-->

来解决python-websockifyx11vnc,在RHEL 7.x上启用以下存储库:

  • 企业Linux(EPEL)的额外软件包

    两者都需要EPEL存储库python-websockifyx11vnc. 运行以下命令以启用EPEL存储库:

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E '%{rhel}').noarch。rpm < !——NeedCopy >
  • 可选RPM

    运行以下任一命令以启用可选的RPMs存储库,以便安装的某些依赖项包x11vnc

    工作站:

    订阅管理器repos——enable=rhel-7-workstation-optional-rpm 

    对于服务器:

    订阅管理器repos——enable=rhel-7-server-optional-rpm 

港口

会话阴影功能自动从6001-6099中选择可用端口,以建立从Linux VDA到Citrix控制器的连接。因此,您可以同时对ICA会话进行阴影处理的数量限制为99。确保有足够的端口可满足您的要求,特别是对于多会话跟踪。

登记处

下表列出了相关的注册表:

登记处 描述 默认值
启用会话阴影 启用或禁用会话隐藏特性 1(已启用)
阴影 确定是否加密Linux VDA和Citrix控制器之间的连接 0(已禁用)

运行ctxreg命令修改注册表值。例如,要禁用会话隐藏功能,运行命令如下:

/opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent" -v " enablesessionshadowwing " -d 0x00000000

SSL

Linux VDA和Citrix控制器之间的noVNC连接使用WebSocket协议。对于会话阴影,是否ws://wss://是否选择由前面提到的“ShadowingUseSSL”注册表决定。默认情况下,ws://是选择。但是,出于安全原因,我们建议您使用wss://并在每个Citrix Director客户端和每个Linux VDA服务器上安装证书。Citrix不承担使用ws://

获取服务器和根SSL证书

证书必须由受信任的证书颁发机构(CA)签名。

要在其上配置SSL的每个Linux VDA服务器都需要单独的服务器证书(包括密钥)。服务器证书标识特定计算机,因此您必须知道每个服务器的完全限定域名(FQDN)。为了方便起见,您可以对整个域使用通配符证书。在这种情况下,您必须至少知道域名。

除了在每台服务器上安装服务器证书外,还必须在与Linux VDA服务器通信的每个Citrix Director客户端上安装来自同一CA的根证书。根证书可从颁发服务器证书的同一CA获得。您可以从与您的操作系统捆绑的CA、企业CA(您的组织允许您访问的CA)或未与您的操作系统捆绑的CA安装服务器和客户端证书。请咨询您组织的安全团队,以了解他们获取证书所需的方法。

重要的

  • 服务器证书的通用名称必须是Linux VDA服务器的确切FQDN,或者至少是正确的通配符加域字符。例如,vda1.basedomain.com或*.basedomain.com。
  • 散列算法(包括SHA1和MD5)对于某些浏览器无法支持的数字证书中的签名来说太弱。因此,SHA-256被指定为最低标准。

在每个Citrix Director客户端上安装根证书

会话隐藏使用与IIS相同的基于注册表的证书存储,因此您可以使用IIS或Microsoft管理控制台(MMC)证书管理单元安装根证书。从CA收到证书后,可以在IIS中重新启动Web服务器证书向导,该向导将安装证书。或者,您可以使用MMC在计算机上查看和导入证书,并将证书作为独立管理单元添加。默认情况下,Internet Explorer和Google Chrome将导入安装在操作系统上的证书。对于Mozilla Firefox,必须在上导入根SSL证书当局“证书管理器”选项卡。

在每个Linux VDA服务器上安装服务器证书及其密钥

将服务器证书命名为“shadowingcert”。* "和密钥文件" shadowingkey。*” (* can indicate the format, for example, shadowingcert.csr and shadowingkey.key). Put server certificates and key files under the path/etc/xdl/shadowingssl并使用受限权限对其进行适当保护。不正确的名称或路径使Linux VDA无法找到特定的证书或密钥文件,从而导致与Citrix Director的连接失败。

用法

从Citrix Director中,找到目标会话并单击阴影会议详情查看以向Linux VDA发送跟踪请求。

会话详细信息视图中阴影选项卡的图像

在连接初始化之后,ICA会话客户端(不是Citrix Director客户端)上将出现一个确认,请求用户允许影子会话。

是否允许管理员shadow此会话的映像

如果用户点击,Citrix控制器端会出现一个窗口,指示ICA会话正在被隐藏。

有关用法的更多信息,请参阅Citrix控制器文档

局限性

  • 会话隐藏仅在内部网中使用。它不能用于外部网络,即使通过Citrix网关连接。Citrix对外部网络中的Linux VDA会话不承担任何责任。
  • 启用会话跟踪后,域管理员只能查看ICA会话,但无权写入或控制会话。
  • 管理员单击后阴影从Citrix Director,会出现一个确认,请求用户允许影子会话。只有当会话用户具有此权限时,会话才能被隐藏。
  • 前面提到的确认有一个超时限制,即20s。当时间耗尽时,隐藏请求失败。
  • 在一个Citrix Director窗口中,一个ICA会话只能由一名管理员进行跟踪。如果ICA会话已被管理员A屏蔽,同时管理员B发送屏蔽请求,则获取用户权限的确认将在用户设备上重新出现。如果用户同意,管理员A的隐藏连接将停止,并为管理员B建立新的隐藏连接。如果同一管理员发送了同一ICA会话的另一个隐藏请求,则情况相同。
  • 要使用会话隐藏,请安装Citrix Director 7.16或更高版本。
  • Citrix Director客户端使用FQDN而不是IP地址连接到目标Linux VDA服务器。因此,Citrix Director客户端必须能够解析Linux VDA服务器的FQDN。

故障排除

如果会话隐藏失败,请同时在Citrix Director客户端和Linux VDA上进行调试。

关于Citrix Director客户端

通过浏览器的开发人员工具,检查浏览器上的输出日志安慰选项卡。或者,检查ShadowLinuxSession API在网络标签。如果出现获取用户权限的确认,但无法建立连接,请手动ping Linux VDA的FQDN,以验证Citrix Director是否可以解析FQDN。如果设备存在问题wss://连接,检查您的证书。

关于Linux-VDA

验证获取用户权限的确认是否出现在对隐藏请求的响应中。如果没有,检查vda.log和hdx.log文件寻找线索。vda.log文件的获取方法如下:

  1. 查找/etc/xdl/ctx-vda.conf文件。取消注释以下行以启用vda.log配置:

    Log4jConfig = " / etc / xdl / log4j.xml”

  2. 打开/etc/xdl/log4j.xml,找到com.citrix.dmc部件,并将“info”更改为“trace”,如下所示:

    --需要复制-->
  3. 运行服务ctxvda重新启动命令以重新启动ctxvda服务。

如果在建立连接过程中出现错误:

  1. 检查是否存在阻止会话阴影打开端口的防火墙限制。
  2. 如果是SSL方案,请验证证书和密钥文件是否正确命名并置于正确路径下。
  3. 验证6001-6099之间是否有足够的端口用于新的阴影请求。
影子会议