安全性的一个重要组成部分是,确保静态数据完整性,此处是指存储的 SSL 密钥。

本地存储的密钥

私钥永远不会存储在 NSX Advanced Load Balancer 服务引擎的文件系统中。它们从 NSX Advanced Load Balancer Controller 推送到 SE 并保留在内存中,以便与客户端建立 SSL 会话。如果 SE 受到攻击或重新引导,将擦除所有配置(包括私钥和公用证书)。在 SE 恢复联机时,控制器可能会根据情况使用新的(或相同的)配置改变 SE 用途或删除 SE。

控制器将密钥存储在本地数据库中,其中对敏感信息进行加密。如果在备份过程中包括密码短语,则会在备份期间对密钥进行加密。要在数据库中存储所有敏感字段(例如密码或私钥)之前进行加密,请使用以下内容:

  • 加密算法:AES_256_CBC

  • IV:16 字节随机数据

  • 密钥:随机 32 字节

用户密码是使用 PBKDF2(基于密码的密钥派生函数 2)算法和 SHA256 哈希进行哈希处理的。所有其他密码(例如云凭据)也是使用该方法加密的。

由于控制器存储系统配置(包括 SSL 私钥),因此,确保正确的安全性是至关重要的。可以使用多个选项锁定管理员的访问级别,确保使用增强的密码以及限制管理源 IP 地址范围。

对于具有证书和密钥的完全访问权限的管理员,将在运维 > 事件 > 配置审核日志中记录尝试导出私钥的操作。通过使用基于角色的访问权限,必须仅限尽可能少的管理员使用导出功能。

Thales Luna(以前称为 SafeNet Luna)HSM 和外部存储的密钥

NSX Advanced Load Balancer 支持外部硬件安全模块和证书存储,以确保更高级别的物理安全性。原始密钥存储在外部系统上,并且 NSX Advanced Load Balancer 可以使用公钥。它支持以下类型的外部密钥存储: