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.
Configuration à IPsec l'aide de l'authentification par certificat
Les rubriques suivantes fournissent des instructions pour configurer le IPsec chiffrement à l'aide de l'authentification par certificat sur un système de ONTAP fichiers FSx for et un client exécutant LibreswanIPsec. Cette solution utilise AWS Certificate Manager et AWS Private Certificate Authority pour créer une autorité de certification privée et pour générer les certificats.
Les étapes de haut niveau pour configurer le IPsec chiffrement à l'aide de l'authentification par certificat activée FSx pour les systèmes de ONTAP fichiers et les clients connectés sont les suivantes :
Mettez en place une autorité de certification chargée de délivrer les certificats.
Générez et exportez des certificats CA pour le système de fichiers et le client.
Installez le certificat et configurez-le IPsec sur l'instance cliente.
Installez le certificat et configurez-le IPsec sur votre système de fichiers.
Définissez la base de données des politiques de sécurité (SPD).
Configurez IPsec pour un accès client multiple.
Création et installation de certificats CA
Pour l'authentification par certificat, vous devez générer et installer des certificats à partir d'une autorité de certification sur votre système de ONTAP fichiers FSx for et des clients qui accèderont aux données de votre système de fichiers. L'exemple suivant permet AWS Private Certificate Authority de configurer une autorité de certification privée et de générer les certificats à installer sur le système de fichiers et le client. À l'aide de AWS Private Certificate Authority, vous pouvez créer une hiérarchie entièrement AWS hébergée d'autorités de certification racines et subordonnées (CAs) à usage interne par votre organisation. Ce processus comporte cinq étapes :
Créez une autorité de certification (CA) privée à l'aide de AWS Private CA
Émettre et installer le certificat racine sur l'autorité de certification privée
Demandez un certificat privé AWS Certificate Manager pour votre système de fichiers et vos clients
Exportez le certificat pour le système de fichiers et les clients.
Pour plus d'informations, consultez la section Administration de Private CA dans le Guide de AWS Private Certificate Authority l'utilisateur.
Pour créer l'autorité de certification privée racine
Lorsque vous créez une autorité de certification, vous devez spécifier la configuration de l'autorité de certification dans un fichier que vous fournissez. La commande suivante utilise l'éditeur de texte Nano pour créer le
ca_config.txt
fichier, qui spécifie les informations suivantes :Le nom de l'algorithme
L'algorithme de signature utilisé par l'autorité de certification pour signer
Les informations sur l'objet X.500
$ >
nano ca_config.txt
L'éditeur de texte apparaît.
Modifiez le fichier contenant les spécifications de votre autorité de certification.
{ "KeyAlgorithm":"RSA_2048", "SigningAlgorithm":"SHA256WITHRSA", "Subject":{ "Country":"US", "Organization":"Example Corp", "OrganizationalUnit":"Sales", "State":"WA", "Locality":"Seattle", "CommonName":"*.ec2.internal" } }
Enregistrez et fermez le fichier en quittant l'éditeur de texte. Pour plus d'informations, consultez la section Procédure de création d'une autorité de certification dans le guide de AWS Private Certificate Authority l'utilisateur.
Utilisez la create-certificate-authority AWS Private CA CLIcommande pour créer une autorité de certification privée.
~/home >
aws acm-pca create-certificate-authority \ --certificate-authority-configuration file://ca_config.txt \ --certificate-authority-type "ROOT" \ --idempotency-token 01234567 --regionaws-region
En cas de succès, cette commande affiche le nom de ressource Amazon (ARN) de l'autorité de certification.
{ "CertificateAuthorityArn": "arn:aws:acm-pca:
aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012
" }
Pour créer et installer un certificat pour votre autorité de certification racine privée (AWS CLI)
Générez une demande de signature de certificat (CSR) à l'aide de la
get-certificate-authority-csr
AWS CLIcommande.$
aws acm-pca get-certificate-authority-csr \ --certificate-authority-arn arn:aws:acm-pca:
aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --output text \ --endpoint https://acm-pca.aws-region
.amazonaws.com \ --region eu-west-1 > ca.csrLe fichier obtenu
ca.csr
, un PEM fichier codé au format base64, a l'aspect suivant.-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMC VVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6 b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAd BgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcN MTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYD VQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25z b2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFt YXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ 21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9T rDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpE Ibb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4 nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0Fkb FFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTb NYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE= -----END CERTIFICATE-----
Pour plus d'informations, consultez la section Installation d'un certificat CA racine dans le guide de AWS Private Certificate Authority l'utilisateur.
Utilisez la
issue-certificate
AWS CLI commande pour émettre et installer le certificat racine sur votre autorité de certification privée.$
aws acm-pca issue-certificate \ --certificate-authority-arn arn:aws:acm-pca:
aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --csr file://ca.csr \ --signing-algorithm SHA256WITHRSA \ --template-arn arn:aws:acm-pca:::template/RootCACertificate/V1 \ --validity Value=3650,Type=DAYS --regionaws-region
-
Téléchargez le certificat racine à l'aide de la
get-certificate
AWS CLI commande.$
aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate-arn arn:aws:acm-pca:aws-region
:486768734100:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/abcdef0123456789abcdef0123456789 \ --output text --regionaws-region
> rootCA.pem Installez le certificat racine sur votre autorité de certification privée à l'aide de la
import-certificate-authority-certificate
AWS CLI commande.$
aws acm-pca import-certificate-authority-certificate \ --certificate-authority-arn arn:aws:acm-pca:
aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate file://rootCA.pem --regionaws-region
Génération et exportation du système de fichiers et du certificat client
Utilisez la
request-certificate
AWS CLI commande pour demander un AWS Certificate Manager certificat à utiliser sur votre système de fichiers et vos clients.$
aws acm request-certificate \ --domain-name *.ec2.internal \ --idempotency-token 12345 \ --region
aws-region
\ --certificate-authority-arn arn:aws:acm-pca:aws-region
:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012Si la demande aboutit, ARN le certificat émis est renvoyé.
-
Pour des raisons de sécurité, vous devez attribuer un mot de passe à la clé privée lors de son exportation. Créez un mot de passe et stockez-le dans un fichier nommé
passphrase.txt
-
Utilisez la
export-certificate
AWS CLI commande pour exporter le certificat privé émis précédemment. Le fichier exporté contient le certificat, la chaîne de certificats et la RSA clé privée cryptée de 2048 bits associée à la clé publique intégrée au certificat. Pour des raisons de sécurité, vous devez attribuer un mot de passe à la clé privée lors de son exportation. L'exemple suivant concerne une EC2 instance Linux.$
aws acm export-certificate \ --certificate-arn arn:aws:acm:
aws-region
:111122223333:certificate/12345678-1234-1234-1234-123456789012 \ --passphrase $(cat passphrase.txt | base64)) --regionaws-region
> exported_cert.json Utilisez les
jq
commandes suivantes pour extraire la clé privée et le certificat de la JSON réponse.$
cat exported_cert.json | jq -r .PrivateKey > prv.key cat exported_cert.json | jq -r .Certificate > cert.pem openssl rsa -in prv.key -passin pass:$passphrase -out decrypted.key
-
Utilisez la
openssl
commande suivante pour déchiffrer la clé privée de la JSON réponse. Après avoir saisi la commande, vous êtes invité à saisir le mot de passe.$
openssl rsa -in prv.key -passin pass:$passphrase -out decrypted.key
Installation et configuration de Libreswan IPsec sur un client Amazon Linux 2
Les sections suivantes fournissent des instructions pour installer et configurer Libreswan IPsec sur une EC2 instance Amazon exécutant Amazon Linux 2.
Pour installer et configurer Libreswan
Connectez-vous à votre EC2 instance à l'aide deSSH. Pour obtenir des instructions spécifiques sur la manière de procéder, consultez Connect to your Linux instance using an SSH client dans le manuel Amazon Elastic Compute Cloud User Guide for Linux Instances.
Exécutez la commande suivante pour installer
libreswan
:$
sudo yum install libreswan
(Facultatif) IPsec Lors d'une vérification ultérieure, ces propriétés peuvent être signalées sans ces paramètres. Nous vous suggérons de tester d'abord votre configuration sans ces paramètres. En cas de problème de connexion, revenez à cette étape et apportez les modifications suivantes.
Une fois l'installation terminée, utilisez votre éditeur de texte préféré pour ajouter les entrées suivantes au
/etc/sysctl.conf
fichier.net.ipv4.ip_forward=1 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.lo.accept_redirects = 0 net.ipv4.conf.lo.send_redirects = 0 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.eth0.rp_filter = 0
Enregistrez les modifications et quittez l'éditeur de texte.
Appliquez les modifications.
$
sudo sysctl -p
Vérifiez la IPsec configuration.
$
sudo ipsec verify
Vérifiez que la version que
Libreswan
vous avez installée est en cours d'exécution.Initialisez la IPsec NSS base de données.
$
sudo ipsec checknss
Pour installer le certificat sur le client
Copiez le certificat que vous avez généré pour le client dans le répertoire de travail de l'EC2instance. Vous
Exportez le certificat généré précédemment dans un format compatible avec
libreswan
.$
openssl pkcs12 -export -in cert.pem -inkey decrypted.key \ -certfile rootCA.pem -out certkey.p12 -name fsx
Importez la clé reformatée en fournissant le mot de passe lorsque vous y êtes invité.
$
sudo ipsec import certkey.p12
Créez un fichier IPsec de configuration à l'aide de l'éditeur de texte préféré.
$
sudo cat /etc/ipsec.d/nfs.conf
Ajoutez les entrées suivantes au fichier de configuration :
conn fsxn authby=rsasig left=172.31.77.6 right=198.19.254.13 auto=start type=transport ikev2=insist keyexchange=ike ike=aes256-sha2_384;dh20 esp=aes_gcm_c256 leftcert=fsx leftrsasigkey=%cert leftid=%fromcert rightid=%fromcert rightrsasigkey=%cert
Vous démarrerez IPsec sur le client après l'avoir configuré IPsec sur votre système de fichiers.
Configuration IPsec sur votre système de fichiers
Cette section fournit des instructions sur l'installation du certificat sur votre système de ONTAP fichiers FSx for et sur sa configurationIPsec.
Pour installer le certificat sur votre système de fichiers
Copiez les fichiers du certificat racine ()
rootCA.pem)
, du certificat client (cert.pem
) et de la clé déchiffrée (decrypted.key
) dans votre système de fichiers. Vous devez connaître le mot de passe du certificat.Pour y accéder NetApp ONTAPCLI, établissez une SSH session sur le port de gestion du système de NetApp ONTAP fichiers Amazon FSx for en exécutant la commande suivante. Remplacez
par l'adresse IP du port de gestion du système de fichiers.management_endpoint_ip
[~]$
ssh fsxadmin@
management_endpoint_ip
Pour de plus amples informations, veuillez consulter Gestion des systèmes de fichiers à l'aide de la ONTAP CLI.
catUtilisez-le sur un client (et non sur votre système de fichiers) pour répertorier le
rootCA.pem
contenu desdecrypted.key
fichierscert.pem
et ainsi copier le résultat de chaque fichier et le coller lorsque vous y êtes invité dans les étapes suivantes.$ >
cat cert.pem
Copiez le contenu du certificat.
Vous devez installer tous les certificats CA utilisés lors de l'authentification mutuelle, y compris côté client et ONTAP côté client, dans la gestion des certificatsCAs, sauf s'ils sont déjà installés (comme c'est le cas d'une autorité de ONTAP certification racine ONTAP autosignée).
Utilisez la
security certificate install
NetApp CLI commande suivante pour installer le certificat client :FSxID123:: >
security certificate install -vserver
dr
-type client -cert-name ipsec-client-certPlease enter Certificate: Press <Enter> when done
Collez le contenu du
cert.pem
fichier que vous avez copié précédemment et appuyez sur Entrée.Please enter Private Key: Press <Enter> when done
Collez le contenu du
decrypted.key
fichier, puis appuyez sur Entrée.Do you want to continue entering root and/or intermediate certificates {y|n}:
Entrez
n
pour terminer la saisie du certificat client.Créez et installez un certificat destiné à être utilisé parSVM. L'autorité de certification émettrice de ce certificat doit déjà être installée ONTAP et ajoutée. IPsec
Utilisez la commande suivante pour installer le certificat racine.
FSxID123:: >
security certificate install -vserver
dr
-type server-ca -cert-name ipsec-ca-certPlease enter Certificate: Press <Enter> when done
Collez le contenu du
rootCA.pem
fichier, puis appuyez sur Entrée.Pour vous assurer que l'autorité de certification installée se trouve dans le chemin de recherche de l'IPsecautorité de certification lors de l'authentification, ajoutez la gestion des ONTAP certificats au IPsec module CAs à l'aide de la commande « security ipsec ca-certificate add ».
Entrez la commande suivante pour ajouter le certificat racine.
FSxID123:: >
security ipsec ca-certificate add -vserver
dr
-ca-certs ipsec-ca-certEntrez la commande suivante pour créer la IPsec politique requise dans la base de données des politiques de sécurité (SPD).
security ipsec policy create -vserver
dr
-namepolicy-name
-local-ip-subnets198.19.254.13/32
-remote-ip-subnets172.31.0.0/16
-auth-method PKI -action ESP_TRA -cipher-suite SUITEB_GCM256 -cert-name ipsec-client-cert -local-identity "CN=*.ec2.internal" -remote-identity "CN=*.ec2.internal"Utilisez la commande suivante pour afficher la IPsec politique du système de fichiers à confirmer.
FSxID123:: >
security ipsec policy show -vserver
dr
-instanceVserver: dr Policy Name: promise Local IP Subnets: 198.19.254.13/32 Remote IP Subnets: 172.31.0.0/16 Local Ports: 0-0 Remote Ports: 0-0 Protocols: any Action: ESP_TRA Cipher Suite: SUITEB_GCM256 IKE Security Association Lifetime: 86400 IPsec Security Association Lifetime: 28800 IPsec Security Association Lifetime (bytes): 0 Is Policy Enabled: true Local Identity: CN=*.ec2.internal Remote Identity: CN=*.ec2.internal Authentication Method: PKI Certificate for Local Identity: ipsec-client-cert
Commencez par IPsec le client
Maintenant IPsec configuré à la fois sur le système de ONTAP fichiers FSx for et sur le client, vous pouvez commencer IPsec sur le client.
Connectez-vous à votre système client à l'aide deSSH.
DémarrezIPsec.
$
sudo ipsec start
Vérifiez le statut deIPsec.
$
sudo ipsec status
Montez un volume sur votre système de fichiers.
$
sudo mount -t nfs
198.19.254.13:/benchmark
/home/ec2-user/acm/dr
Vérifiez la IPsec configuration en affichant la connexion cryptée sur votre système de ONTAP fichiers FSx for.
FSxID123:: >
security ipsec show-ikesa -node FsxId
123
FsxId08ac16c7ec2781a58::> security ipsec show-ikesa -node FsxId08ac16c7ec2781a58-01 Policy Local Remote Vserver Name Address Address Initator-SPI State ----------- ------ --------------- --------------- ---------------- ----------- dr
policy-name
198.19.254.13 172.31.77.6 551c55de57fe8976 ESTABLISHED fsxpolicy-name
198.19.254.38 172.31.65.193 4fd3f22c993e60c5 ESTABLISHED 2 entries were displayed.
Configuration IPsec pour plusieurs clients
Lorsqu'un petit nombre de clients ont besoin d'un effet de levierIPsec, il suffit d'utiliser une seule SPD entrée pour chaque client. Toutefois, lorsque des centaines, voire des milliers de clients ont besoin d'en tirer partiIPsec, nous vous recommandons d'utiliser une configuration client IPsec multiple.
FSxpour prendre ONTAP en charge la connexion de plusieurs clients sur de nombreux réseaux à une seule adresse SVM IP lorsque IPsec cette option est activée. Pour ce faire, vous pouvez utiliser la subnet
configuration ou la Allow all clients
configuration, qui sont expliquées dans les procédures suivantes :
Pour effectuer une configuration IPsec pour plusieurs clients à l'aide d'une configuration de sous-réseau
Pour permettre à tous les clients d'un sous-réseau particulier (192.168.134.0/24 par exemple) de se connecter à une seule adresse SVM IP en utilisant une seule entrée de SPD politique, vous devez la spécifier sous forme de sous-réseau. remote-ip-subnets
En outre, vous devez spécifier le remote-identity
champ avec l'identité correcte côté client.
Important
Lorsque vous utilisez l'authentification par certificat, chaque client peut utiliser son propre certificat unique ou un certificat partagé pour s'authentifier. FSxpour ONTAP IPsec vérifier la validité du certificat sur la base du certificat CAs installé sur son magasin de confiance local. FSxcar prend ONTAP également en charge la vérification de la liste de révocation des certificats (CRL).
Pour y accéder NetApp ONTAPCLI, établissez une SSH session sur le port de gestion du système de NetApp ONTAP fichiers Amazon FSx for en exécutant la commande suivante. Remplacez
par l'adresse IP du port de gestion du système de fichiers.management_endpoint_ip
[~]$
ssh fsxadmin@
management_endpoint_ip
Pour de plus amples informations, veuillez consulter Gestion des systèmes de fichiers à l'aide de la ONTAP CLI.
Utilisez la
security ipsec policy create
NetApp ONTAP CLI commande comme suit, en remplaçantsample
valeurs avec vos valeurs spécifiques.FsxId123456::>
security ipsec policy create -vserver
svm_name
-namepolicy_name
\ -local-ip-subnets192.168.134.34/32
-remote-ip-subnets192.168.134.0/24
\ -local-ports2049
-protocolstcp
-auth-method PSK \ -cert-namemy_nfs_server_cert
-local-identityontap_side_identity
\ -remote-identityclient_side_identity
Pour configurer IPsec pour plusieurs clients à l'aide d'une configuration Autoriser tous les clients
Pour permettre à n'importe quel client, quelle que soit son adresse IP source, de se connecter à l'adresse IP SVM IPsec activée, utilisez le caractère générique 0.0.0.0/0
lorsque vous spécifiez le remote-ip-subnets
champ.
En outre, vous devez spécifier le remote-identity
champ avec l'identité correcte côté client. Pour l'authentification par certificat, vous pouvez entrerANYTHING
.
En outre, lorsque le joker 0.0.0.0/0 est utilisé, vous devez configurer un numéro de port local ou distant spécifique à utiliser. Par exemple, le NFS port 2049.
Pour y accéder NetApp ONTAPCLI, établissez une SSH session sur le port de gestion du système de NetApp ONTAP fichiers Amazon FSx for en exécutant la commande suivante. Remplacez
par l'adresse IP du port de gestion du système de fichiers.management_endpoint_ip
[~]$
ssh fsxadmin@
management_endpoint_ip
Pour de plus amples informations, veuillez consulter Gestion des systèmes de fichiers à l'aide de la ONTAP CLI.
Utilisez la
security ipsec policy create
NetApp ONTAP CLI commande comme suit, en remplaçantsample
valeurs avec vos valeurs spécifiques.FsxId123456::>
security ipsec policy create -vserver
svm_name
-namepolicy_name
\ -local-ip-subnets192.168.134.34/32
-remote-ip-subnets 0.0.0.0/0 \ -local-ports2049
-protocolstcp
-auth-method PSK \ -cert-namemy_nfs_server_cert
-local-identityontap_side_identity
\ -local-ports2049
-remote-identityclient_side_identity