Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configurer une mutuelle TLS entre le client et AWS CloudHSM (recommandé)
Les rubriques suivantes décrivent les étapes à suivre pour activer la mutuelle TLS (mTLS) entre le client et AWS CloudHSM. Actuellement, cette fonctionnalité est exclusivement disponible sur hsm2m.medium. Pour plus d'informations sur HSM le type, consultezAWS CloudHSM modes de cluster.
Rubriques
Étape 1. Créez et enregistrez une ancre de confiance sur le HSM
Une ancre de confiance doit être créée et enregistrée sur le HSM avant d'activer TLS m. Il s'agit d'un processus en deux étapes :
Création d'une clé privée et d'un certificat racine auto-signé
Note
Pour un cluster de production, la clé doit être créée de manière sécurisée à l'aide d'une source fiable de caractère aléatoire. Nous vous recommandons d'utiliser un site sécurisé hors site et hors ligne HSM ou l'équivalent. Stockez la clé en toute sécurité.
Pour le développement et les tests, vous pouvez utiliser n'importe quel outil pratique (tel qu'OpenSSL) pour créer la clé et signer vous-même un certificat racine. Vous aurez besoin de la clé et du certificat racine pour signer le certificat client dans le champ enable m TLS for AWS CloudHSM.
Les exemples suivants montrent comment créer une clé privée et un certificat racine auto-signé avec Open SSL
Exemple — Crée une clé privée avec Open SSL
Utilisez la commande suivante pour créer une RSA clé de 4096 bits chiffrée avec l'AESalgorithme -256. Pour utiliser cet exemple, <mtls_ca_root_1.key>
remplacez-le par le nom du fichier dans lequel vous souhaitez stocker la clé.
$
openssl genrsa -out
<mtls_ca_root_1.key>
-aes256 4096Generating RSA private key, 4096 bit long modulus .....................................+++ .+++ e is 65537 (0x10001) Enter pass phrase for mtls_ca_root_1.key: Verifying - Enter pass phrase for mtls_ca_root_1.key:
Exemple — Créez un certificat racine auto-signé avec Open SSL
Utilisez la commande suivante pour créer un certificat racine autosigné nommé mtls_ca_root_1.crt
à partir de la clé privée que vous venez de créer. Le certificat est valide pendant 25 ans (9130 jours). Lisez les instructions à l'écran et suivez les invites.
$
openssl req -new -x509 -days 9130 -key mtls_ca_root_1.key -out mtls_ca_root_1.crt
Enter pass phrase for mtls_ca_root_1.key: You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []: Email Address []:
Enregistrez l'ancre de confiance sur le HSM
Après avoir créé un certificat racine auto-signé, l'administrateur doit l'enregistrer comme point d'ancrage de confiance auprès du AWS CloudHSM cluster.
Pour enregistrer une ancre de confiance auprès du HSM
-
Utilisez la commande suivante pour démarrer Cloud HSM CLI :
-
À l'aide de Cloud HSMCLI, connectez-vous en tant qu'administrateur.
aws-cloudhsm >
login --username admin --role admin
Enter password: { "error_code": 0, "data": { "username": "admin", "role": "admin" } } -
Utilisez la Enregistrez une ancre de confiance avec Cloud HSM CLI commande pour enregistrer l'ancre de confiance. Pour plus d'informations, consultez l'exemple suivant ou utilisez la commande help cluster mtls register-trust-anchor.
Exemple — Enregistrez une ancre de confiance auprès AWS CloudHSM du cluster
L'exemple suivant montre comment utiliser la cluster mtls register-trust-anchor commande dans Cloud HSM CLI pour enregistrer une ancre de confiance sur leHSM. Pour utiliser cette commande, l'administrateur doit être connecté auHSM. Remplacez les valeurs suivantes par les vôtres :
aws-cloudhsm >
cluster mtls register-trust-anchor --path
</path/mtls_ca_root_1.crt>
{ "error_code": 0, "data": { "trust_anchor": { "certificate-reference": "0x01", "certificate": "
<PEM Encoded Certificate>
", "cluster-coverage": "full" } } }
Note
AWS CloudHSM prend en charge l'enregistrement des certificats intermédiaires en tant qu'ancre de confiance. Dans de tels cas, l'intégralité du fichier de chaîne de certificats PEM codé doit être enregistré sur leHSM, les certificats étant classés par ordre hiérarchique.
AWS CloudHSM prend en charge une chaîne de certificats de 6980 octets.
Après avoir enregistré avec succès l'ancre de confiance, vous pouvez exécuter la cluster mtls list-trust-anchors commande pour vérifier les ancres de confiance actuellement enregistrées, comme indiqué ci-dessous :
aws-cloudhsm >
cluster mtls list-trust-anchors
{ "error_code": 0, "data": { "trust_anchors": [ { "certificate-reference": "0x01", "certificate": "
<PEM Encoded Certificate>
", "cluster-coverage": "full" } ] } }
Note
Le nombre maximum d'ancres de confiance pouvant être enregistrées sur hsm2m.medium est de deux (2).
Étape 2. Activer m TLS pour AWS CloudHSM
Pour activer le m TLS for AWS CloudHSM, vous devez créer une clé privée et un certificat client signés par le certificat racine que nous avons généré dans Créer et enregistrer une ancre de confiance sur leHSM, puis utiliser l'un des outils de configuration de Client SDK 5 pour configurer le chemin de la clé privée et le chemin de la chaîne de certificats client.
Création d'une clé privée et d'une chaîne de certificats client
Exemple — Crée une clé privée avec Open SSL
Utilisez la commande suivante pour créer une clé de 4096 bitsRSA. Pour utiliser cet exemple, <ssl-client.key>
remplacez-le par le nom du fichier dans lequel vous souhaitez stocker la clé.
$
openssl genrsa -out
<ssl-client.key>
4096Generating RSA private key, 4096 bit long modulus .....................................+++ .+++ e is 65537 (0x10001)
Exemple — Génère une demande de signature de certificat (CSR) avec Open SSL
Utilisez la commande suivante pour générer une demande de signature de certificat (CSR) à partir de la clé privée que vous venez de créer. Lisez les instructions à l'écran et suivez les invites.
$
openssl req -new -key
<ssl-client.key>
-out<ssl-client.csr>
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []: Email Address []:
Exemple — Signez le CSR avec le certificat racine
Utilisez la commande suivante pour signer le CSR avec le certificat racine que nous avons créé et enregistré dans Create, enregistrer une ancre de confiance sur le HSM et créer un certificat client nomméssl-client.crt
. Le certificat est valide pendant 5 ans (1826 jours).
$
openssl x509 -req -days 1826 -in
<ssl-client.csr>
-CA<mtls_ca_root_1.crt>
-CAkey<mtls_ca_root_1.key>
-CAcreateserial -out<ssl-client.crt>
Exemple — Crée une chaîne de certificats clients
Utilisez la commande suivante pour combiner le certificat client et le certificat racine que nous avons créés et enregistrés dans Create, enregistrer une ancre de confiance sur le HSM et créer une chaîne de certificats clients nomméessl-client.pem
, qui sera utilisée pour la configuration à l'étape suivante.
$
cat
<ssl-client.crt>
<mtls_ca_root_1.crt>
><ssl-client.pem>
Note
Si vous avez enregistré des certificats intermédiaires dans Create et HSM que vous avez enregistré une ancre de confiance sur l'ancre de confiance, assurez-vous de combiner le certificat client avec l'ensemble de la chaîne de certificats pour créer une chaîne de certificats client.
Configurer m TLS pour le client SDK 5
Utilisez l'un des outils de configuration de Client SDK 5 pour activer la mutuelle TLS en fournissant le bon chemin de clé client et le bon chemin de chaîne de certificats client. Pour plus d'informations sur l'outil de configuration pour le client SDK 5, consultezAWS CloudHSM Outil de configuration du client SDK 5.
Étape 3. Définissez l'TLSapplication m pour AWS CloudHSM
Après la configuration avec l'un des outils de configuration du Client SDK 5, la connexion entre le client et le client AWS CloudHSM sera mutuelle TLS dans le cluster. Cependant, si vous supprimez le chemin de clé privée et le chemin de la chaîne de certificats client du fichier de configuration, la connexion TLS redeviendra normale. Vous pouvez utiliser Cloud HSM CLI pour définir l'application MTLS dans le cluster en effectuant les étapes suivantes :
-
Utilisez la commande suivante pour démarrer Cloud HSM CLI :
-
À l'aide de Cloud HSMCLI, connectez-vous en tant qu'administrateur.
aws-cloudhsm >
login --username admin --role admin
Enter password: { "error_code": 0, "data": { "username": "admin", "role": "admin" } }Note
1. Assurez-vous d'avoir configuré le Cloud HSM CLI et démarrez-le HSM CLI avec une TLS connexion m.
2. Vous devez être connecté en tant qu'utilisateur administrateur par défaut avec le nom d'utilisateur administrateur avant de définir mon TLS application.
-
Utilisez la Définissez le niveau TLS d'application m avec Cloud HSM CLI commande pour définir l'application. Pour plus d'informations, consultez l'exemple suivant ou utilisez la commande help cluster mtls set-enforcement.
Exemple — Définissez mon TLS application avec le AWS CloudHSM cluster
L'exemple suivant montre comment utiliser la cluster mtls set-enforcement commande dans Cloud HSM CLI pour définir l'TLSapplication m avec leHSM. Pour utiliser cette commande, l'administrateur dont le nom d'utilisateur est admin doit être connecté auHSM.
aws-cloudhsm >
cluster mtls set-enforcement --level cluster
{ "error_code": 0, "data": { "message": "Mtls enforcement level set to Cluster successfully" } }
Avertissement
Une fois que vous aurez imposé l'TLSutilisation de m dans le cluster, toutes les TLS connexions non m existantes seront supprimées et vous ne pourrez vous connecter au cluster qu'avec des TLS certificats m.