Mise en place d'un chiffrement en transit pour les partages de fichiers zonaux
Configurez des connexions de montage chiffrées pour les partages de fichiers zonaux à l'aide du protocole de sécurité IPsec et de certificats « X.509 » afin d'assurer un chiffrement sécurisé des données de bout en bout.
IPsec est un groupe de protocoles qui, ensemble, établissent des connexions cryptées entre les appareils. Il permet de sécuriser les données envoyées sur les réseaux publics. IPsec Crypte les paquets IP et authentifie la source d'où proviennent les paquets. Pour configurer IPsec sur votre instance de serveur virtuel, vous pouvez utiliser strongSwan, qui est une solution VPN IPsec open source. Pour plus d'informations sur le fonctionnement de strongSwan, voir également Introduction à strongSwan et au protocole IPsec.
La connexion IPsec nécessite un certificat X.509 pour l'authentification. X.509 est un format standard international pour les certificats de clé publique, des documents numériques qui associent de manière sécurisée des paires de clés cryptographiques à des identités telles que des sites web, des individus ou des organisations. Le service de métadonnées est utilisé pour créer les certificats.
Une demande de signature de certificat (CSR) est un bloc de textes codés qui est transmis à une autorité de certification (CA) lorsque les utilisateurs demandent un certificat. La CSR est créée sur le serveur où le certificat doit être installé. La RSE comprend des informations telles que le nom de domaine, le nom de l'organisation, la localité et le pays. La demande contient également la clé publique, qui est associée au certificat généré, et la clé privée. L'autorité de certification n'utilise que la clé publique lors de la création du certificat. La clé privée doit être sauvegardée et gardée secrète. La clé privée fait partie de la paire de clés avec la clé publique, et le certificat ne fonctionne pas si la clé privée est perdue.
Lorsque vous utilisez des connexions IPsec pour monter des partages de fichiers zonaux, des interruptions temporaires du montage peuvent se produire lors d'opérations de maintenance ou en cas de défaillance d'un nœud. Dans de rares cas, les montages configurés avec IPsec peuvent subir des interruptions de service pouvant aller jusqu'à 3 minutes. Pour plus d'informations, consultez la section « Risque de perturbation du montage des partages de fichiers zonaux configurés avec IPsec pendant la maintenance ».
Avant de commencer à configurer le chiffrement en transit avec IPsec
Pour utiliser cette fonction, les conditions suivantes doivent être remplies :
- Le partage de fichiers doit être basé sur le profil
dp2et être configuré avec le mode d'accès Groupe de sécurité. - La cible de montage doit être créée avec une interface réseau virtuelle. L'instance de serveur virtuel et la cible de montage doivent être membres du même groupe de sécurité. Pour plus d'informations, voir Création de partages de fichiers et de cibles de montage.
- Le cryptage des données en transit doit être activé. Dans la console, vous pouvez activer le chiffrement en transit lorsque vous créez la cible de montage. La propriété API
transit_encryptionaccepte la valeuripsecpour activer la fonctionnalité. - Le service de métadonnées doit être activé sur l'hôte de calcul. Pour plus d'informations, voir Service de métadonnées sur les instances de serveurs virtuels et Service de métadonnées sur les serveurs nus.
Le service de fichiers « IBM Cloud® » fournit un utilitaire « Mount Helper » permettant d'automatiser les tâches suivantes, qui sont exécutées sur l'hôte de calcul.
Si vous souhaitez connecter un partage de fichiers à des instances s'exécutant dans différents VPC au sein d'une même zone, vous pouvez créer plusieurs cibles de montage. Vous pouvez créer une cible de montage pour chaque VPC.
Obtention du certificat d'identité de l'instance
Obtenir les certificats X.509 nécessaires à l'authentification. Les mêmes certificats ne peuvent pas être utilisés dans plusieurs régions.
-
La commande suivante génère une demande de signature de certificat (CSR) et une paire de clés RSA en utilisant openssl.
openssl req -sha256 -newkey rsa:4096 -subj '/C=US' -out ./sslcert.csr -keyout file.key -nodesLorsque vous exécutez la commande, remplacez le code pays
USpar votre code pays à deux chiffres dans'/C=US'.OpenSSL est une suite d'outils en ligne de commande open source qui vous permet de gérer les certificats d' X.509, les demandes de signature de certificat (CSR) et les clés cryptographiques. Pour plus d'informations, consultez la documentation de « OpenSSL ».
Si vous utilisez un autre logiciel pour créer le RSC, il se peut que vous soyez invité à saisir des informations sur votre lieu de résidence. Vos informations de localisation peuvent inclure le code du pays (C), l'état (ST), la localité (L), le nom de votre organisation (O) et l'unité d'organisation (OU). Chacun de ces attributs de dénomination peut être utilisé. Tout autre attribut de dénomination, tel que le nom commun, est rejeté. Les CSR dont le nom commun est spécifié sont rejetées car, lorsque vous faites la demande, le système applique automatiquement des valeurs d'ID d'instance au nom commun de l'objet pour les certificats d'identité d'instance. Les CSR avec des extensions sont également rejetés.
-
Formatez le csr avant d'effectuer un appel API au service de métadonnées à l'aide de la commande suivante.
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' sslcert.csr -
Ensuite, utilisez le service de métadonnées sur l'instance de serveur virtuel ou le serveur bare metal pour créer un certificat client.
- Faites une demande
PUT /instance_identity/v1/token(instance de serveur virtuel) ouPUT /identity/v1/tokens(serveur métallique nu) pour obtenir un jeton du service d'identité VPC qui sera utilisé pour les appels suivants. Pour plus d'informations, consultez les rubriques suivantes : - Utilisez le jeton d'identité pour créer un certificat d'identité. Faites une demande
POST /instance_identity/v1/certificatespour une instance de serveur virtuel ou une demandePOST /identity/v1/certificatespour un serveur nu. Spécifiez le jeton d'identité dans l'en-tête HTTP Authorization, ainsi qu'une demande de signature de certificat (propriétécsr) et une durée de validité (propriétéexpires_in). L'appel renvoie un nouveau certificat client et une chaîne de certificats intermédiaires qui permettent au client d'accéder aux partages de fichiers en utilisant le chiffrement IPsec en transit. Pour plus d'informations, consultez les rubriques suivantes : - Copiez la réponse de l'API, y compris les lignes
-----BEGIN CERTIFICATE-----et-----END CERTIFICATE-----, et enregistrez-la dans un fichier portant un nom reconnaissable, tel queca-cert.pem. Assurez-vous que le fichier que vous créez porte l'extension.pem.
- Faites une demande
-
Copiez le certificat d'identité de l'instance dans le répertoire
/etc/ipsec.d/cacerts.sudo cp /tmp/ca-cert.pem /etc/ipsec.d/cacerts
Configuration de l'hôte et montage du partage
-
Installer et configurer le client strongSwan. Vous devez configurer le mode de transport IPsec pour l'adresse cible de montage.
-
Veillez à installer les plug-ins requis (
libcharon-extra-plugins) pour l'authentification et mettez à jour les fichiers de configuration en indiquant l'emplacement du certificat d'identité de l'instance. -
Établir une connexion sécurisée en démarrant le client strongSwan.
-
Montez votre partage de fichiers.