¿Qué sucede cuando asigno múltiples grupos de seguridad a una instancia? ¿Es permisivo en el sentido de que se permite el tráfico si alguno de los grupos de seguridad lo permite? ¿O es restrictivo en el sentido de que cada grupo de seguridad debe permitir que el tráfico pase?
Por ejemplo, supongamos que tengo una clase de instancias que solo hablarán con otras instancias en la misma cuenta. También tengo una clase de instancias que solo aceptarán tráfico a través de HTTP (puerto 80).
¿Es posible restringir el acceso a instancias internas y solo a través de HTTP creando y aplicando dos grupos de seguridad:
- Un grupo de seguridad "interno". Permitir todo el tráfico de otros miembros de ese grupo de seguridad en todos los puertos para todos los transportes (TCP, UDP, ICMP)
- Cree un grupo de seguridad "http". Permita todo el tráfico en el puerto 80 a través de TCP desde cualquier fuente.
¿O me veo obligado a crear un solo grupo de seguridad que permita el tráfico desde el puerto 80 donde está la fuente?
fuente
Permisivo.
De acuerdo con AWS aquí: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-rules
fuente
Aquí está la respuesta del soporte de documentación de AWS. Dijeron que actualizarían la documentación:
Encontré un par de publicaciones en foros de discusión que abordan problemas similares con reglas en conflicto dentro de uno o más grupos de seguridad:
https://forums.aws.amazon.com/thread.jspa?messageID=221768
https://forums.aws.amazon.com/thread.jspa?messageID=349244吼
Cuando se aplican múltiples grupos de seguridad a una instancia, las reglas se agregan para crear un gran conjunto de reglas. En EC2, las reglas del grupo de seguridad solo son permisivas, en otras palabras, no puede agregar ninguna regla DENY. Lo que esto significa es que siempre se aplicará la regla más permisiva. Por ejemplo, si tiene un grupo de seguridad que permite el acceso al puerto 22 desde la dirección IP 10.10.10.10, y otro grupo de seguridad que permite el acceso al puerto 22 desde todos, todos tendrán acceso al puerto 22 en la instancia.
fuente
Cuando especifica un grupo de seguridad como origen o destino para una regla, la regla afecta a todas las instancias asociadas con el grupo de seguridad. El tráfico entrante se permite en función de las direcciones IP privadas de las instancias asociadas con el grupo de seguridad de origen (y no las direcciones IP pública o IP elástica). Para obtener más información sobre las direcciones IP, consulte Direccionamiento IP de instancias de Amazon EC2. Si la regla de su grupo de seguridad hace referencia a un grupo de seguridad en una VPC par, y el grupo de seguridad referenciado o la conexión de par VPC se elimina, la regla se marca como obsoleta. Para obtener más información, consulte Trabajar con reglas de grupo de seguridad obsoletas en la Guía de emparejamiento de Amazon VPC.
Si hay más de una regla para un puerto específico, aplicamos la regla más permisiva. Por ejemplo, si tiene una regla que permite el acceso al puerto TCP 22 (SSH) desde la dirección IP 203.0.113.1 y otra regla que permite el acceso al puerto TCP 22 desde todos, todos tienen acceso al puerto TCP 22.
Cuando asocia varios grupos de seguridad con una instancia, las reglas de cada grupo de seguridad se agregan efectivamente para crear un conjunto de reglas. Utilizamos este conjunto de reglas para determinar si se permite el acceso.
Precaución Debido a que puede asignar múltiples grupos de seguridad a una instancia, una instancia puede tener cientos de reglas que se aplican. Esto puede causar problemas cuando accede a la instancia. Por lo tanto, le recomendamos que condense sus reglas tanto como sea posible.
fuente