In questo argomento viene descritto l'attività che è necessario eseguire per attivare la modalità FIPS (Federal Information Processing Standard) nell'appliance vSphere Replication.

Nota: Il formato del file del certificato PKCS#12 non è supportato nella configurazione dei certificati in modalità FIPS. Il formato di file PKCS#12 utilizza algoritmi non conformi a FIPS come specifica standard.

Prerequisiti

Assicurarsi di utilizzare certificati attendibili quando si distribuisce l'ambiente.

Procedura

  1. Avviare vSphere Replication Management Server in modalità rigida.
    1. Passare a /opt/vmware/hms/conf/hms-fips.conf, aprire il file e modificare la seguente impostazione.
       "appl_system_cryptography" : true
    2. Rimuovere tutti gli archivi BCFKS obsoleti.
      rm /opt/vmware/hms/security/*.bks
    3. Riavviare il servizio del server di gestione di vSphere Replication.
      systemctl restart hms
  2. Avviare vSphere Replication in modalità rigida.
    1. Passare a /etc/vmware/hbrsrv.xml, aprire il file e modificare la seguente impostazione.
      <Config>
          <vmacore>
              <ssl>
                  <fips>true</fips>
              </ssl>
          </vmacore>
          </Config>
    2. Modificare /usr/lib/vmware/lib/ssl/openssl.cnf, rimuovere il commento dalla riga seguente # .include /usr/lib/vmware/lib/ssl/fipsmodule.cnf e modificare la riga default_properties = "fips=no" in default_properties = "fips=yes".
      Il frammento di file deve essere simile al seguente:
      # Refer to the OpenSSL security policy for more information.
      # In ESX this will be generated at boot time.
      .include /usr/lib/vmware/lib/ssl/fipsmodule.cnf
      ...
      [algorithm_sect]
      # Since we use both default and FIPS provider, we need to be specific
      # about which algorithm implementation to use as default.
      default_properties = "fips=yes"
    3. Riavviare il servizio HBR.
      systemctl restart hbrsrv
  3. Avviare il servizio dr-configurator in modalità rigida.
    1. Passare a /opt/vmware/dr/conf/drconfig.xml, aprire il file e modificare l'impostazione seguente.
      <Config>
          <vmacore>
              <ssl>
                  <fips>true</fips>
              </ssl>
          </vmacore>
          </Config>
    2. Modificare /usr/lib/systemd/system/dr-configurator.service. Rimuovere il commento dalle righe in # Rimuovere il commento per abilitare FIPS.
      Il frammento di file deve essere simile al seguente.
      # Uncomment to enable FIPS
              Environment=OPENSSL_MODULES=/opt/vmware/dr/lib/ossl-modules
              Environment=OPENSSL_CONF=/opt/vmware/etc/dr/ssl/openssl.cnf
    3. Avviare il servizio dr-configrator.
      systemctl daemon-reload
             systemctl restart dr-configurator
  4. Accedere all'appliance come utente root e modificare la cmdline del kernel.
    1. Aprire /boot/grub/grub.cfg.
    2. Individuare la voce menuentry.
    3. Aggiungere quanto segue alla fine della riga in ogni menuentry che inizia con linux.
      fips=1
    4. Salva il file.
  5. Avviare l'interfaccia utente di configurazione in modalità rigida.
    1. Modificare /usr/lib/systemd/system/drconfigui.service. Commentare l'Environment='CATALINA_OPTS=-Xms768m -Xmx1024m' esistente e rimuovere il commento dalle righe in # Rimuovere il commento per abilitare FIPS.
      Il frammento di file deve essere simile al seguente.
      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. Rimuovere il commento dal tag <Manager> nel file /opt/vmware/drconfigui/conf/context.xml.
      Il frammento di file con il tag deve essere simile al seguente.
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (Facoltativo) Riavviare il servizio drconfigui se FIPS è già abilitato per l'appliance.
      systemctl daemon-reload; systemctl restart drconfigui
  6. Avviare l'interfaccia utente in modalità rigida.
    1. Modificare /usr/lib/systemd/system/dr-client.service. Commentare l'Environment='CATALINA_OPTS=-Xms768m -Xmx1024m' esistente e rimuovere il commento dalle righe in # Rimuovere il commento per abilitare FIPS.
      Il frammento di file deve essere simile al seguente.
      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. Rimuovere il commento dal tag <Manager> nel file /opt/vmware/dr-client/conf/context.xml.
      Il frammento di file con il tag deve essere simile al seguente.
      <!-- Uncomment to enable FIPS mode.              -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. Modificare il file /opt/vmware/dr-client/lib/h5dr.properties e modificare i parametri in modo che puntino all'archivio chiavi e all'archivio attendibilità in formato BCFKS con certificati CA root.
      La proprietà deve essere simile alla seguente.
      drTrustStorePass=<same as keyStorePass>
      drTrustStoreName=h5dr.truststore.bks
      keyStoreName=h5dr.keystore.bks
      Se si sceglie di utilizzare un archivio attendibilità diverso da quello predefinito, è necessario aggiungere un collegamento all'archivio attendibilità in /opt/vmware/dr-client/lib/ o /opt/vmware/dr-client/webapps/dr/WEB-INF/classes/. Il formato dell'integrità deve essere BCFKS. Per importarlo dal formato JKS, utilizzare il comando seguente.
      $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
      Nota: I file dell'integrità e dell'archivio attendibilità utilizzati devono disporre dell'autorizzazione Others: Read. Dopo aver riconfigurato l'appliance, è necessario modificare nuovamente il file /opt/vmware/dr-client/lib/h5dr.properties in base alle regole precedenti.
    4. (Facoltativo) Riavviare il servizio dr-client se FIPS è già abilitato per l'appliance.
      systemctl daemon-reload; systemctl restart dr-client
  7. Avviare il plug-in dell'interfaccia utente (dr-client-plugin) in modalità rigida.
    1. Modificare /usr/lib/systemd/system/dr-client-plugin.service. Commentare l'Environment='CATALINA_OPTS=-Xms768m -Xmx1024m' esistente e rimuovere il commento dalle righe in # Rimuovere il commento per abilitare FIPS.
      Il frammento di file deve essere simile al seguente.
      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. Rimuovere il commento dal tag <Manager> nel file /opt/vmware/dr-client-plugin/conf/context.xml.
      Il frammento di file con il tag deve essere simile al seguente.
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (Facoltativo) Riavviare il servizio dr-client-plugin se FIPS è già abilitato per l'appliance.
      systemctl daemon-reload; systemctl restart dr-client-plugin
  8. Avviare il servizio REST API (dr-rest) in modalità rigida.
    1. Modificare /usr/lib/systemd/system/dr-rest.service. Commentare l'Environment='CATALINA_OPTS=-Xms768m -Xmx1024m' esistente e rimuovere il commento dalle righe in # Rimuovere il commento per abilitare FIPS.
      Il frammento di file deve essere simile al seguente.
      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. Rimuovere il commento dal tag <Manager> nel file /opt/vmware/dr-rest/conf/context.xml.
      Il frammento di file con il tag deve essere simile al seguente.
      <!-- Uncomment to enable FIPS mode.          -->
      <Manager pathname="" secureRandomAlgorithm=""/>
    3. (Facoltativo) Riavviare il servizio dr-rest se FIPS è già abilitato per l'appliance.
      systemctl daemon-reload; systemctl restart dr-rest
  9. Riavviare l'appliance .
    Assicurarsi che il comando systemctl daemon-reload venga eseguito almeno una volta dopo aver apportato le modifiche e prima di riavviare l'appliance.
    Nota: SSHD leggerà che il kernel ha la modalità FIPS abilitata e la attiverà. Non è necessario modificare alcun elemento nella configurazione SSHD.

Operazioni successive

Verificare che la modalità FIPS sia attivata.