11.2. 加密和验证

11.2.1. 安全模式
11.2.2. 如何强制执行加密
11.2.3. 如何强制执行服务器验证
11.2.4. 如何禁用客户端验证
11.2.5. 如何强制从所有客户端进行客户端验证

默认情况下,Sun Ray 服务器与客户端之间的数据包以“明文形式”发送。该策略意味着外部人员可以轻易“窥探”通信并能够复原重要的私密用户信息,恶意用户可能会滥用这些信息。为了避免这种类型的攻击,Sun Ray Software 管理员可启用通过 ARCFOUR 加密算法进行的通信加密。

ARCFOUR 加密算法由于其较快的速度和相对较低的 CPU 系统开销而被选用,可支持 Sun Ray 服务和客户端之间的较高安全级别(128 位)。

但是,单靠加密并不能完全保证安全性。对 Sun Ray 服务器或 Sun Ray 客户端进行网络欺骗和/或仿冒虽不简单,但并非没有可能。下面是一些示例:

Sun Ray Software 提供的服务器和客户端验证能够解析这些类型的攻击。服务器验证使用 Sun Ray Software 和固件中预先配置的单个公钥/私钥对,客户端验证使用每个客户端中自动生成的公钥/私钥对。

Sun Ray Software 使用数字签名算法 (Digital Signature Algorithm, DSA) 来验证客户端是否在与有效的 Sun Ray 通信以及服务器是否在与合法的客户端通讯。该验证方案并非万无一失,但能够减少普通的中间人攻击,并使得攻击者更难对 Sun Ray 服务器或 Sun Ray 客户端进行网络欺骗。

启用加密和验证是可选的。系统或网络管理员可以根据站点要求对其进行配置。默认情况下,仅启用客户端验证。

11.2.1. 安全模式

配置加密和客户端验证时,必须确定其安全模式(硬安全模式或软安全模式)。可以根据客户端验证要求和包括服务器验证在内的加密要求分别配置安全模式。使用安全模式设置是为了实现与较旧版本固件兼容,因为较旧版本固件不支持相关安全功能。

  • 硬安全模式 - 硬安全模式可以确保每个会话都是安全的。若安全性要求无法满足,会话将被拒绝。

  • 软安全模式 - 软安全模式可以确保连接请求被准许,即使 Sun Ray Client 不支持已配置的安全要求。若安全性要求无法满足,仍然授予会话,但不安全。

默认情况下,加密和客户端验证的安全模式都设置为软安全模式,这会允许对运行较旧版本固件的 Sun Ray Client 进行未验证及未加密的访问。

注意

安全模式设置不适用于 Oracle Virtual Desktop Client。系统将始终按照采用加密或验证硬安全模式的标准对待 Oracle Virtual Desktop Client。

表 11.1 “安全模式”介绍了使用不同安全模式时的情况。

表 11.1. 安全模式

情况

硬安全模式

软安全模式

加密 - 使用旧版固件时,Sun Ray Client 不支持加密或服务器验证。

Sun Ray 服务器拒绝会话。

Sun Ray 服务器向客户端授予非安全会话。因此用户必须决定是否继续使用非安全会话。

客户端验证 - 使用旧版固件时,Sun Ray Client 不支持客户端验证。

Sun Ray 服务器拒绝会话。

Sun Ray 服务器向客户端授予非安全会话。

客户端验证 - 客户端支持验证,但验证失败。

Sun Ray 服务器拒绝会话。

Sun Ray 服务器拒绝会话。


11.2.2. 如何强制执行加密

默认情况下,禁用上游和下游加密。此过程提供强制执行上游和下游加密所需的步骤。

命令行步骤

  • 使用下面的命令强制执行上游和下游加密:

    # utcrypto -m enc_up_type=ARCFOUR enc_down_type=ARCFOUR mode=hard

管理 GUI 步骤

  1. 导航到 Advanced(高级)> Security(安全性)页面。

  2. 选择 "Upstream Encryption"(上游加密)和 "Downstream Encryption"(下游加密)选项并将 "Hard"(硬)选为 "Security Mode"(安全模式)。

  3. 单击 "Save"(保存)。

11.2.3. 如何强制执行服务器验证

默认情况下,服务器验证处于禁用状态。此过程提供针对所有客户端强制执行服务器验证所需的步骤。

命令行步骤

  • 使用以下命令来强制进行服务器验证。

    # utcrypto -m auth_down_type=simple mode=hard

管理 GUI 步骤

  1. 导航到 Advanced(高级)> Security(安全性)页面。

  2. 选择 "Server Authentication"(服务器验证)选项,然后选择 "Hard"(硬)作为 "Security Mode"(安全模式)。

  3. 单击 "Save"(保存)。

11.2.4. 如何禁用客户端验证

禁用客户端验证的原因包括:

  • 减少管理系统开销:禁用客户端验证可以节省管理服务器上客户端密钥所需的时间,但是会降低安全性。

  • 避免升级期间产生日志消息:如果使用较旧的服务器升级故障转移组中的 Sun Ray 服务器,升级的服务器会重复产生日志消息,这些消息表示其无法存储密钥数据,服务器会将所有密钥视为未确认。升级完整个组后,应该启用客户端验证。

注意

禁用客户端验证会导致安全性风险。请确保在禁用客户端验证之前已经了解可能造成的后果。

准备事项

  • 禁用客户端验证适用于所有后续连接,而无需重新启动 Sun Ray 服务器。

命令行步骤

  • 使用以下命令禁用客户端验证:

    # utcrypto -a auth_up_type=none

    如果非默认安全策略已存在,则请使用 -m 而非 -a

要启用客户端验证,请将 auth_up_type 值设置为 default

管理 GUI 步骤

Advanced(高级)> Security(安全性)页面中,取消选择 "Client Authentication"(客户端验证),然后单击 "Save"(保存)。

11.2.5. 如何强制从所有客户端进行客户端验证

如果您不需要允许对运行较旧版本固件的客户端的访问,则可要求从所有客户端进行验证,以提高安全性。

命令行步骤

  • 使用以下命令来强制客户端验证。

    # utcrypto -m auth_up_type=DSA auth_mode=hard

    如果非默认安全策略已存在,则请使用 -a 而非 -m

管理 GUI 步骤

  1. 导航到 Advanced(高级)> Security(安全性)页面。

  2. 选择 "Client Authentication"(客户端验证),然后选择 "Hard"(硬)作为 "Security Mode"(安全模式)。

  3. 单击 "Save"(保存)。