使用单元管理工具的 ciphers 命令配置单元在 SSL 握手过程中提供使用的一组密码套件。

注:

ciphers 命令仅适用于 VMware Cloud Director 用于 HTTPS 通信的证书,而不适用于 VMware Cloud Director 设备用于其设备管理用户界面和 API 的证书。

客户端与 VMware Cloud Director 单元建立 SSL 连接时,该单元支持仅使用其默认的允许密码的列表中配置的密码。多个密码不在此列表中,可能的原因是这些密码不够强,无法保护连接,或者已知这些密码会导致 SSL 连接失败。

安装或升级 VMware Cloud Director 时,安装或升级脚本会检查该单元的证书。如果使用允许密码列表中未列出的密码对任何证书进行加密,则安装或升级将失败。可以通过执行以下步骤替换证书并重新配置允许密码列表:

  1. 创建不使用任何禁用密码的证书。可以使用 cell-management-tool ciphers -a(如以下示例所示)列出默认配置中允许的所有密码。

  2. 使用 cell-management-tool certificates 命令将单元的现有证书替换为新证书。

  3. 使用 cell-management-tool ciphers 命令重新配置允许密码列表并包括用于新证书的所有必要密码。

    重要说明:

    由于 VMRC 控制台需要使用 AES256-SHA 和 AES128-SHA 密码,因此如果 VMware Cloud Director 客户端使用 VMRC 控制台,则不能禁用这两个密码。

要管理允许的 SSL 密码的列表,请使用以下形式的命令行:

cell-management-toolciphersoptions
表 1. 单元管理工具选项和参数,ciphers 子命令

选项

参数

描述

--help (-h)

提供此类别中可用命令的摘要。

--all-allowed (-a)

列出 VMware Cloud Director 支持的所有密码。

--compatible-reset (-c)(已弃用)

已弃用。使用 --reset 选项重置为默认的允许密码列表。

--disallow (-d)

以逗号分隔的密码名称列表。

禁用指定的逗号分隔列表中的密码。每次运行此选项时,都必须包含要停用的密码的完整列表,因为运行此选项会覆盖以前的设置。

重要说明:

如果运行此选项时不带任何值,将激活所有密码。

要查看所有可能的密码,请运行 -a 选项。

重要说明:

运行 ciphers --disallow 后,必须重新启动单元。

--list (-l)

列出当前正在使用的一组允许的密码。

--reset (-r)

重置为默认的允许密码列表。如果此单元的证书使用禁用的密码,您将无法与该单元建立 SSL 连接,除非安装使用允许密码的新证书。

重要说明:

运行 ciphers --reset 后,必须重新启动单元。

禁用两个密码

VMware Cloud Director 包含预配置的已启用密码列表。

此示例显示了如何从允许的密码列表中启用其他密码,以及如何禁用不希望使用的密码。

  1. 获取默认启用的密码列表。

    [root@cell1 /opt/vmware/vcloud-director/bin]# ./cell-management-tool ciphers -l

    该命令的输出将返回已启用密码的列表。

    Allowed ciphers:
    * TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    * TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  2. 获取单元在 SSL 握手期间可以提供的所有密码的列表。

    [root@cell1 /opt/vmware/vcloud-director/bin]# ./cell-management-tool ciphers -a

    命令的输出返回允许的密码列表。

    # ./cell-management-tool ciphers -a
    Product default ciphers:
    * TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    * TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    * TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
    * TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
    * TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
    * TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
    * TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
    * TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
    * TLS_RSA_WITH_AES_256_GCM_SHA384
    * TLS_RSA_WITH_AES_128_GCM_SHA256
    * TLS_RSA_WITH_AES_256_CBC_SHA256
    * TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
    * TLS_RSA_WITH_AES_256_CBC_SHA
    * TLS_RSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
    * TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA
    * TLS_ECDH_RSA_WITH_AES_128_CBC_SHA
    * TLS_RSA_WITH_AES_128_CBC_SHA
  3. 指定要停用的密码。

    如果在运行命令时未明确停用某个密码,则该密码将处于激活状态。

    [root@cell1 /opt/vmware/vcloud-director/bin]#./cell-management-tool ciphers -d TLS_RSA_WITH_AES_128_CBC_SHA,TLS_ECDH_RSA_WITH_AES_128_CBC_SHA
  4. 运行 命令以检查激活的密码列表。列表中不存在的任何密码均被停用。

    root@bos1-vcd-static-211-90 [ /opt/vmware/vcloud-director/bin ]# ./cell-management-tool ciphers -l

    输出将返回现在已启用的所有密码的列表。

    Allowed ciphers:
    * TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    * TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    * TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    * TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
    * TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
    * TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
    * TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
    * TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
    * TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
    * TLS_RSA_WITH_AES_256_GCM_SHA384
    * TLS_RSA_WITH_AES_128_GCM_SHA256
    * TLS_RSA_WITH_AES_256_CBC_SHA256
    * TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
    * TLS_RSA_WITH_AES_256_CBC_SHA
    * TLS_RSA_WITH_AES_128_CBC_SHA256
    * TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
    * TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA