|
Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi. |
k3s secrets-encrypt
K3s prend en charge l’activation du chiffrement des secrets au repos. Pour plus d’informations, voir Chiffrement des Secrets.
Outil de Chiffrement des Secrets
|
Version Gate
Disponible à partir de v1.21.8+k3s1 |
K3s contient un outil CLI secrets-encrypt, qui permet un contrôle automatique sur les éléments suivants :
-
Désactivation/Activation du chiffrement des secrets
-
Ajout de nouvelles clés de chiffrement
-
Rotation et suppression des clés de chiffrement
-
Rechiffrement des secrets
|
Le non-respect de la procédure appropriée pour la rotation des clés de chiffrement peut laisser votre cluster définitivement corrompu. Procédez avec prudence. |
Rotation des Clés de Chiffrement
|
Version Gate
Disponible à partir des versions de septembre 2024 : v1.30.5+k3s1, v1.31.1+k3s1. |
-
Serveur unique
-
Haute disponibilité
Pour faire tourner les clés de chiffrement des secrets sur un cluster à serveur unique :
-
Démarrez le serveur K3s avec le drapeau
--secrets-encryptionDémarrer K3s sans chiffrement et l’activer ultérieurement n’est actuellement pas pris en charge.
-
Faire tourner les clés de chiffrement des secrets
k3s secrets-encrypt rotate-keys
-
Attendre la fin du rechiffrement. Surveiller les journaux du serveur, ou attendre :
$ k3s secrets-encrypt status Encryption Status: Enabled Current Rotation Stage: reencrypt_finished
Pour faire tourner les clés de chiffrement des secrets sur des configurations à haute disponibilité :
-
Démarrer les trois serveurs K3s avec le drapeau
--secrets-encryption. Pour des raisons de concision, les serveurs seront appelés S1, S2, S3.Démarrer K3s sans chiffrement et l’activer ultérieurement n’est actuellement pas pris en charge.
-
Faire tourner les clés de chiffrement des secrets sur S1
k3s secrets-encrypt rotate-keys -
Attendre la fin du rechiffrement. Surveiller les journaux du serveur, ou attendre :
$ k3s secrets-encrypt status Encryption Status: Enabled Current Rotation Stage: reencrypt_finishedK3s réencryptera environ 5 secrets par seconde. Les clusters avec un grand nombre de secrets peuvent prendre plusieurs minutes à réencrypter. Vous pouvez suivre les progrès dans les journaux du serveur.
-
Redémarrer K3s sur S1 avec les mêmes arguments. Si K3s est exécuté en tant que service :
# If using systemd systemctl restart k3s # If using openrc rc-service k3s restart -
Une fois S1 opérationnel, redémarrer K3s sur S2 et S3
Rotation des clés de chiffrement héritées
|
Nouvelle procédure
Si vous utilisez les versions K3s v1.30+, nous recommandons d’utiliser la Rotation des clés de chiffrement à la place. |
-
Serveur unique
-
Haute disponibilité
Pour faire tourner les clés de chiffrement des secrets sur un cluster à serveur unique :
-
Démarrez le serveur K3s avec le drapeau
--secrets-encryptionDémarrer K3s sans chiffrement et l’activer ultérieurement n’est actuellement pas pris en charge.
-
Préparer
k3s secrets-encrypt prepare -
Tuer et redémarrer le serveur K3s avec les mêmes arguments. Si K3s est exécuté en tant que service :
# If using systemd systemctl restart k3s # If using openrc rc-service k3s restart -
Faire tourner
k3s secrets-encrypt rotate -
Tuer et redémarrer le serveur K3s avec les mêmes arguments.
-
Réencrypter
K3s réencryptera environ 5 secrets par seconde.
Les clusters avec un grand nombre de secrets peuvent prendre plusieurs minutes à réencrypter.k3s secrets-encrypt reencrypt
Les étapes sont les mêmes pour les clusters de base de données intégrés et externes.
Pour faire tourner les clés de chiffrement des secrets sur des configurations à haute disponibilité :
-
Démarrez les trois serveurs K3s avec le drapeau
--secrets-encryption. Pour des raisons de concision, les serveurs seront appelés S1, S2, S3.-
Démarrer K3s sans chiffrement et l’activer ultérieurement n’est actuellement pas pris en charge.
-
Bien que cela ne soit pas obligatoire, il est recommandé de choisir un nœud serveur à partir duquel exécuter les commandes
secrets-encrypt.
-
-
Préparer sur S1
k3s secrets-encrypt prepare -
Tuer et redémarrer S1 avec les mêmes arguments. Si K3s est exécuté en tant que service :
# If using systemd systemctl restart k3s # If using openrc rc-service k3s restart -
Une fois S1 opérationnel, tuer et redémarrer S2 et S3
-
Faire tourner sur S1
k3s secrets-encrypt rotate -
Tuer et redémarrer S1 avec les mêmes arguments
-
Une fois S1 opérationnel, tuer et redémarrer S2 et S3
-
Réencrypter sur S1
K3s réencryptera environ 5 secrets par seconde.
Les clusters avec un grand nombre de secrets peuvent prendre plusieurs minutes à réencrypter.k3s secrets-encrypt reencrypt -
Tuer et redémarrer S1 avec les mêmes arguments
-
Une fois S1 opérationnel, tuer et redémarrer S2 et S3
Désactiver/Réactiver le chiffrement des secrets
-
Serveur unique
-
Haute disponibilité
Après avoir lancé un serveur avec le drapeau --secrets-encryption, le chiffrement des secrets peut être désactivé.
Pour désactiver le chiffrement des secrets sur un cluster à nœud unique :
-
Désactiver
k3s secrets-encrypt disable -
Tuer et redémarrer le serveur K3s avec les mêmes arguments. Si K3s est exécuté en tant que service :
# If using systemd systemctl restart k3s # If using openrc rc-service k3s restart -
Réencrypter avec des drapeaux
k3s secrets-encrypt reencrypt --force --skip
Pour réactiver le chiffrement des secrets sur un cluster à nœud unique :
-
Activer
k3s secrets-encrypt enable -
Tuer et redémarrer le serveur K3s avec les mêmes arguments.
-
Réencrypter avec des drapeaux
k3s secrets-encrypt reencrypt --force --skip
Après avoir lancé un cluster HA avec les drapeaux --secrets-encryption, le chiffrement des secrets peut être désactivé.
|
Bien que cela ne soit pas obligatoire, il est recommandé de choisir un nœud serveur à partir duquel exécuter les commandes |
Pour des raisons de concision, les trois serveurs utilisés dans ce guide seront appelés S1, S2, S3.
Pour désactiver le chiffrement des secrets sur un cluster HA :
-
Désactiver sur S1
k3s secrets-encrypt disable -
Tuer et redémarrer S1 avec les mêmes arguments. Si K3s est exécuté en tant que service :
# If using systemd systemctl restart k3s # If using openrc rc-service k3s restart -
Une fois S1 opérationnel, tuer et redémarrer S2 et S3
-
Réencrypter avec des drapeaux sur S1
k3s secrets-encrypt reencrypt --force --skip
Pour réactiver le chiffrement des secrets sur un cluster HA :
-
Activer sur S1
k3s secrets-encrypt enable -
Tuer et redémarrer S1 avec les mêmes arguments
-
Une fois S1 opérationnel, tuer et redémarrer S2 et S3
-
Réencrypter avec des drapeaux sur S1
k3s secrets-encrypt reencrypt --force --skip
État du chiffrement des secrets
L’outil secrets-encrypt comprend une commande status qui affiche des informations sur l’état actuel du chiffrement des secrets sur le nœud.
Un exemple de la commande sur un nœud à serveur unique :
$ k3s secrets-encrypt status
Encryption Status: Enabled
Current Rotation Stage: start
Server Encryption Hashes: All hashes match
Active Key Type Name
------ -------- ----
* AES-CBC aescbckey
Un autre exemple sur un cluster HA, après avoir fait tourner les clés, mais avant de redémarrer les serveurs :
$ k3s secrets-encrypt status
Encryption Status: Enabled
Current Rotation Stage: rotate
Server Encryption Hashes: hash does not match between node-1 and node-2
Active Key Type Name
------ -------- ----
* AES-CBC aescbckey-2021-12-10T22:54:38Z
AES-CBC aescbckey
Les détails de chaque section sont les suivants :
-
État du chiffrement : Affiche si le chiffrement des secrets est désactivé ou activé sur le nœud
-
Étape de rotation actuelle : Indique l’étape de rotation actuelle sur le nœud.
Les étapes sont :start,prepare,rotate,reencrypt_request,reencrypt_active,reencrypt_finished -
Hachages de chiffrement des serveurs : Utile pour les clusters HA, cela indique si tous les serveurs sont au même stade avec leurs fichiers locaux. Cela peut être utilisé pour identifier si un redémarrage des serveurs est nécessaire avant de passer à l’étape suivante. Dans l’exemple HA ci-dessus, le nœud-1 et le nœud-2 ont des hachages différents, indiquant qu’ils n’ont actuellement pas la même configuration de chiffrement. Le redémarrage des serveurs synchronisera leur configuration.
-
Table des clés : Résume les informations sur les clés de chiffrement des secrets trouvées sur le nœud.
-
Actif : Le "*" indique lesquelles, le cas échéant, des clés sont actuellement utilisées pour le chiffrement des secrets. Une clé active est utilisée par Kubernetes pour chiffrer tous les nouveaux secrets.
-
Type de clé : Toutes les clés utilisant cet outil sont de type
AES-CBC. Voir plus d’informations ici. -
Nom : Nom de la clé de chiffrement.
-