在 ESXi 中启用 SSLv3 支持
search cancel

在 ESXi 中启用 SSLv3 支持

book

Article ID: 338494

calendar_today

Updated On:

Products

VMware VMware vSphere ESXi

Issue/Introduction

Symptoms:

免责声明:本文为 Enabling support for SSLv3 in ESXi (2121021) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。



在 ESXi 6.0 中,默认对所有服务和端口禁用 SSLv3 支持。您可能会由于缺少对这些端口的 SSLv3 支持而遇到以下错误:

CIM – 端口 5989

CIM 服务器 (sfcbd) 停止接受 HTTPS 连接,并且当您运行 wbemcli 查询时,会看到类似以下内容的错误消息:

[root@galaxy ~]# wbemcli -noverify -cte -nl ei
https://user:[email protected]:5989/root/cimv2:CIM_NumericSensor
*
* wbemcli:Http Exception:SSL connect error
*
[root@galaxy ~]#


/var/log/syslog.log文件中,您会看到类似以下内容的条目:

<yyyy-mm-dd>T <time>Z sfcb-CIMXML-Processor[nnnnnn]:*** 1920 Error accepting SSL connection -- exiting
SSL Error Stack:
SSL</time>


注意:上述日志摘录仅为示例。日期、时间和环境变量可能会因环境而有所不同。

Authd – 端口 902

由于 ESXi 6.0 Update 1 和 View Composer 6.1.1 之间的连接故障,创建链接克隆池失败,并显示类似以下内容的错误消息:

SSLv3 握手未成功 (SSLv3 handshake was unsuccessful)

要启用所需的 SSLv3 支持以解决这些问题,请参见“解决方案”一节。


Environment

VMware View 6.1.1
VMware vSphere ESXi 6.0

Resolution

警告:这些步骤将给 SSLv3 带来安全漏洞。此问题在 VMware View 6.2(可从 VMware Downloads 获得)中已得到解决。有关详细信息,请参见 VMware Horizon 6 version 6.2 Release Notes

可以对以下端口和服务禁用 SSLv3 支持:

  • CIM 端口 5989
  • Authd Service 端口 902

在 ESXi 中对 CIM 端口 5989 启用 SSLv3 支持

  1. 创建/etc/sfcb/sfcb.cfg文件的备份副本。

  2. 编辑/etc/sfcb/sfcb.cfg文件,以将以下行附加到该文件结尾:

    enableSSLv3: true

    注意:如果该文件包含enableSSLv3: false一行,请将其更改为enableSSLv3: true

    例如:

    cat /etc/sfcb/sfcb.cfg
    # Generated by sfcb-config.py.Do not modify this header.
    # VMware ESXi 6.0.0 build-3029758
    #
    basicAuthLib: sfcBasicPAMAuthentication
    certificateAuthLib: sfcCertificateAuthentication
    cimXmlFdHardLimit:1024
    cimXmlFdSoftLimit:512



    threadStackSize:524288
    useChunking: true
    sslCipherList:HIGH:!DES-CBC3-SHA!CAMELLIA128-SHA!CAMELLIA256-SHA
    enableSSLv3: true

  3. 使用以下命令重新启动 SFCBD 服务:

    /etc/init.d/sfcbd-watchdog restart

在 ESXi 中对 Authd Service 端口 902 启用 SSLv3 支持

  1. 创建/etc/vmware/config文件的备份副本
  2. 编辑/etc/vmware/config文件,以将以下行附加到该文件结尾:

    vmauthd.ssl.noSSLv3 = "false"

    注意:如果该文件包含vmauthd.ssl.noSSLv3 = "true"一行,请将其更改为vmauthd.ssl.noSSLv3 = "false"

    例如:

    cat /etc/vmware/config
    libdir = "/usr/lib/VMware"
    authd.proxy.nfc = "vmware-hostd:ha-nfc"
    authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl"
    authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl"
    authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc"
    authd.fullpath = "/sbin/authd"
    vmauthd.ssl.noSSLv3 = "false"

  3. 使用以下命令重新启动 rhttpproxy 服务:

    /etc/init.d/rhttpproxy restart

附加信息

有关相关 Veeam 知识库文章,请参见 http://www.veeam.com/kb2063

按照以下步骤在 ESXi 6.0 U1b 或更高版本的 hostd 服务上启用 SSLv3 协议。

默认禁用 SSLv3。如果要启用 SSLv3,请通过使用以下命令将此设置设为空:

  1. 通过 SSH 登录到 ESXi。
  2. 运行以下命令,获取 hostd 的禁用协议列表:

    esxcli system settings advanced list -o /UserVars/VMAuthdDisabledProtocols

    Path:/UserVars/VMAuthdDisabledProtocols
    Type: string
    Int Value:0
    Default Int Value:0
    Min Value:0
    Max Value:0
    String Value:sslv3
    Default String Value: sslv3
    Valid Characters:*
    Description:VMAuthd disabled protocols.Choices are sslv3, tlsv1, tlsv1.1, tlsv1.2.By default sslv3 is disabled.If no protocol is specified, all protocols are enabled.

  3. 如果 SSLv3 已禁用,请运行以下命令将其启用:

    esxcli system settings advanced set -o /UserVars/VMAuthdDisabledProtocols -s ""

  4. 通过运行以下命令重新启动 rhttpproxy 服务:

    /etc/init.d/rhttpproxy restart

  5. 运行以下命令,获取 hostd 的已启用协议列表:

    esxcli system settings advanced list -o /UserVars/VMAuthdDisabledProtocols

    Path:/UserVars/VMAuthdDisabledProtocols
    Type: string
    Int Value:0
    Default Int Value:0
    Min Value:0
    Max Value:0
    String Value:
    Default String Value: sslv3
    Valid Characters:*
    Description:VMAuthd disabled protocols.Choices are sslv3, tlsv1, tlsv1.1, tlsv1.2.By default sslv3 is disabled.If no protocol is specified, all protocols are enabled.


Additional Information

相关的 Veeam 知识库文档,请参见 http://www.veeam.com/kb2063Enabling support for SSLv3 in ESXi