¿En qué consiste la seguridad en EC2?
Cuando se lanzan, las instancias de AWS tienen varios servicios y características que les permiten manejar la seguridad.
¿Cómo direccionar una Instancia EC2?
Existen diferentes formas en las que se puede direccionar una instancia desde la web.
Public Domain Name System (DNS)
Cuando se dispara una instancia, AWS crea un nombre DNS que puede ser utilizado para acceder la instancia.Este es generado automáticamente y no puede ser especificado por el cliente. El nombre puede ser encontrado en la tab de la descripción de la consola de AWS, o mediante la herramienta de línea de comandos (CLI) o la Interfaz de programación de la aplicación (API). Este DNS persiste únicamente mientras la instancia esta ejecutándose, y no puede ser transferido a otra instancia.
Public IP (Dirección IP Publica)
Una instancia lanzada puede contener también una IP publica asignada. Esta dirección IP no puede ser especificada por el cliente, persiste únicamente cuando la instancia esta ejecutándose, y no puede ser transferida a otra instancia.
Elastic IP (IP Elástica)
Una dirección IP elástica es una dirección única en el Internet que se puede reservar y asociar con una instancia de EC2. Aunque similar a una IP pública, la IP Elástica persiste hasta que el cliente la libera, y no esta amarrada a un tiempo de vida o al estado de una instancia. Puede ser transferida a otra instancia en el caso de que la primera falle.
Las IP privadas y los Interfaces de Red Elásticas (Elastic Network Interfaces ENIs) son métodos adicionales de direccionamiento de instancias que están disponibles en el contexto de una VPC.
¿Cómo maneja la seguridad AWS para el manejo de acceso a las instancias?
EC2 utiliza cartografía de llaves publicas para encriptar y desencriptar la información de autenticación. La cartografía de llaves publicas (public-key carthography) utiliza una llave publica para encriptar una pieza de datos y una llave private para desencriptarlos. Estas dos llaves juntas son llamadas par de llaves (key pair). Los key pairs pueden se creados dentro de la consola de AWS, CLI, API o los propios usuarios pueden subirlas. La llave privada es esencial para obtener acceso a la instancia de EC2 durante la primera sesión.
Cuando EC2 inicializa una instancia, la llave pública es almacenada dentro de ~/.ssh/authorized_keys y el usuario inicial es generado. En la AMI de Amazon, el usuario inicial es ec2-user. El acceso inicial a la instancia es a traves de este usuario, la private key y SSH. Una ves iniciada la sesión es posible crear nuevos usuarios en un directorio como LDAP.
Cuando se inicia una instancia de Windows, EC2 genera un password aleatorio para el administrador local y encripta el password utilizando la llave publica. El acceso a la instancia es realizado desencriptando el password con la llave privada, ya sea mediante la consola o la API. El password desencriptado puede ser utilizado para iniciar sesión con la cuenta de administrador local vira RDP (Remote Desktop). En este punto es posible crear usuarios y conectarse al dominio de Active Directory.
¿Cómo funciona la protección del Firewall Virtual de AWS?
AWS permite controlar el tráfico de entrada y salida de sus instancias a través de muros de fuego (firewalls) llamado security groups (grupos de seguridad). Estos permiten el control de tráfico basado en puertos, protocolos, y origen/destino. Los grupos de seguridad tienen diferentes capacidades dependiendo si se encuentran asociados con una VPC o una instancia de EC2.
¿Cuáles son las capas de control de acceso a una instancia EC2?
EC2
Controla el tráfico de salida de una instancia.
VPC
Controla el tráfico de entrada y salida de una instancia.
¿Qué son los Security Groups en AWS (Grupos de Seguridad)?
Los security groups están asociados a las instancias cuando se lanzan, cada instancia debe tener al menos un grupo de seguridad pero puede tener mas.
Un security group deniega recursos por defecto (default deny), esto quiere decir que no permite el trafico si no es explícitamente permitido por una regla en dicho grupo. Cuando una instancia se asocia a múltiples grupos, las reglas son agregadas y todo el trafico permitido por los grupos en conjunto es habilitado.
¿Cuáles son los atributos de un grupo de seguridad?
Port (Puerto)
Indica el numero de puerto afectado por la regla (pe en el caso de una instancia HTTP, el puerto es 80).
Protocol (Protocolo)
El estándar de comunicaciones afectado por esta regla (http/https,ftp,ssh).
Source/Destination (Origen/Destino)
Identifica el punto destino de la comunicación, que puede ser el origen para las reglas de trafico de entrada, y el destino para las de trafico de salida. Estas reglas pueden ser definidas de dos formas.
- CIDR block
- Del tipo x.x.x.x/x que define un rango de ips.
- Security Group
- Incluye cualquier instancia asociada con el grupo proporcionado. Esto previene acoplar grupos de seguridad con su respectiva dirección IP.