7.0 Configuration de JRE pour FIPS

Pour configurer le JRE pour le mode BCFIPS approved-only :

  1. Ajoutez les fichiers BCFIPS.jar au classpath Java.

    Les fichiers BCFIPS requis sont les suivants :

    • bc-fips-1.0.2.5.jar

    • bcpkix-fips-1.0.7.jar

    • bctls-fips-1.0.19.jar

    REMARQUE :Vous pouvez télécharger les fichiers .jar susmentionnés depuis les dépôts Maven suivants :

  2. Modifiez le fichier java.security dans le répertoire <jre-root>/conf/security et définissez une propriété système Java définie par BCFIPS.

    Dans un éditeur de texte, ouvrez le fichier susmentionné pour le JRE qui héberge le conteneur Web à l'adresse <jre-root>/conf/security/java.security. Recherchez la liste des fournisseurs de sécurité, commentez tous les fournisseurs existants et remplacez les entrées par les suivantes :

    • security.provider.1=BCFIPS

    • security.provider.2=BCJSSE

    • security.provider.3=SunJSSE

    • security.provider.4=SUN

    • security.provider.5=SunJCE

    Le fournisseur SunJSSE (Java 11) est requis, car OSP nécessite des implémentations TrustManager spécifiques lors de l'initialisation de ses fichiers Truststore. Outre les modifications apportées aux fournisseurs de sécurité, la mise en œuvre KeyManager JSSE BCFIPS doit être utilisée. Cela est nécessaire principalement parce que les failles dans la mise en œuvre de Sun n'autorisent pas certaines déterminations requises par FIPS concernant les clés. Pour ce faire, dans java.security, remplacez la ligne :

    par

    ssl.KeyManagerFactory.algorithm=SunX509

    ssl.KeyManagerFactory.algorithm=PKIX

    Il est également préférable de désactiver les anciens algorithmes SSL et TLS. En effet, les algorithmes nécessaires pour les versions SSL/TLS antérieures à TLS 2.0 ne sont pas disponibles en mode approved (approuvé) BCFIPS. Pour désactiver les anciens algorithmes, recherchez l'entrée jdk.tls.disabledAlgorithms. Exemple

    jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 1024, \ EC keySize < 224, DES40_CBC, RC4_40, 3DES_EDE_CBC

    Ajoutez TLSv1, TLSv1.1 et TLSv1.2 à la liste :

    jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, TLSv1.2, RC4, MD5withRSA, DH keySize < 1024, \ EC keySize < 224, DES40_CBC, RC4_40, 3DES_EDE_CBC

    La désactivation de TLSv1 et de TLSv1.1 est facultative, mais elle empêche les messages d'erreur incompréhensibles lorsque OSP tente de se connecter en toute sécurité à des services tels que LDAP qui ne supportent que TLS v1.1 ou une version précédente. Les messages d'erreur qui apparaissent lorsque les versions antérieures de TLS sont désactivées sont plus compréhensibles et indiquent directement le problème.

  3. Pour activer les autorisations pour les fichiers .jar, exécutez les commandes suivantes :

    chown novlua:novlua <jar-file>
    chmod 755 <jar-file>
  4. Pour définir la variable d'environnement, exécutez les commandes suivantes :

    export IS_FIPS_ENABLED=true
    export BC_FIPS_VERSION=1.0.2.5
    export JAVA_OPTS=" -Dorg.bouncycastle.fips.approved_only=true  -Dorg.bouncycastle.rsa.allow_multi_use=true"
    export CLASSPATH=/opt/netiq/common/jre/lib/bc-fips-1.0.2.5.jar

    Après la configuration, vérifiez toutes les variables d'environnement avec la commande echo.

    REMARQUE :Pour accéder à dxcmd sur le port 636, activez le certificat SSL EC dans les paramètres LDAP.

  5. Accédez au répertoire /opt/netiq/common/jre/lib/security/.

  6. Effectuez une sauvegarde du fichier cacerts.

  7. Pour prendre en charge l'amélioration de la sécurité, convertissez le fichier cacerts en fichier bcfks à l'aide de la commande suivante :

    keytool -importkeystore -srckeystore cacerts -srcstorepass novell -srcstoretype JKS -destkeystore cacerts -deststorepass changeit -deststoretype BCFKS -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH

REMARQUE :OpenText eDirectory 8.8 (ou une version antérieure) ne peut pas être utilisé avec le protocole LDAP sécurisé, car il ne prend en charge que TLS v1.0. Si vous souhaitez utiliser le protocole LDAP sécurisé, vous devez utiliser OpenText eDirectory 9 ou une version ultérieure. Une autre solution consiste à modifier le type de keystore par défaut. Recherchez la ligne keystore.type=jks ou keystore.type=pkcs12 et remplacez-la par keystore.type=bcfks.