Security Groups en AWS: pequeños cambios, gran impacto en la seguridad
Source: Dev.to
🧠 ¿Qué es un Security Group?

Un Security Group es un firewall virtual que controla qué tráfico puede entrar y salir de tus recursos en AWS (EC2, Load Balancer, RDS, etc.).
Funciona a nivel de instancia o servicio, no de red completa, y es el primer nivel real de defensa en la mayoría de las arquitecturas AWS.
📌 Son stateful
Si permites la entrada, la respuesta está permitida automáticamente.

🛠️ ¿Cómo se usa?
Los Security Groups se basan en reglas explícitas:
- Puerto
- Protocolo
- Origen / destino
Ejemplo simple
Permitir tráfico HTTP/HTTPS solo desde un Application Load Balancer:

Bloquear cualquier otro acceso directo a la instancia.
No se “niega” tráfico explícitamente: todo lo que no está permitido queda bloqueado.
✅ Buenas prácticas clave
- Principio de mínimo privilegio – Abrir solo los puertos estrictamente necesarios.
- Referenciar Security Groups, no IPs – Ejemplo: permitir tráfico desde el SG del Load Balancer al SG de la aplicación.
- Nunca usar 0.0.0.0/0 por comodidad – Especialmente en puertos sensibles (22, 3389, bases de datos).
- Un rol, un Security Group – Evita SG “comodín” usados por todo.
- Documentar las reglas – Un SG sin contexto es deuda técnica.
🧩 Ejemplo práctico (arquitectura común)

ALB (público)
Permite 80/443 desde internet.
EC2 App .NET (privada)
Permite 80/443 solo desde el SG del ALB.
Resultado
- La aplicación no es accesible desde internet.
- Todo el tráfico pasa por un punto controlado.
🚨 ¿Por qué es tan importante configurarlos bien?
- Un Security Group mal configurado expone tu aplicación.
- Muchos incidentes de seguridad comienzan con un
0.0.0.0/0. - Son fáciles de crear… y fáciles de romper.
💡 En AWS, la seguridad a menudo falla no por falta de servicios, sino por reglas mal definidas.
🏁 Cierre
Antes de pensar en WAF, Zero Trust o arquitecturas complejas, aprende a usar bien los Security Groups.
En AWS, un buen Security Group puede salvarte de un muy mal día.