安全性建议
Session Recording 部署在一个安全网络中,并由管理员进行访问,因此,Session Recording 非常安全。即开即用部署简单易用,且具有可选择性配置的数字签名和加密等安全功能。
Session Recording 组件之间的通信通过 Internet Information Services (IIS) 以及 Microsoft 消息队列 (MSMQ) 实现。IIS 在 Session Recording 组件之间提供 Web 服务通信链接。MSMQ 提供了可靠的数据传输机制,以将录制的会话数据从 Session Recording Agent 发送到 Session Recording Server 。
警告:
注册表编辑不当会导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因注册表编辑器使用不当导致出现的问题能够得以解决。使用注册表编辑器需自担风险。在编辑注册表之前,请务必进行备份。
规划部署时,请考虑如下安全性建议:
-
配置 Microsoft Internet Information Services (IIS)。
可以配置具有受限 IIS 配置的 Session Recording。在每个 Session Recording Server 上,打开 IIS 管理器并为每个 IIS 应用程序池设置以下回收限制:
- Virtual Memory Limit(虚拟内存限制):请将此值设置为 4294967295。
- Private Memory Limit(专用内存限制):请将此值设置为 Session Recording Server 的物理内存。例如,如果物理内存为 4 GB,请将此值设置为 4194304。
- Request Limit(请求限制):我们建议您不指定此设置。或者您可以将此值设置为 4000000000。
提示:
要访问上述设置,请突出显示每个应用程序池,在 Actions(操作)窗格中选择 Advanced Settings(高级设置),然后向下滚动到 Advanced Settings(高级设置)对话框中的 Recycling(回收)部分。
- 确保正确隔离企业网络、Session Recording 系统和单台计算机上的不同管理员角色。否则,可能会引发安全威胁,进而可能影响系统功能或导致滥用系统。我们建议您将不同的管理员角色分配给不同的人员或帐户。不允许一般会话用户拥有 VDA 系统的管理员权限。
- 请勿为已发布的应用程序或桌面的任何用户授予 VDA 本地管理员角色。如果必须授予本地管理员角色,请使用 Windows 机制或第三方解决方案保护 Session Recording Agent 组件。
- 单独分配 Session Recording 数据库管理员和 Session Recording 策略管理员。
- 请勿将 VDA 管理员权限分配给一般会话用户,特别是使用 Remote PC Access 时。
- 必须严格保护 Session Recording Server 本地管理帐户的安全。
- 控制对安装了 Session Recording Player 的计算机的访问权限。如果未向某个用户授予播放者角色,请勿向该用户授予任何播放器计算机的本地管理员角色。禁用匿名访问。
- 我们建议使用物理计算机作为 Session Recording 的存储服务器。
- 无论数据敏感性如何,Session Recording 均会录制会话图形活动。在某些情形下,可能会不小心录制了敏感数据(包括但不限于用户凭据、隐私信息和第三方屏幕)。请采取以下措施以避免风险:
- 除非出于特定故障排除目的,否则请禁用 VDA 的核心内存转储功能。
要禁用核心内存转储,请执行以下操作:
- 右键单击我的电脑,然后单击属性。
- 单击高级选项卡,然后单击启动和恢复下的设置。
- 在写入调试信息下选择 (无)。
请参阅 Microsoft 文章,网址为 https://support.microsoft.com/en-us/kb/307973。
- 会话所有者向与会者通知在录制桌面会话时可能会录制在线会议和远程协助软件。
- 确保登录凭据或安全信息不会出现企业内部发布或使用的所有本地和 Web 应用程序中。否则,Session Recording 会录制它们。
- 在切换到远程 ICA 会话之前,关闭所有可能暴露敏感信息的应用程序。
- 我们建议仅允许使用自动身份验证方法(例如单点登录、智能卡)访问已发布的桌面或软件即服务 (SaaS) 应用程序。
- 除非出于特定故障排除目的,否则请禁用 VDA 的核心内存转储功能。
要禁用核心内存转储,请执行以下操作:
- Session Recording 需要某些硬件和硬件基础结构(例如企业网络设备、操作系统)才能正常运行并满足安全要求。在基础结构级别采取措施防止基础结构遭到损害或滥用,并保证 Session Recording 功能安全、可靠。
- 正确保护支持 Session Recording 的网络基础结构并保证该基础结构始终可用。
- 我们建议使用第三方安全解决方案或 Windows 机制来保护 Session Recording 组件。Session Recording 组件包括:
- 在 Session Recording Server 上
- 进程:SsRecStoragemanager.exe 和 SsRecAnalyticsService.exe
- 服务:CitrixSsRecStorageManager 和 CitrixSsRecAnalyticsService
- 所有文件均位于 Session Recording Server 安装文件夹中
- HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server 中的注册表值
- 在 Session Recording Agent 上
- 进程:SsRecAgent.exe
- 服务:CitrixSmAudAgent
- 所有文件均位于 Session Recording Agent 安装文件夹中
-
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Agent
下的注册表值
- 在 Session Recording Server 上
-
在 Session Recording Server 上为消息队列 (MSMQ) 设置访问控制列表 (ACL) 以限制可向 Session Recording Server 发送 MSMQ 数据的 VDA 或 VDI 计算机,并防止未授权的计算机向 Session Recording Server 发送数据。
- 在启用了 Session Recording 的每个 Session Recording Server 以及 VDA 或 VDI 计算机上安装服务器功能目录服务集成。然后重新启动消息队列服务。
- 从每个 Session Recording Server 上的 Windows 开始菜单打开管理工具 > 计算机管理。
- 打开服务和应用程序 > 消息队列 > 专用队列。
-
单击专用队列 citrixsmauddata 以打开属性页面,然后选择安全性选项卡。
-
添加向此服务器发送 MSMQ 数据的计算机或 VDA 安全组,并向其授予发送消息权限。
- 正确保护 Session Record Server 和 Session Recording Agent 的事件日志。建议使用 Windows 或第三方远程日志记录解决方案来保护事件日志,或者将事件日志重定向到远程服务器。
- 确保运行 Session Recording 组件的服务器在物理上是安全的。如有可能,请将这些计算机锁在一个安全的房间内,只有授权人员能够直接取用。
- 隔离在单独子网或域上运行 Session Recording 组件的服务器。
- 在 Session Recording Server 与其他服务器之间安装防火墙,防止访问其他服务器的用户访问录制的会话数据。
- 安装 Microsoft 提供的最新安全更新,保持 Session Recording Administration 服务器和 SQL 数据库为最新版本。
- 限制非管理员登录到管理计算机。
- 严格限制授权人员更改录制策略及查看录制的会话。
- 安装数字证书,使用 Session Recording 文件签名功能,并在 IIS 中设置 TLS 通信。
- 将 MSMQ 设置为使用 HTTPS 传输协议。方法是将 Session Recording Agent 属性中列出的 MSMQ 协议设置为 HTTPS。有关详细信息,请参阅 MSMQ 故障排除。
-
在 Session Recording Server 和 Session Recording 数据库上使用 TLS 1.1 或 TLS 1.2(推荐)并禁用 SSLv2、SSLv3、TLS 1.0。
-
在 Session Recording Server 和 Session Recording 数据库上禁用 TLS 的 RC4 密码套件:
- 使用 Microsoft 组策略编辑器,导航到计算机配置 > 管理模板 > 网络 > SSL 配置设置。
- 将 SSL 密码套件顺序策略设置为已启用。默认情况下,此策略设置为未配置。
- 删除任何 RC4 密码套件。
- 使用播放保护功能。播放保护是一项 Session Recording 功能,在文件下载到 Session Recording Player 前对文件进行加密。默认情况下,此选项处于启用状态,且位于 Session Recording Server 属性中。
- 按照加密密钥长度和加密算法的 NSIT 指导进行操作。
-
为 Session Recording 配置 TLS 1.2 支持。
我们建议使用 TLS 1.2 作为通信协议,以确保 Session Recording 组件的端到端安全性。
要配置 Session Recording 的 TLS 1.2 支持,请执行以下操作:
- 登录到托管 Session Recording Server 的计算机。安装合适的 SQL Server 客户端组件和驱动程序,并为
.NET Framework
(版本 4 或更高版本)设置强加密。- 为 SQL Server 安装 Microsoft ODBC 驱动程序 11(或更高版本)。
- 应用
.NET Framework
的最新修补程序汇总。 - 根据您的 .NET Framework 版本安装
ADO.NET - SqlClient
。有关详细信息,请参阅 https://support.microsoft.com/en-us/kb/3135244。 - 将 DWORD 值 SchUseStrongCrypto = 1 添加到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NetFramework\v4.0.30319 和 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319 下方。
- 请重新启动计算机。
- 登录到托管 Session Recording 策略控制台的计算机。应用 .NET Framework 的最新修补程序汇总,并为 .NET Framework(版本 4 或更高版本)设置强加密。用于设置强加密的方法与子步骤 1–4 和 1–5 相同。如果您选择在与 Session Recording Server 相同的计算机上安装 Session Recording 策略控制台,则可以忽略这些步骤。
- 登录到托管 Session Recording Server 的计算机。安装合适的 SQL Server 客户端组件和驱动程序,并为
要为 SQL Server 2016 之前的版本配置 TLS 1.2 支持,请参阅 https://support.microsoft.com/en-us/kb/3135244。要使用 TLS 1.2,请将 HTTPS 配置为 Session Recording 组件的通信协议。