Aquitectando Red en AWS.
- Direccion IP:
- VPC FUNDAMENTALS
- SUBNETS (zona de disponibilidad)
- PUBLIC SUBNETS
- INTERNET GATEWAYS
- ROUTE TABLES
- PRIVATE SUBNETS
- DEFAULT AMAZON VPCs
- ELASTIC IP ADDRESESS
- ELASTIC NETWORK INTERFACE
- CONNECTING PRIVATE SUBNETS ON THE INTERNET
- DEPLOY A VPC ACROSS MULTIPLE ZONES AVAILABILITY ZONES
- SECURITY GROUPS
- DEFAULT AND NEW SECURITY GROUPS
- CUSTOM SECURITY GROUPS RULES
- SECURITY GROUP CHAINING
- COMPARING SECURITY GROUPS AND NETWORK ACL
Un ingeniero de red necesita conocer cuantas direcciones ip tienen nuestras cargas de trabajo, construir una red dinámica y segura red. Como filtrar el tráfico dentro y fuera de la infraestructura de AWS
Direccion IP:
Una dirección ip incluye información sobre la locación de un recurso dentro de una red, estas identifican la red y la locación del host. Existen 2 tipos de dirección ip: IPv4, IPv6. Parte de las direcciones es identificar la red
Cuando unas una VPC (virtual prívate connection) construyes una red en AWS. Tu especificas CIDR Blocks en tu VPC y subnets. También debes poner las direcciones ip suficientes para soportar los recursos de cargas de trabajo.
Un Bloque de CIDR identifica la red usando los bloques de denotación a la que fue asignada.
La máscara de subred define cuales puertos de las direcciones ip están dedicados a la identificación de la red y cuales pueden ser usandos para el host. Una dirección IPv4 tiene 32 Bits. (00010110. 00010110. 00010110.00010110 ). Y Esta dividida en 4 octetos. De los cuales 16 Bits o 2 octetos se reservan para la identificación de la red, los restantes son usados para la identificación del host.
Cada octeto, puede tener entre 0 y 255 números, es decir del 0 a 255 en números decimales, contando el 0 serian 256. Ahora si los 2 primeros octetos son para identificar la red con podríamos ocupar dependiendo el número de direcciones ip y del prefijo.
/16 256 * 256 = 65,536
De acuerdo a los rangos, estos se van a ir dividiendo de 2 partiendo de número máximo. Es decir / 16. = 65,536 / 17. 2 = 32,768 y sucesivamente hasta llegar al prefijo /28 la red que tiene 16 direcciones ip. La VPC pueden tener arriba de 5 bloques CIRD
VPC FUNDAMENTALS
Una VPC es una red privada que está dentro de una región de AWS, con la VPC puedes desplegar recursos dentro de la red privada que definiste. Una VPC deploya dentro de la región de AWS y puedes localizar zonas de disponibilidad
Las zonas de disponibilidad están dentro de regiones que están aisladas entre si. Puedes usar IPv4 y IPv6 para mayor seguridad.
Una VPC, proporciona un número máximo de 65,536 direcciones IP.
SUBNETS (zona de disponibilidad)
Las subredes están dentro de una VPC en una zona de disponibilidad, los bloques CIRD no se pueden sobreponer. Cada subred reside dentro de una zona de disponibilidad.
Una zona de disponibilidad puede tener varias subredes.
- Subred pública 1: 172.31.0.0/20 permite 4.096 direcciones en el intervalo 172.31.0.1 - 172.31.15.254.
- Subred pública 2: 172.31.16.0/20 permite 4.096 direcciones en el intervalo 172.31.16.1 - 172.31.31.254.
- Subred privada 1: 172.31.32.0/20 permite 4.096 direcciones en el intervalo 172.31.32.1 - 172.31.47.254.
- Subred privada 2: 172.31.48.0/20 permite 4.096 direcciones en el intervalo 172.31.48.1 - 172.31.63.2.
Las zonas de disponibilidad pueden tener subredes privadas y públicas. Las subredes no utilizan todas las direcciones ip disponibles de la VPC.
Las primeras 4 direcciones ip están reservadas:
- 10.0.0.0: dirección de la red.
- 10.0.0.1: reservada por AWS Para el router VPC
- 10.0.0.2: reservada por AWS para las DNS de las direcciones ip tomando en cuenta las 2 primeras direcciones anteriores.
- 10.0.0.3: reservada por AWS para un uso futuro.
- 10.0.0.255: AWS no admite la difusión en una VPC; por lo tanto, reservamos esta dirección.
PUBLIC SUBNETS
Una subred publica mantiene los recursos para trabajar con entradas y salidas de internet
Route table: Se utiliza para determinar hacia donde se dirige el tráfico en la subred, pero esa requiere el internet Gateway. (a que instancia va el tráfico)
Internet Gateway: permite la comunicación entre de los recursos entre internet y la VPC. (es la puerta para el internet)
IP addresses: pueden ser alcanzadas sobre internet y protegen la dirección ip privada (esta solo puede encontrar la red de la VPC)
INTERNET GATEWAYS
El internet Gateway es horizontalmente escalable, redundante y altamente disponible, este permite la comunicación entre las instancias de VPC y el internet. No impone riesgos de disponibilidad o limitaciones de ancho de banda en el tráfico de la red.
El internet Gateway tiene 2 propósitos:
- Proporciona un objetivo en la tabla de ruteo del tráfico de internet: Una subnet por default no permite el tráfico de salida a internet, se utiliza la tabla de ruteo para saber dónde se va a dirigir el tráfico entrante de internet.
- Protegen las direcciones IP de tu red realizando NAT: Los recursos que están dentro de la red que están conectados a internet deberán usar 2 tipos
El internet Gateway realiza el NAT al mapear direcciones privadas y públicas. Al trasladar las respuestas de la dirección IP privada a la IP pública. El internet Gateway soporta IPv4 y ipV6, recibe la respuesta y la traslada a la dirección ip pública.
ROUTE TABLES
Una tabla de ruta contiene una configuración de reglas que se usan para determinar cuándo dirigir el tráfico de la red. Cuando creas una VPC automáticamente se crea una tabla de ruta.
La tabla de ruta se usa para permitir la tabla la comunicación en los recursos cuando, esta aparece cuando creas una instancia, dentro de la creación de un recurso tendría que aparecer una tabla de ruteo, estas tienen un nombre y la dirección ip con los rangos. No se pueden modificar estas tablas de ruteo en la tabla de ruteo.
Cada subnet que se cree dentro de la VPC debe ser asociada con una tabla de ruta, UNA SUBNET solo puede estar asociada a UNA TABLA DE RUTA.
PRIVATE SUBNETS
Una subnet permite de forma indirecta el tráfico a internet, las direcciones IP que se asignan a una instancia EC2 al menos que añadas manualmente una dirección IP nueva.
Se pueden colocar instancias WEB-TIER, sin embargo, se recomienda colocar instancias WEB-TIER en subred publica detrás de un balanceador de cargas colocado en una subred publica, esto se hace con un ELASTIC LOAD BALANCER.
DEFAULT AMAZON VPCs
Cada cuenta de AWS viene con un Default Amazon VPC que esta preconfigurada para usar inmediatamente. La VPC que esta por default en Amazon está situada para empezar rápidamente y lanzar instancias públicas ya se aun blog o simple sitio web.
En la imagen de arriba de la VPC por default que es la 172.31.0.0/16 tiene por default el CIDR 16 lo que significa que te da 65, 536 direcciones IP. Dentro del diagrama se encuentra dos zonas de disponibilidad con /20. Lo que significa que daría 4,096 Direcciones IP cada una. También incluye un internet Gateway
Entonces ocuparía 8,196 Direcciones de las 65,536 de la VPC.
La VPC Usa una tabla principal de ruta para conectar las subnets a internet Gateway.
ELASTIC IP ADDRESESS
Una dirección IP elástica es una IPv6 publica y estática que está diseñada para la computación de nube dinámica. Una dirección ip elástica se puede asignar a cualquier instancia o red en tu VPC en tu cuenta.
Puede ser asociada y redirigir el tráfico inmediatamente, tiene una restricción default para 5 regiones por cuenta.
Las direcciones ip elásticas se asignan para que en caso de que falle una instancia rápidamente pueda remapearse a otra instancia. En este ejemplo de la imagen de arriba, si una instancia EC2 falla automáticamente la misma dirección ip es asignada a otra instancia
Puedes mover la dirección ip elastica de una instancia a otra, la instancia puede estar dentro de la VPC o en otra VPC. La ip elástica está accediendo junto a internet Gateway.
Si tu configuras una VPN entre tu red y tu VPC el tráfico de la VPN atraviesa un virtual prívate Gateway NO a un internet Gateway, por lo tanto, no puedes acceder a una ip elástica. También puedes usar DNS para la intercomunicación de nodos. También puedes usar BYOIP, Pero requiere de configuraciones adicionales.
Los clientes pueden conectarse a una VPC a través de internet Gateway.
Las direcciones elásticas en conclusión son como las ip públicas en la subnet sin embargo estas se resignan a otra instancia con otra dirección ip privada diferente, pero va a conservar la misma dirección ip elástica a la otra instancia.
ELASTIC NETWORK INTERFACE
Una elastic network interface es un componente de red lógico (físico). En una VPC representa una red de tarjeta virtual. En Amazon EC2 puedes crear tu interfaz de red adjuntada para una instancia y separar una instancia.
Cuando mueves una máquina virtual, la red se mantiene publica, la dirección ip elástica y la dirección mac de la máquina.
En en imagen de arriba se puede reasignar la interfaz elástica de una instancia a otra con la misma configuración de la tarjeta, es decir físicamente hablando como si cambiáramos la tarjeta de red de una instancia y se la pusiéramos a otra.
Si una instancia esta caída rápidamente puedes reasignar la interfaz de red con la misma dirección ip, dirección ip elástica y dirección mac. Tambien puedes asignar la tarjeta de red a otra zona de disponibilidad que este dentro de la VPC.
Si pones la interfaz en otra zona de disponibilidad limita a la recuperación de desastres. Las mejores prácticas indica que la interfaz y las instancias deben están en la misma zona de disponibilidad.
- Cree una red de gestión.
- Utilice dispositivos de red y seguridad en su VPC.
- Cree instancias de doble origen con cargas de trabajo o funciones en subredes distintas.
Cree una solución de bajo presupuesto y alta disponibilidad
NETWORK ADDRESS TRANSLATIONS WITH NAT GATEWAYS
NAT traslada todo lo que viene en la dirección ip interna de una instancia de VPC a a internet Gateway. Esto se usa para proteger la dirección ip de la instancia y se puede hacer por medio de la IP elástica en la instancia pública.
Puedes usar NAT Gateway para que una dirección ip privada tenga salida a internet.
El NAT Gateway comunica entre instancias y el internet, además el NATGateway tiene una dirección ip elástica y una dirección ip privada. Son altamente escalables, redundantes y disponibles. Su objetivo es rutear el tráfico de internet a la VPC y a las instancias de las subredes privadas.
El NAT Gateway se puede poner en subredes privadas públicas y privadas. Y natea el tráfico de una instancia con dirección ip privada a su ip privada. Si se combina el NAT Gateway con una dirección ip elástica entonces el NAT GATEWAY tendrá salida a internet. Entonces la dirección ip privada saldría a una dirección ip publica de internet.
CONNECTING PRIVATE SUBNETS ON THE INTERNET
Puedes usar el NAT GATEWAY de una forma para conectar instancias privadas, el internet u otro servicio de AWS. El objetivo es prevenir el tráfico externo a las conexiones de las instancias privadas.
- La tabla de ruteo envía todo el tráfico IPv4 de la subred a internet por medio del NAT Gateway.
- No soporta el tráfico IPv6
Usa una dirección ip elástica como un recurso.
DEPLOY A VPC ACROSS MULTIPLE ZONES AVAILABILITY ZONES
Desplegar una arquitectura en múltiples zonas logra tener una alta disponibilidad, distribuyes el tráfico y mantiene seguro los datos. Tener múltiples zonas te permite tener alta disponibilidad en caso de que una falle.
VPC SECURITY TRAFFIC
Los ingenieros de red deben aprovechar la seguridad de las capas de las subredes. (Filtrar el tráfico de la red)
NETWORK ACCESS CONTROL LIST (ACL): Un ACL actúa como un firewall en los límites de las subredes. Por default permite todo el tráfico de entrada y salida. Requiere reglas establecidas para el tráfico
El ACL es una capa de seguridad opcional, para las VPCs que ayudan a controlar el tráfico en una o más subnets. Todas las VPC automáticamente tienen un ACL en las subnets que permiten el tráfico entrante y saliente IPv4.
Puedes crear un ACL personalizarla y asociarla a una VPC. Cuando creas un ACL personalizado por default niega todo el tráfico entrante y saliente hasta que creas tus reglas.
Un ACL es una lista numerada de reglas, las cuales se evalúan en orden de menor a mayor, Todas las ACL tienen una regla que es un asterisco.
Esta regla niega los paquetes que no coincidan con esta regla. Es decir, va a permitir únicamente el tráfico que estén dentro de esas condiciones. Pero en este caso niega todo el tráfico de todos los protocolos y todos los rangos de dirección ip, sin embargo, cuando se establece otra regla para permitir contradice parte de la regla.
Los componentes de una regla ACL de red incluyen los siguientes elementos:
- Número de regla: Las reglas se evalúan empezando por la regla con el número más bajo.
- Tipo: El tipo de tráfico, por ejemplo, Secure Shell (SSH). También puede especificar todo el tráfico o un rango personalizado.
- Protocolo: Puede especificar cualquier protocolo que tenga un número de protocolo estándar.
- Rango de puertos: El puerto de escucha o rango de puertos para el tráfico, por ejemplo, 80 para tráfico HTTP.
- Origen: Sólo para reglas entrantes, el origen del tráfico (rango CIDR).
- Destino: Sólo para reglas salientes, el destino del tráfico (rango CIDR).
- Permitir o Denegar: Permitir o denegar el tráfico especificado.
ACL filtra todo el tráfico de las subnets actuando como un firewall entrante y saliente
SECURITY GROUPS
Un grupo de seguridad es un firewall virtual que controla la entra y salida del tráfico de los recursos dentro de AWS. Permite el tráfico basando en IP, puerto o protocolo. Usa reglas de estado
El grupo de seguridad actúa a nivel de interfaz de red no a nivel de subnet. Estos solo soportan reglas. Por default los grupos permiten la comunicación entrante entre grupos. El tráfico puede restringir cualquier protocolo, servicio o destino.
DEFAULT AND NEW SECURITY GROUPS
Un grupo de seguridad que esta creado en una VPC INCLUYE UNA REGLA SALIENTE QUE PERMITE TODO EL TRAFICO DE SALIDA. Puedes remover esta regla, y puedes añadir una regla que permita el tráfico de salida especifico.
Un grupo de seguridad puede ser configurado para configurar reglas para diferentes clases de instancias, por ejemplo, si tienes una instancia web-tier, puedes permitir el tráfico del puerto 80 (HTTP) y 443 (HTTPS) para internet.
3306 para bases de datos, 22 para el puerto SSH. Este mecanismo puede ayudarte a tener alta seguridad.
CUSTOM SECURITY GROUPS RULES
Con el grupo de seguridad puedes filtrar el tráfico basado en protocolos, puertos, direcciones ip etc. Todos los que quieran entrar al servidor por el puerto 80 y 443 tendrán respuesta, sin embargo, si intentan entrar al puerto 1433 o 3306 este será negado aun que tengan respuesta desde un ping.
SECURITY GROUP CHAINING
En esta imagen se muestra una cadena de grupos como cada instancia dentro de una zona de disponibilidad tiene un grupo de seguridad. El tráfico de entrada viene del web server, el cual permite en tráfico de internet HTTP Y HTTPS 80 y 443. Luego el web server permite el tráfico que tiene del puerto 80 y la base de datos solo permite el tráfico que viene del puerto 3306.
En conclusión, el grupo de seguridad tiene reglas que permiten el tráfico de entra o salida de los entre los recursos de AWS de la misma zona de disponibilidad.
DESING YOUR INFRAESTRUCTURE WITH MULTIPLE LAYER OF DEFENSE
En esta imagen se muestran las mejores prácticas para asegurar tu infraestructura en múltiples capas
- El ACL filtra el tráfico a nivel de subredes
- El grupo de seguridad se usa para filtrar el tráfico a nivel de instancia y puede ser seguridad profunda.
COMPARING SECURITY GROUPS AND NETWORK ACL
Ambas pueden tener diferentes configuraciones dependiendo de cómo hayan sido creadas.
Grupos de seguridad: los grupos de seguridad de las VPC predeterminadas permiten todo el tráfico.
Los nuevos grupos de seguridad no tienen reglas entrantes y permiten el tráfico saliente.
Network ACL: Las ACL de red en las VPC predeterminadas permiten todo el tráfico IPv4 entrante y saliente.
Las ACL de red personalizadas deniegan todo el tráfico entrante y saliente hasta que se añaden reglas.
Deja tu cometario!