

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Cifrar automáticamente los volúmenes de Amazon EBS nuevos y existentes
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes"></a>

*Tony DeMarco y Josh Joy, Amazon Web Services*

## Resumen
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-summary"></a>

El cifrado de volúmenes de Amazon Elastic Block Store (Amazon EBS) es importante para la estrategia de protección de datos de una organización. Es un paso importante para establecer un entorno bien diseñado. Aunque no hay forma directa de cifrar un volumen o una instantánea existente sin cifrar, puede cifrarlos mediante la creación de un volumen o una instantánea. Para obtener más información, consulte [Cifrar los recursos de EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-parameters) en la documentación de Amazon EC2 . Este patrón proporciona controles preventivos y de detección para cifrar los volúmenes de EBS, tanto nuevos como existentes. En este patrón, configura los ajustes de la cuenta, crea procesos de corrección automatizados e implementa controles de acceso.

## Requisitos previos y limitaciones
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-prereqs"></a>

**Requisitos previos **
+ Una cuenta de Amazon Web Services (AWS) activa
+ [Interfaz de la línea de comandos de AWS (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) instalada y configurada en macOS, Linux o Windows.
+ [jq](https://stedolan.github.io/jq/download/) instalado y configurado en macOS, Linux o Windows.
+ Los permisos de AWS Identity and Access Management (IAM) se proporcionan para tener acceso de lectura y escritura a AWS, CloudFormation Amazon Elastic Compute Cloud (Amazon EC2), AWS Systems Manager, AWS Config y AWS Key Management Service (AWS KMS)
+ AWS Organizations está configurado con todas las características habilitadas, un requisito para las políticas de control de servicios.
+ AWS Config está habilitado en las cuentas de destino.

**Limitaciones**
+ En su cuenta de AWS de destino, no debe haber reglas de AWS Config denominadas **encrypted-volumes**. Esta solución implementa una regla con este nombre. Las reglas preexistentes con este nombre pueden provocar un error en la implementación y generar cargos innecesarios relacionados con el procesamiento de la misma regla más de una vez.
+ Esta solución cifra todos los volúmenes de EBS con la misma clave de AWS KMS.
+ Si habilita el cifrado de los volúmenes de EBS de la cuenta, esta configuración es específica de la región. Si lo habilita para una región de AWS, puede deshabilitarlo para volúmenes o instantáneas individuales en esa región. Para obtener más información, consulta [Cifrado por defecto](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) en la EC2 documentación de Amazon.
+ Cuando corrija los volúmenes de EBS no cifrados existentes, asegúrese de que la EC2 instancia no esté en uso. Esta automatización cierra la instancia para separar el volumen no cifrado y adjuntar el cifrado. Se produce un tiempo de inactividad mientras se lleva a cabo la corrección. Si se trata de una parte fundamental de la infraestructura para su organización, asegúrese de contar con configuraciones [manuales](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/scenarios-enis.html#create-a-low-budget-high-availability-solution) o [automáticas](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) de alta disponibilidad para no afectar la disponibilidad de las aplicaciones que se estén ejecutando en la instancia. Le recomendamos que corrija los recursos críticos solo durante los períodos de mantenimiento estándar.

## Arquitectura
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-architecture"></a>

**Flujo de trabajo de automatización**

![\[Diagrama de arquitectura de alto nivel donde se muestra el proceso y los servicios de automatización\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/484fd5fe-e10a-41f6-aafe-260ea824883b/images/483f551c-ca1d-4c1e-b3c7-989df7d3b059.png)


1. AWS Config detecta un volumen de EBS sin cifrar.

1. Un administrador usa AWS Config para enviar un comando de corrección a Systems Manager.

1. La automatización de Systems Manager toma una instantánea del volumen de EBS no cifrado.

1. La automatización de Systems Manager utiliza AWS KMS para crear una copia cifrada de la instantánea.

1. La automatización de Systems Manager hace lo siguiente:

   1. Detiene la EC2 instancia afectada si está en ejecución

   1. Adjunta la nueva copia cifrada del volumen a la instancia EC2 

   1. Devuelve la EC2 instancia a su estado original

## Tools (Herramientas)
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-tools"></a>

**Servicios de AWS**
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html): la interfaz de línea de comandos de AWS (AWS CLI) proporciona acceso directo a las interfaces públicas de programación de aplicaciones APIs () de los servicios de AWS. Puede explorar las capacidades de un servicio con la CLI de AWS y desarrollar scripts de shell para administrar los recursos. Además de los comandos equivalentes de la API de bajo nivel, varios servicios de AWS ofrecen personalizaciones para la CLI de AWS. Las personalizaciones pueden incluir comandos de un nivel superior que simplifican el uso de un servicio con una API compleja.
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html): AWS CloudFormation es un servicio que le ayuda a modelar y configurar sus recursos de AWS. Crea una plantilla que describe todos los recursos de AWS que desea (como las EC2 instancias de Amazon) y CloudFormation aprovisiona y configura esos recursos por usted.
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html): AWS Config proporciona una visión detallada de la configuración de los recursos de AWS de su cuenta de AWS. Esto incluye cómo se relacionan los recursos entre sí y cómo se han configurado en el pasado, para que pueda ver cómo las configuraciones y las relaciones cambian a lo largo del tiempo.
+ [Amazon EC2](https://docs.aws.amazon.com/ec2/?id=docs_gateway): Amazon Elastic Compute Cloud (Amazon EC2) es un servicio web que proporciona una capacidad informática de tamaño variable que se utiliza para crear y alojar los sistemas de software.
+ [AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html): AWS Key Management Service (AWS KMS) es un servicio de cifrado y administración de claves escalado para la nube. Otros servicios de AWS utilizan las claves y la funcionalidad de AWS KMS, y usted puede utilizarlas para proteger los datos de su entorno de AWS.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html): AWS Organizations es un servicio de administración de cuentas que le permite unificar varias cuentas de AWS en una organización que crea y administra de forma centralizada.
+ [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html): Systems Manager Automation simplifica las tareas habituales de mantenimiento e implementación de las EC2 instancias de Amazon y otros recursos de AWS.

**Otros servicios** 
+ [jq](https://stedolan.github.io/jq/download/): jq es un procesador JSON de línea de comandos ligero y flexible. Esta herramienta se utiliza para extraer información clave de la salida de la CLI de AWS.

**Código**
+ El código de este patrón está disponible en el repositorio Cómo [corregir GitHub automáticamente los volúmenes de EBS no cifrados mediante claves KMS del cliente](https://github.com/aws-samples/aws-system-manager-automation-unencrypted-to-encrypted-resources/tree/main/ebs).

## Epics
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-epics"></a>

### Automatizar la corrección de volúmenes no cifrados
<a name="automate-remediation-of-unencrypted-volumes"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Descargue scripts y plantillas. CloudFormation  | Descargue el script de shell, el archivo JSON y CloudFormation las plantillas del repositorio [Remediar GitHub automáticamente volúmenes de EBS no cifrados mediante claves KMS del cliente](https://github.com/aws-samples/aws-system-manager-automation-unencrypted-to-encrypted-resources/tree/main/ebs). | Administrador de AWS, AWS general | 
| Identifique al administrador de la clave de AWS KMS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general | 
| Implemente la plantilla Stack1 CloudFormation . | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html)Para obtener más información sobre la implementación de una CloudFormation plantilla, consulte [Trabajar con CloudFormation plantillas de AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) en la CloudFormation documentación. | Administrador de AWS, AWS general | 
| Implemente la plantilla Stack2 CloudFormation . | En CloudFormation, despliega la `Stack2.yaml` plantilla. Tenga en cuenta los siguientes detalles de implementación:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general | 
| Cree un volumen sin cifrar para realizar pruebas. | Cree una EC2 instancia con un volumen de EBS sin cifrar. Para obtener instrucciones, consulte [Crear un volumen de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-volume.html) en la EC2 documentación de Amazon. El tipo de instancia no importa y no es necesario acceder a la instancia. Puede crear una instancia t2.micro para permanecer en el nivel gratuito y no necesita crear un par de claves. | Administrador de AWS, AWS general | 
| Pruebe la regla de AWS Config. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html)Puede ver el progreso y el estado de la corrección en Systems Manager de la siguiente manera:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general | 
| Configure cuentas o regiones de AWS adicionales. | Según sea necesario para su caso de uso, repita esta epopeya para cualquier otra cuenta o región de AWS. | Administrador de AWS, AWS general | 

### Habilitar el cifrado a nivel de cuenta de los volúmenes de EBS
<a name="enable-account-level-encryption-of-ebs-volumes"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Ejecute el script de habilitación. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general, bash | 
| Confirme si la configuración está actualizada. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general | 
| Configure cuentas o regiones de AWS adicionales. | Según sea necesario para su caso de uso, repita esta epopeya para cualquier otra cuenta o región de AWS. | Administrador de AWS, AWS general | 

### Impedir la creación de instancias no cifradas
<a name="prevent-creation-of-unencrypted-instances"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree una política de control de servicios. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/automatically-encrypt-existing-and-new-amazon-ebs-volumes.html) | Administrador de AWS, AWS general | 

## Recursos relacionados
<a name="automatically-encrypt-existing-and-new-amazon-ebs-volumes-resources"></a>

**Documentación de servicio de AWS**
+ [CLI de AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [Amazon EC2](https://docs.aws.amazon.com/ec2/?id=docs_gateway)
+ [AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)
+ [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html)

**Otros recursos**
+ [jq manual](https://stedolan.github.io/jq/manual/) (sitio web de jq)
+ [jq download](https://github.com/stedolan/jq) () GitHub