AWS networking Tips 🎬 Serie: ⚡ Cloud Superpower ⚡ 2.04
Tags: aws, network, security
Published: 2024-01-22 12:33:39


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kstvlahapfuekfi2vux7.jpeg)

Lo prometido es deuda! A petición popular, hoy os voy a dar algunos tips a la hora de configurar nuestras VPC en AWS.

Configurar la red siempre es una tarea particularmente compleja y que requiere un estudio sobre los requisitos de cada proyecto y organización, pero a nivel general me he permitido recopilar estos tips para vosotros.

**Nota del autor**: Voy a ir actualizando este post a medida que vaya recopilando nuevos tips. Considera esta la version 1.0

Vamos a ir enumerando y desarrollando algunos de ellos.
Partimos de un escenario de AWS Multi-cuenta, ya que es el más extendido a nivel empresarial. No tiene mucho sentido algunos de ellos en un entorno Single-account o sandbox.


✅  **1. Tamaño de las VPC, número de subnets:**

A la hora de planificar una red primero debemos escoger el tamaño CIDR de nuestra red, para eso debemos escoger un tamaño que nos permita crecer y para eso debemos conocer que esperamos colocar en ella. Igualmente no te martirices con este punto, siempre puedes agregar bloques CIDR adicionales.

Yo uso https://visualsubnetcalc.com/ para calcular los rangos y hacer las subdivisiones.

A la hora de definir las subnets, es importante aprovechar las AZ's para repartir tus workloads y hacerlas más robustas. 

Lo que sí hago es reservarme un rango para cada cloud provider y redes on-prem que pueda tener en nuestra organización, de forma que evitemos a toda costa el solapamiento IP. (gestionar solapamiento ip me parece un drama y es evitable con planificación). Cuando digo drama, me refiero a conjunto de chapuzas de mitigación de solapamiento. Así que mejor prevenir que curar, recuerda esto!

✅  **2. Centraliza la gestión de la red:**

Mi tip preferido es usar **VPC Sharing** para centralizar la gestión de la red, de las cuentas que las consumen. A nivel de seguridad es muy buena idea.

Esta función permite crear las VPC en una cuenta de Networking y compartir esas redes con cuentas miembros de una misma AWS Organization (cuentas consumidoras de la VPC).

Siguiendo con esta idea de centralizar, también puedes centralizar el Egress de nuestra red con NAT Gateway y es un punto a considerar.


✅  **3. Diagrama tu red**
Dibuja lo que quieres hacer, te va a permitir tener una visión global y conceptual de la topología de la red y será más fácil detectar y evolucionar tu configuración.

Es un tip muy básico, pero os lo dejo porque para mi es importante, sin diagrama no salgo de casa 😅 , y existen muchas herramientas para diagramar tu red yo uso draw.io


✅  **4. Privatiza el acceso con VPC Endpoints**

Consumir servicios como s3 sin private Link, significa salir a internet (estrictamente solo vamos hasta el backbone de AWS, pero con direccionamiento público para mi eso es internet). y es algo controvertido, si estamos consumiendo el resto de servicios dentro de una subnet. Por eso VPC Endpoints es la forma de consumir esos servicios de AWS con un direccionamiento privado.

✅  **5. Evita el uso de Public IPs**

Es otro tip básico. No solamente por la escasez de IPv4, si no por que estaremos aumentando nuestra superficie de exposición.
Hay servicios como AWS SSM que permite conectarnos a las EC2 directamente sin IP pública, es una buena práctica de seguridad.

También existen las VPC IPv6 cada vez más soportadas y que no tienen coste como IPv4, recuerda que ahora AWS cobra por cada IP pública que utilices, así que evitar y optimizar su uso, también ahorra dinero.

✅  **6. Monitoriza el tráfico de red con VPC Flow Logs**

Para hacer troubleshooting, es importante habilitar el log de tráfico IP, además puedes combinarlo con CloudWatch para consultarlos y filtrarlos.
También puede ser requerido por alguna norma de cumplimiento que debamos seguir en nuestra compañia.

✅  **7. Evita el uso de host bastiones**
O también conocidos como máquinas de salto. Son un riesgo para la seguridad, y al igual que en el tip 5, puedes usar AWS SSM sin necesidad de usar un host bastion. Son demasiado old-school para la nube.


✅  **8. Evalúa usar AWS Transit Gateway**
Muchas veces una VPC necesita acceder a otra, y para ello tradicionalmente se ha usado VPC Peering, para intercambiar tráfico entre dos VPC. Es una solución económica pero que escala francamente mal.

Transit gateway viene a resolver esto, y aunque a priori es una solución más cara, creo que resuelve mucho la gestión de la red, por eso yo recomiendo su uso en entornos empresariales.


--

¡Gracias por llegar hasta aquí!

Bien por ahora estos son los tips más frecuentes que yo utilizo y puedo compartir contigo.

¿Los conocías? ¿Que opinas? ¿Quieres compartir alguno que no has visto aquí? Dejalo en los comentarios.