Administración de grupos de seguridad de EC2
Cuando Elastic Beanstalk crea un entorno, asigna un grupo de seguridad predeterminado a las instancias de EC2 que se lanzan con él. Los grupos de seguridad que están adjuntos a las instancias determinan qué tráfico puede llegar a las instancias y salir desde estas.
El grupo de seguridad de EC2 predeterminado creado por Elastic Beanstalk permite todo el tráfico entrante de la Internet o los equilibradores de carga en los puertos estándar para HTTP (80) y SSH (22). También puede definir sus propios grupos de seguridad personalizados para designar las reglas del firewall para las instancias de EC2. Los grupos de seguridad pueden permitir el tráfico en otros puertos o que proceda de otros orígenes. Por ejemplo, puede crear un grupo de seguridad para el acceso de SSH que permita el tráfico entrante en el puerto 22 de un intervalo restringido de direcciones IP. O, por cuestiones adicionales de seguridad, puede crear uno que permita el tráfico procedente de un host bastión al que solo usted tenga acceso.
Puede optar por excluir su entorno del grupo de seguridad de EC2 predeterminado configurando la opción DisableDefaultEC2SecurityGroup en el espacio de nombres aws:autoscaling:launchconfiguration como true. Utilice la AWS CLI o los archivos de configuración para aplicar esta opción a su entorno y adjuntar grupos de seguridad personalizados a las instancias de EC2.
Administración de grupos de seguridad de EC2 en entornos de instancias múltiples
Si crea un grupo de seguridad de EC2 personalizado en un entorno de instancias múltiples, también debe tener en cuenta la forma en que los equilibradores de carga y las reglas de tráfico entrante mantienen sus instancias seguras y accesibles.
El equilibrador de carga administra el tráfico entrante a un entorno con instancias múltiples de EC2, que dirige el tráfico entrante entre todas las instancias de EC2. Cuando Elastic Beanstalk crea un grupo de seguridad de EC2 predeterminado, también define las reglas de entrada que permiten el tráfico entrante desde el equilibrador de carga. Sin esta regla de entrada en el grupo de seguridad, no se permitirá que el tráfico entrante ingrese en las instancias. Básicamente, esta condición bloquearía las instancias frente a las solicitudes externas.
Si deshabilita el grupo de seguridad de EC2 predeterminado para un entorno con equilibrio de carga, Elastic Beanstalk valida algunas reglas de configuración. Si la configuración no cumple con las comprobaciones de validación, emite mensajes en los que se le indica que proporcione la configuración requerida. Las comprobaciones de validación son las siguientes:
-
Se debe asignar al menos un grupo de seguridad al equilibrador de carga mediante la opción
SecurityGroupsde aws:elbv2:loadbalancer o aws:elb:loadbalancer, en función de si se trata de un Equilibrador de carga de aplicación o de un Equilibrador de carga clásico, respectivamente. Para ver ejemplos de AWS CLI, consulte Configuración mediante AWS CLI. -
Deben existir reglas de tráfico entrante que permitan que las instancias de EC2 reciban tráfico del equilibrador de carga. Tanto los grupos de seguridad de EC2 como los grupos de seguridad del equilibrador de carga deben hacer referencia a estas reglas de entrada. Para obtener más información, consulte la sección Reglas de entrada para el tráfico siguiente.
Reglas de entrada para el tráfico
Los grupos de seguridad de EC2 para un entorno de instancias múltiples deben incluir una regla de entrada que haga referencia al grupo de seguridad del equilibrador de carga. Esto se aplica a los entornos con cualquier tipo de equilibrador de carga, dedicado o compartido, y con grupos de seguridad de equilibradores de carga personalizados o predeterminados.
Puede ver todos los grupos de seguridad que están conectados a los componentes de su entorno en la consola de EC2. La siguiente imagen muestra la lista de grupos de seguridad de la consola EC2 creados por Elastic Beanstalk de forma predeterminada durante la operación de creación del entorno.
La pantalla de grupos de seguridad muestra los entornos y los grupos de seguridad asociados. Tanto GettingStarted-env como GettingStarted3-env son entornos de instancias múltiples con equilibradores de carga dedicados. Cada uno de estos entornos tiene dos grupos de seguridad listados, uno para las instancias de EC2 y otro para el equilibrador de carga. Elastic Beanstalk crea estos grupos de seguridad cuando crea los entornos. GettingStarted5-env no tiene un grupo de seguridad de equilibrador de carga, ya que tiene solamente una instancia de EC2 y, por lo tanto, no tiene un equilibrador de carga.
La pantalla de reglas de entrada profundiza en el grupo de seguridad de EC2 para las instancias de GettingStarted3-env. En este ejemplo, se definen las reglas de entrada del grupo de seguridad de EC2. Tenga en cuenta que la columna Fuente de las reglas de entrada muestra el identificador del grupo de seguridad del equilibrador de carga que aparece en la imagen anterior. Esta regla permite que las instancias de EC2 de GettingStarted3-env reciban el tráfico entrante de ese equilibrador de carga específico en el puerto 80.
Para obtener más información, consulte Cambiar los grupos de seguridad de la instancia y las reglas de Elastic Load Balancing en la Guía del usuario de Amazon EC2.