|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Configuración de cifrado de secretos
K3s admite la habilitación del cifrado de secretos en reposo. Al iniciar el servidor por primera vez, pasar la bandera --secrets-encryption hará lo siguiente automáticamente:
-
Generar una clave AES-CBC
-
Generar un archivo de configuración de cifrado con la clave generada
-
Pasar la configuración a la KubeAPI como configuración-proveedor-de-cifrado
|
El cifrado de secretos no se puede habilitar en un servidor existente sin reiniciarlo. |
Elegir Proveedor de Cifrado
|
Puerta de Versión
Disponible a partir de las versiones de abril de 2025: v1.30.12+k3s1, v1.31.8+k3s1, v1.32.4+k3s1, v1.33.0+k3s1. |
Usando la bandera --secrets-encryption-provider, puedes elegir entre los siguientes proveedores de cifrado compatibles con K3s:
-
aescbc: AES-CBC con relleno PKCS#7. Este es el proveedor por defecto. -
secretbox: XSalsa20 y Poly1305
Migrando Proveedores
Puedes migrar del proveedor aescbc al proveedor secretbox siguiendo estos pasos:
-
Asegúrate de que el proveedor
secretboxsea compatible con tu versión de K3s. -
Actualiza/Añade la bandera
secrets-encryption-provideren tu archivo de configuración de K3s asecretbox. -
Gira las claves de cifrado, siguiendo la sección Rotación de Claves de Cifrado a continuación.
Archivo de configuración de cifrado generado
Cuando inicies el servidor con --secrets-encryption, K3s generará un archivo de configuración de cifrado en /var/lib/rancher/k3s/server/cred/encryption-config.json.
A continuación se muestra un ejemplo del archivo de configuración de cifrado generado con el proveedor aescbc por defecto:
{
"kind": "EncryptionConfiguration",
"apiVersion": "apiserver.config.k8s.io/v1",
"resources": [
{
"resources": [
"secrets"
],
"providers": [
{
"aescbc": {
"keys": [
{
"name": "aescbckey",
"secret": "xxxxxxxxxxxxxxxxxxx"
}
]
}
},
{
"identity": {}
}
]
}
]
}
Herramienta de Cifrado de Secretos
K3s contiene una herramienta utilitaria secrets-encrypt, que permite el control automático sobre lo siguiente:
-
Desactivar/Activar el cifrado de secretos
-
Añadir nuevas claves de cifrado
-
Rotar y eliminar claves de cifrado
-
Reencriptar secretos
Para obtener más información, consulta la documentación del comando k3s secrets-encrypt.