本主题概述了在 Site Recovery Manager 设备上激活联邦信息处理标准 (FIPS) 模式时必须执行的必要任务。

注: 在 FIPS 模式下配置证书时,不支持证书文件格式 PKCS#12PKCS#12 文件格式使用不符合 FIPS 的算法作为标准规范。

前提条件

确保在部署环境时使用可信证书。

过程

  1. 编辑 Site Recovery Manager 服务的配置文件。
    1. 导航到 /opt/vmware/dr/conf/drconfig.xml,打开文件并更改以下设置。
      <Config>
          <vmacore>
              <ssl>
                  <fips>true</fips>
              </ssl>
          </vmacore>
      </Config>
    2. 导航到 /opt/vmware/srm/conf/vmware-dr.template.xml,打开文件并更改以下设置。
      <Config>
          <vmacore>
              <ssl>
                  <fips>true</fips>
              </ssl>
          </vmacore>
      </Config>
    3. (可选) (可选)如果配置了设备,则编辑 /opt/vmware/srm/conf/vmware-dr.xml 文件。
      <Config>
          <vmacore>
              <ssl>
                  <fips>true</fips>
              </ssl>
          </vmacore>
      </Config>
  2. 在严格模式下启动 Site Recovery Manager 服务。
    1. 编辑 /usr/lib/systemd/system/dr-configurator.service。取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      # Uncomment to enable FIPS
      Environment=OPENSSL_MODULES=/opt/vmware/dr/lib/ossl-modules
      Environment=OPENSSL_CONF=/opt/vmware/etc/dr/ssl/openssl.cnf
    2. 编辑 /usr/lib/systemd/system/srm-server.service。取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      # Uncomment to enable FIPS
      Environment=OPENSSL_MODULES=/opt/vmware/dr/lib/ossl-modules
      Environment=OPENSSL_CONF=/opt/vmware/etc/dr/ssl/openssl.cnf
    3. 重新启动 dr-configuratorsrm-server。运行以下命令。
      systemctl daemon-reload
      systemctl restart dr-configurator
      systemctl restart srm-server
  3. root 用户身份登录设备,然后编辑内核 cmdline。
    1. 打开 /boot/grub/grub.cfg
    2. 找到 menuentry 条目。
    3. 在每个以 linux 开头的 menuentry 的行末附加以下内容。
      fips=1
    4. 保存文件。
  4. 在严格模式下启动配置 UI。
    1. 编辑 /usr/lib/systemd/system/drconfigui.service。注释掉现有的 Environment='CATALINA_OPTS=-Xms768m -Xmx1024m',并取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      Environment=JRE_HOME=/usr/java/jre-vmware
      # Comment when enable FIPS
      # Environment='CATALINA_OPTS=-Xms768m -Xmx1024m'
      # Uncomment to enable FIPS
      Environment='SERVICE_CLASSPATH=$CATALINA_BASE/lib/ext/*'
      Environment='CATALINA_OPTS=-Xms768m -Xmx1024m -Djava.security.properties==/opt/vmware/dr-client/conf/vmware-override-java.security -Dorg.bouncycastle.jca.enable_jks=true -Dorg.bouncycastle.fips.approved_only=true'
      
    2. /opt/vmware/drconfigui/conf/context.xml 文件中取消 <Manager> 标记的注释。
      带有该标记的文件片段必须如下所示。
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (可选) 如果已为设备启用 FIPS,请重新启动 drconfigui 服务。
      systemctl daemon-reload; systemctl restart drconfigui
  5. 在严格模式下启动 UI。
    1. 编辑 /usr/lib/systemd/system/dr-client.service。注释掉现有的 Environment='CATALINA_OPTS=-Xms768m -Xmx1024m',并取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      Environment=JRE_HOME=/usr/java/jre-vmware
      # Comment when enable FIPS
      # Environment='CATALINA_OPTS=-Xms768m -Xmx1024m'
      # Uncomment to enable FIPS
      Environment='SERVICE_CLASSPATH=$CATALINA_BASE/lib/ext/*'
      Environment='CATALINA_OPTS=-Xms768m -Xmx1024m -Djava.security.properties==/opt/vmware/dr-client/conf/vmware-override-java.security -Dorg.bouncycastle.jca.enable_jks=true -Dorg.bouncycastle.fips.approved_only=true'
      
    2. /opt/vmware/dr-client/conf/context.xml 文件中取消 <Manager> 标记的注释。
      带有该标记的文件片段必须如下所示。
      <!-- Uncomment to enable FIPS mode.              -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. 编辑 /opt/vmware/dr-client/lib/h5dr.properties 文件,并修改参数,以指向具有根 CA 证书的 BCFKS 格式的密钥库和信任库。
      属性必须如下所示。
      drTrustStorePass=<same as keyStorePass>
      drTrustStoreName=h5dr.truststore.bks
      keyStoreName=h5dr.keystore.bks
      如果选择使用非默认信任库,则必须在 /opt/vmware/dr-client/lib//opt/vmware/dr-client/webapps/dr/WEB-INF/classes/ 中添加该信任库的链接。密钥库格式必须为 BCFKS。要从 JKS 格式导入,请使用以下命令。
      $JAVA_HOME/bin/keytool -importkeystore -srckeystore <path-to-jks-keystore> -srcstoretype JKS -srcstorepass <keystorepass> -destkeystore <path-to-target-bks-keystore> -deststoretype BCFKS -deststorepass <keystorepass> -provider org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath /opt/vmware/dr-client/lib/ext/bc-fips-1.0.2.3.jar
      注: 使用的密钥库和信任库文件必须具有 其他:读取权限。重新配置设备后,必须根据上述规则重新编辑文件 /opt/vmware/dr-client/lib/h5dr.properties
    4. (可选) 如果已为设备启用 FIPS,请重新启动 dr-client 服务。
      systemctl daemon-reload; systemctl restart dr-client
  6. 在严格模式下启动 UI 插件 (dr-client-plugin)。
    1. 编辑 /usr/lib/systemd/system/dr-client-plugin.service。注释掉现有的 Environment='CATALINA_OPTS=-Xms768m -Xmx1024m',并取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      Environment=JRE_HOME=/usr/java/jre-vmware
      # Comment when enable FIPS
      # Environment='CATALINA_OPTS=-Xms768m -Xmx1024m'
      # Uncomment to enable FIPS
      Environment='SERVICE_CLASSPATH=$CATALINA_BASE/lib/ext/*'
      Environment='CATALINA_OPTS=-Xms768m -Xmx1024m -Djava.security.properties==/opt/vmware/dr-client/conf/vmware-override-java.security -Dorg.bouncycastle.jca.enable_jks=true -Dorg.bouncycastle.fips.approved_only=true'
    2. /opt/vmware/dr-client-plugin/conf/context.xml 文件中取消 <Manager> 标记的注释。
      带有该标记的文件片段必须如下所示。
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (可选) 如果已为设备启用 FIPS,请重新启动 dr-client-plugin 服务。
      systemctl daemon-reload; systemctl restart dr-client-plugin
  7. 在严格模式下启动 REST API 服务 (dr-rest)。
    1. 编辑 /usr/lib/systemd/system/dr-rest.service。注释掉现有的 Environment='CATALINA_OPTS=-Xms768m -Xmx1024m',并取消 # Uncomment to enable FIPS 下各行的注释。
      文件片段必须如下所示。
      Environment=JRE_HOME=/usr/java/jre-vmware
      # Comment when enable FIPS
      # Environment='CATALINA_OPTS=-Xms768m -Xmx1024m'
      # Uncomment to enable FIPS
      Environment='SERVICE_CLASSPATH=$CATALINA_BASE/lib/ext/*'
      Environment='CATALINA_OPTS=-Xms768m -Xmx1024m -Djava.security.properties==/opt/vmware/dr-client/conf/vmware-override-java.security -Dorg.bouncycastle.jca.enable_jks=true -Dorg.bouncycastle.fips.approved_only=true'
      
    2. /opt/vmware/dr-rest/conf/context.xml 文件中取消 <Manager> 标记的注释。
      带有该标记的文件片段必须如下所示。
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (可选) 如果已为设备启用 FIPS,请重新启动 dr-rest 服务。
      systemctl daemon-reload; systemctl restart dr-rest
  8. 重新引导设备。
    确保在修改后和重新引导设备之前至少执行一次 systemctl daemon-reload 命令。
    注: SSHD 将显示内核已启用 FIPS 模式,并也将激活该模式。无需在 sshd 配置中编辑任何内容。

下一步做什么

验证 FIPS 模式是否已激活。