Magasin de clés unifié du MID Server

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 8 minutes de lecture
  • Le magasin de clés unifié du MID Server permet à tous les produits du MID Server d’utiliser des certificats et des paires de clés communs. Cette fonctionnalité permet aux applications d’utiliser le même canal de communication sécurisé avec le MID Server que celui utilisé par le MID Server pour se connecter à l’instance.

    Indicateur de configuration pour la phase de sécuritéAssurez-vous que le MID Server peut se connecter à des éléments à l'intérieur et à l'extérieur de votre réseauTélécharger et installer le MID Server sur un hôte Linux ou WindowsConfigurer votre MID ServerConfigurer la sécurité du MID ServerAssurez-vous que le MID Server peut se connecter à des éléments à l'intérieur et à l'extérieur de votre réseauTélécharger et installer le MID Server sur un hôte Linux ou WindowsConfigurer votre MID ServerConfigurer la sécurité du MID Server

    Lorsque le MID Server démarre, le nom commun (CN) du certificat est inspecté pour déterminer si un certificat personnalisé a été installé. Si un certificat personnalisé est détecté, la création de la paire certificat/clé est ignorée et un attribut est défini sur l’enregistrement ecc_agent pour indiquer l’utilisation d’un certificat personnalisé.

    Lorsqu’un certificat personnalisé est utilisé, l’action d’interface utilisateur Re-key est désactivée sur l’instance pour le MID Server. Une nouvelle action d’interface utilisateur appelée Supprimer la paire de clés personnalisée est disponible pour revenir à l’utilisation d’un certificat auto-signé. L’utilisation de cette action entraîne la suppression du certificat personnalisé par le MID Server et la génération d’un nouveau certificat autosigné, similaire à l’option de renouvellement de saisie.

    Lorsqu’un MID est mis à niveau, tous les certificats personnalisés qui ont été installés sont conservés.

    Prise en charge des bundles PEM

    Le magasin de clés unifié du MID Server prend en charge le certificat de bundle PEM et les paires de clés.

    Exemple de groupe PEM

    -----BEGIN PRIVATE KEY----- 
    
    MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC0pj5O8QKFpHy9 
    
    ... 
    
    oPdU+h0grs9SJp6rFx0PzDY= 
    
    -----END PRIVATE KEY----- 
    
    Bag Attributes 
    
        friendlyName: <myCustomCert>
    
        localKeyID: 54 69 6D 65 20 31 35 39 35 33 35 34 32 30 38 30 35 31  
    
    subject=/C=US/ST=CA/L=Santa Clara/CN=epic1016883 
    
    issuer=/C=US/ST=CA/L=Santa Clara/CN=epic1016883 
    
    -----BEGIN CERTIFICATE----- 
    
    MIIDKzCCAhOgAwIBAgIEPqMQqDANBgkqhkiG9w0BAQsFADBGMQswCQYDVQQGEwJV 
    
    ... 
    
    4g53RN+LqtJVeeQkZvIbZOfuSqypdVfudkS8dqxQALb8IuHUV7JOcBvOT79mSTs= 
    
    -----END CERTIFICATE----- 

    Installer des certificats personnalisés dans le magasin de clés unifié du MID Server

    Installez des certificats personnalisés pour unifier les canaux de sécurité pour diverses applications.

    Avant de commencer

    Rôle requis : admin

    Lors de l’installation du certificat sur un MID Server hébergé sous Linux, install-certificate.sh peut ne pas répondre si le nombre de pools d’entropie Linux est inférieur à quelques centaines. Vérifiez le nombre d’entropies du générateur de nombres pseudo-aléatoires (PRNG) Linux avec la commande suivante :
    cat /proc/sys/kernel/random/entropy_avail
    Si le nombre d’entropie est trop faible, vous pouvez installer un générateur d’entropie tel que RNGD ou Haveged. Pour plus d’informations sur l’installation de Haveged pour CentOS et Ubuntu, consultez Comment configurer une entropie supplémentaire pour les serveurs cloud à l’aide de Haveged.

    Procédure

    1. Si le MID Server est en cours d’exécution, arrêtez-le.
      Remarque :

      Si l’entrée de l’alias DefaultSecurityKeyPairHandle est en cours de modification, vous devez invalider le MID Server avant de l’arrêter.

    2. Créez un certificat de bundle PEM et une paire de clés en exécutant l’une des commandes suivantes dans le dossier d’installation du MID Server.
      • Générez des certificats auto-signés pour les cas d’utilisation non MTLS avec la commande :
        openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
      • Exportez le magasin de clés vers un groupe PEM à l’aide de la commande :
        openssl pkcs12 -in <myCustomCert>.p12 -nodes -out <myCustomCert>.pem
      • Obtenir uniquement les certificats au format PEM à l’aide de la commande :
        openssl pkcs12 -in <myCustomCert>.p12 -out <myCustomCert>.pem -clcerts -nokeys
      • Récupérez uniquement les clés au format PKCS#8 avec la commande :
        openssl pkcs12 -in <myCustomKey>.p12 -out <myPrivateKey>.key -nocerts -nodes
      • Installez le certificat, ou la chaîne de certificat, et la clé privée pour les hôtes Windows à l’aide de la commande :
        bin/scripts/manage-certificates.bat -a <alias> <file path to PEM bundle>
      • Installez le certificat, ou la chaîne de certificat, et la clé privée pour les hôtes Linux à l’aide de la commande :
        bin/scripts/manage-certificates.sh -a <alias> <file path to PEM bundle>
      Remarque :

      L’en-tête et le pied de page de la syntaxe PEM doivent être les suivants :

       -----BEGIN CERTIFICATE----- 
       -----END CERTIFICATE----- 

      L'en-tête et le pied de page de la syntaxe PKCS#8 doivent être les suivants :

       -----BEGIN PRIVATE KEY----- 
       -----END PRIVATE KEY----- 
    3. Démarrez le MID Server.
    4. Validez le MID Server avec l’instance.
    5. Facultatif : Pour rétablir le MID Server afin qu’il utilise un certificat auto-généré, sélectionnez le MID Server dans l’instance et utilisez l’action d’interface utilisateur Supprimer le certificat personnalisé.
      Remarque :
      Le MID Server peut également être rétabli à l’aide de l’action d’interface utilisateur Invalider . L’invalidation d’un MID Server supprime tous les certificats personnalisés installés et crée un certificat autosigné pour le MID Server.

    Que faire ensuite

    La commande manage-certificates a les fonctions suivantes et les scripts doivent être exécutés à partir du dossier de l’agent.
    Activer l'authentification réciproque​

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -m

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -m

    Supprimer l'authentification réciproque et restaurer l'authentification de base

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -b <myUserName myPassword>

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -b <myUserName myPassword>

    Ajouter de nouveaux certificats et chaînes de certificats avec un alias spécifié​

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -a <alias> <fileName>

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -a <alias> <fileName>

    L’alias est un nom unique donné au certificat en cours d’importation. Le MID Server nécessite un certificat personnalisé pour l'authentification réciproque, avec le nom d'alias par défaut defaultsecuritykeypairhandle. Pour configurer la communication MTLS entre le MID Server et l'instance, l'entrée de certificat doit être ajoutée au magasin de clés à l'aide du nom d'alias defaultsecuritykeypairhandle.

    Le fileName est un chemin d’accès au fichier qui peut contenir un certificat PEM, ou une chaîne de certificat, et une clé privée PCKS#8. Le chemin d'accès au fichier de groupe PEM peut contenir plusieurs certificats et une seule clé privée. L'en-tête et le pied de page de chaque certificat PEM doivent être les suivants :

     -----BEGIN CERTIFICATE----- 
     -----END CERTIFICATE----- 

    L'en-tête et le pied de page de la syntaxe PKCS#8 doivent être les suivants :

     -----BEGIN PRIVATE KEY----- 
     -----END PRIVATE KEY----- 

    Une exception est levée en cas d'échec de la validation de la chaîne de certificats. Si le fichier contient plusieurs certificats, ils doivent être classés : certificat feuille, certificats intermédiaires, puis certificats racines.

    Afficher les détails du certificat pour l'alias spécifié

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -g <alias>​

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -g <alias> ​

    Cette commande affiche des informations telles que le nom unique de l'objet, le nom de l'émetteur et la date d'expiration du certificat.

    Répertorier tous les alias existants

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -l

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -l

    Cette commande répertorie tous les noms d'alias disponibles dans agent_keystore.

    Supprimer les certificats à l'aide d'un alias​

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -d <alias>

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -d <alias>

    Cette commande supprime l'alias et l'enregistrement du magasin de clés. L'entrée de l'alias DefaultSecurityKeyPairHandle peut être supprimée à l'aide de cette commande.

    Supprimer toutes les entrées du magasin de clés

    Pour Windows, utilisez la commande : bin/scripts/manage-certificates.bat -r ​

    Pour Linux, utilisez la commande : ./bin/scripts/manage-certificates.sh -r ​

    Cette commande supprime les entrées existantes du magasin de clés, à l'exception de l'alias DefaultSecurityKeyPairHandle. ​

    Restaurer le magasin de clés du MID Server avec une copie de sauvegarde

    Si le magasin de clés est endommagé ou supprimé accidentellement, vous pouvez restaurer une sauvegarde du magasin de clés du MID Server. Ceci est particulièrement utile pour les magasins de clés avec des paires de clés personnalisées, car sinon, la recréation de données de paires de clés personnalisées peut s’avérer difficile et prendre beaucoup de temps.

    Avant de commencer

    Rôle requis : administrateur d’agent

    Pourquoi et quand exécuter cette tâche

    À partir de la version Tokyo, le MID Server effectue automatiquement une sauvegarde du fichier agent_keystore lorsqu’il est modifié. Les sauvegardes sont stockées dans security_backup sous le dossier de l’agent. Ils sont stockés en dehors du dossier de sécurité pour se protéger contre les suppressions accidentelles ou les corruptions du dossier de sécurité.

    Dans le dossier de sauvegarde, il y a un fichier journal de sauvegarde dédié : keystore_backup_audit_trail.log. Ce journal assure le suivi des fichiers de sauvegarde et des activités de sauvegarde. Chaque entrée du journal de sauvegarde a un nom de fichier de sauvegarde avec un horodatage, un keypairs.mid_id correspondant et une liste d’alias de paires de clés dans la sauvegarde.

    Remarque :
    À des fins de sécurité, le magasin de clés de sauvegarde doit avoir les mêmes attributs que le magasin de clés d’origine, tels que le propriétaire, le groupe et les autorisations. Ces attributs garantissent au MID Server la même protection au niveau du système de fichiers.

    Les sauvegardes du magasin de clés peuvent être modifiées avec les propriétés du MID Server mid.keystore.max_backups, mid.keystore.max_live_backups, et mid.keystore.backup_overwrite_timespan. Consultez Propriétés du MID Server pour plus d'informations.

    Procédure

    1. Arrêtez Serveur MID.
    2. Accédez au security_backup et affichez le keystore_backup_audit_trail.log pour choisir la sauvegarde à restaurer.
    3. Copiez cette sauvegarde dans le fichier agent_keystore dans le dossier de sécurité.
      Vérifiez les autorisations du fichier pour vous assurer qu’il a le même propriétaire et les mêmes autorisations que celui d’origine. Si agent_keystore existe déjà à cet emplacement, remplacez-le par la copie de sauvegarde.
    4. Vérifiez config.xml pour vous assurer que le keypairs.mid_id correspond à celui du fichier journal d’audit.
    5. Facultatif : Si les keypairs.mid_id ne correspondent pas, mettez à jour les config.xml pour qu’ils correspondent.
    6. Accédez à l’instance et invalidez le MID Server.
      Cela créera une commande système delete_mid_keypair dans le ecc_queue.
    7. Recherchez tous les messages de sortie delete_mid_keypair pour le MID Server et marquez-les comme traités.
      L’objectif est de marquer le MID Server comme invalidé sans déclencher la suppression de la paire de clés. À moins que les commandes système ne soient marquées comme traitées, MID Server supprime la paire de clés defaultsecuritykeypairhandle , qu’elle soit personnalisée ou générée automatiquement.
    8. Redémarrez Serveur MID.
    9. Accédez à l’instance et validez le MID Server.