Grupos de seguridad de Amazon EC2 para las instancias de Linux - Amazon Elastic Compute Cloud

Grupos de seguridad de Amazon EC2 para las instancias de Linux

Un grupo de seguridad funciona como un firewall virtual para las instancias EC2 para controlar el tráfico entrante y saliente. Las reglas de entrada controlan el tráfico entrante a la instancia y las reglas de salida controlan el tráfico saliente desde la instancia. Al lanzar una instancia puede especificar uno o varios grupos de seguridad. Si no especifica un grupo de seguridad, Amazon EC2 utiliza el grupo de seguridad predeterminado. Puede añadir reglas a cada grupo de seguridad que permitan el tráfico a o desde sus instancias asociadas. Puede modificar las reglas de un grupo de seguridad en cualquier momento. Las reglas nuevas y modificadas se aplican automáticamente a todas las instancias asociadas al grupo de seguridad. Cuando Amazon EC2 decide si se permite que el tráfico llegue a una instancia, evalúa todas las reglas de todos los grupos de seguridad asociados a la instancia.

Al lanzar una instancia en una VPC, debe especificar un grupo de seguridad creado para esa VPC. Una vez lanzada la instancia, puede cambiar sus grupos de seguridad. Los grupos de seguridad están asociados a interfaces de red. Al cambiar los grupos de seguridad de una instancia se cambian los grupos de seguridad asociados a la interfaz de red principal (eth0). Para obtener más información, consulte Cambio de los grupos de seguridad de una instancia en la Guía del usuario de Amazon VPC. También puede cambiar los grupos de seguridad asociados a cualquier otra interfaz de red. Para obtener más información, consulte Cambiar el grupo de seguridad.

La seguridad es una responsabilidad compartida entre AWS y usted. Para obtener más información, consulte Seguridad en Amazon EC2. AWS proporciona grupos de seguridad como una de las herramientas para proteger las instancias y debe configurarlos para satisfacer sus necesidades de seguridad. Si tiene requisitos que no cumplen totalmente los grupos de seguridad, puede mantener su propio firewall en cualquiera de las instancias, además de usar grupos de seguridad.

Para permitir el tráfico a una instancia de Windows, consulte Grupos de seguridad de Amazon EC2 para las instancias de Windows en la Guía del usuario de Amazon EC2 para instancias de Windows.

Reglas del grupo de seguridad

Las reglas de un grupo de seguridad controlan el tráfico entrante que puede llegar a las instancias asociadas al grupo de seguridad. Las reglas también controlan el tráfico saliente que puede salir de ellos.

A continuación, se describen las características de las reglas de los grupos de seguridad:

  • De forma predeterminada, los grupos de seguridad permiten el tráfico de salida.

  • Las reglas del grupo de seguridad son siempre permisivas; no puede crear reglas que denieguen el acceso.

  • Las reglas de grupo de seguridad le permiten filtrar el tráfico en función de los protocolos y números de puerto.

  • Los grupos de seguridad tienen estado: si envía una solicitud desde su instancia, se permite el flujo del tráfico de respuesta para dicha solicitud independientemente de las reglas de entrada del grupo de seguridad. En los grupos de seguridad de VPC, esto significa también que el flujo de salida de las respuestas al tráfico de entrada está permitido, independientemente de las reglas de salida. Para obtener más información, consulte Seguimiento de la conexión.

  • Puede agregar y eliminar reglas en cualquier momento. Los cambios se aplican automáticamente a las instancias que están asociadas al grupo de seguridad.

    El efecto de algunos cambios en las reglas puede depender de cómo se realiza el seguimiento del tráfico. Para obtener más información, consulte Seguimiento de la conexión.

  • Cuando asocia varios grupos de seguridad a una instancia, las reglas de cada grupo de seguridad se agregan de forma efectiva para crear un conjunto de reglas. Amazon EC2 utiliza este conjunto de reglas para determinar si se permite el acceso.

    Puede asignar varios grupos de seguridad a una instancia. Por lo tanto, una instancia puede tener cientos de reglas que se aplican. Esto puede causar problemas al obtener acceso a la instancia. Le recomendamos que condense las reglas en la medida de lo posible.

Especifique lo siguiente para cada regla:

  • Nombre: el nombre del grupo de seguridad (por ejemplo, my-security-group).

    Un nombre puede tener hasta 255 caracteres como máximo. Los caracteres permitidos incluyen a-z, A-Z, 0-9, espacios y ._-:/()#,@[]+=;{}!$*. Cuando el nombre contiene espacios finales, recortamos los espacios al guardar el nombre. Por ejemplo, si escribe «Grupo de seguridad de prueba » como nombre, lo almacenamos como «Grupo de seguridad de prueba».

  • Protocolo: el protocolo que se permite. Los protocolos más habituales son 6 (TCP), 17 (UDP) y 1 (ICMP).

  • Rango de puertos: para TCP, UDP o un protocolo personalizado, el rango de puertos que se permite. Puede especificar un solo número de puerto (por ejemplo, 22), o bien un rango de números de puertos (por ejemplo, 7000-8000).

  • Tipo y código ICMP: para ICMP, el tipo y el código ICMP.

  • Origen o destino: el origen (reglas de entrada) o el destino (reglas de salida) del tráfico. Especifique una de estas opciones:

    • Una dirección IPv4 individual. Debe utilizar la longitud del prefijo /32 (por ejemplo, 203.0.113.1/32).

    • Una dirección IPv6 individual. Debe utilizar la longitud del prefijo /128 (por ejemplo, 2001:db8:1234:1a00::123/128).

    • Un rango de direcciones IPv4 en notación de bloque de CIDR; por ejemplo, 203.0.113.0/24.

    • Un rango de direcciones IPv6 en notación de bloque de CIDR; por ejemplo, 2001:db8:1234:1a00::/64.

    • Un ID de lista de prefijos, por ejemplo, pl-1234abc1234abc123. Para obtener más información, consulte Listas de prefijos en la Guía del usuario de Amazon VPC.

    • Otro grupo de seguridad. Esto permite que las instancias que están asociadas al grupo de seguridad especificado obtengan acceso a las instancias asociadas a este grupo de seguridad. Elegir esta opción no añade reglas del grupo de seguridad de origen a este grupo de seguridad. Puede especificar uno de los siguientes grupos de seguridad:

      • El grupo de seguridad actual

      • Un grupo de seguridad diferente para la misma VPC

      • Un grupo de seguridad diferente para una VPC del mismo nivel en una interconexión de VPC.

  • (Opcional) Descripción: puede añadir una descripción a la regla, que puede ayudarle a identificarla más adelante. Una descripción puede tener una longitud máxima de 255 caracteres. Los caracteres permitidos incluyen a-z, A-Z, 0-9, espacios y ._-:/()#,@[]+=;{}!$*.

Al especificar un grupo de seguridad como origen o destino de una regla, la regla afecta a todas las instancias que están asociadas al grupo de seguridad. Se permite el tráfico entrante según las direcciones IP privadas de las instancias asociadas al grupo de seguridad de origen (y no la dirección IP pública o las direcciones IP elásticas). Para obtener más información acerca de las direcciones IP, consulte Direccionamiento IP de instancias Amazon EC2. Si la regla del grupo de seguridad hace referencia a un grupo de seguridad en una VPC del mismo nivel y el grupo de seguridad al que se hace referencia o la interconexión de VPC se eliminan, la regla se marca como obsoleta. Para obtener más información, consulte Uso de reglas de grupo de seguridad obsoletas en la Amazon VPC Peering Guide.

Si hay más de una regla para un puerto específico, Amazon EC2 aplica 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 todas las direcciones, todos tienen acceso al puerto TCP 22.

Seguimiento de la conexión

Los grupos de seguridad utilizan el seguimiento de las conexiones para realizar un seguimiento de la información sobre el tráfico hacia y desde la instancia. Las reglas se aplican según el estado de la conexión del tráfico para determinar si el tráfico se permite o se deniega. Este enfoque permite que los grupos de seguridad tengan estado. Esto significa que se permite la salida de las repuestas al tráfico de entrada de la instancia, independientemente de las reglas de salida del grupo de seguridad y viceversa. Por ejemplo, si inicia un comando ping de ICMP para la instancia desde el equipo doméstico y las reglas de entrada del grupo de seguridad permiten el tráfico de ICMP, se realiza un seguimiento de la información sobre la conexión (incluida la información de puerto). El tráfico de respuesta desde la instancia del comando ping no se sigue como una nueva solicitud, sino como una conexión establecida y se permite que salga de la instancia, aunque las reglas de salida del grupo de seguridad restrinjan el tráfico de ICMP de salida.

No se realiza un seguimiento de todos los flujos de tráfico. Si una regla del grupo de seguridad permite los flujos TCP o UDP para todo el tráfico (0.0.0.0/0 o ::/0) y hay una regla correspondiente en la otra dirección que permita todo el tráfico de respuesta (0.0.0.0/0 o ::/0) para todos los puertos (0-65535), entonces no se realiza un seguimiento de ese flujo de tráfico. Por consiguiente, se permite que el tráfico de respuesta fluya según la regla de entrada o de salida que permita el tráfico de respuesta y no según la información de seguimiento.

En el siguiente ejemplo, el grupo de seguridad incluye reglas de entrada específicas para el tráfico TCP e ICMP y reglas de salida que permiten todo el tráfico de salida IPv4 e IPv6.

Reglas de entrada
Tipo de protocolo Número de puerto IP de origen
TCP 22 (SSH) 203.0.113.1/32
TCP 80 (HTTP) 0.0.0.0/0
TCP 80 (HTTP) ::/0
ICMP Todos 0.0.0.0/0
Reglas de salida
Tipo de protocolo Número de puerto IP de destino
Todos Todos 0.0.0.0/0
Todos Todo ::/0

Se realiza un seguimiento del tráfico TCP en el puerto 22 (SSH) hacia y desde la instancia, porque la regla de entrada solo permite el tráfico desde 203.0.113.1/32 y no todas las direcciones IP (0.0.0.0/0). No se realiza un seguimiento del tráfico TCP en el puerto 80 (HTTP) hacia y desde la instancia, porque tanto las reglas de entrada como las de salida permiten todo el tráfico (0.0.0.0/0 o ::/0). Siempre se realiza el seguimiento del tráfico ICMP, independientemente de las reglas. Si elimina la regla de salida del grupo de seguridad, se hace un seguimiento de todo el tráfico hacia y desde la instancia, incluido el tráfico del puerto 80 (HTTP).

Un flujo de tráfico del que no se realiza seguimiento se interrumpe de inmediato si se elimina o modifica la regla que permite el flujo. Por ejemplo, si tiene una regla de salida abierta (0.0.0.0/0) y elimina una regla que permite todo el tráfico SSH (puerto TCP 22) entrante (0.0.0.0/0) a la instancia (o la modifica de modo que la conexión ya no se permita), las conexiones SSH existentes a la instancia se eliminan inmediatamente. La conexión no estaba siendo rastreada previamente, por lo que el cambio romperá la conexión. Por otro lado, si tiene una regla de entrada más estrecha que inicialmente permite la conexión SSH (lo que significa que se rastreó la conexión), pero cambia esa regla para que ya no permita nuevas conexiones desde la dirección del cliente SSH actual, la conexión existente no se romperá cambiando la regla.

En el caso de otros protocolos que no sean TCP, UDP o ICMP, solo se realiza el seguimiento de la dirección IP y del número de protocolo. Si la instancia envía tráfico a otro host (host B) y el host B inicia el mismo tipo de tráfico a su instancia en una solicitud distinta en el plazo de 600 segundos de la solicitud o respuesta original, la instancia la acepta independientemente de las reglas de entrada del grupo de seguridad. Su instancia lo acepta porque se considera tráfico de respuesta.

Para asegurarse de que el tráfico se interrumpe inmediatamente al quitar una regla de grupo de seguridad o para asegurarse de que todo el tráfico entrante está sujeto a reglas de firewall, puede utilizar una ACL de red para la subred. Las ACL de red son sin estado y, por lo tanto, no permiten automáticamente el tráfico de respuesta. Para obtener más información, consulte la sección relacionada con las ACL de red en la Guía del usuario de Amazon VPC.

Grupos de seguridad predeterminados

La cuenta de AWS tiene automáticamente un grupo de seguridad predeterminado para la VPC predeterminada en cada región. Si no especifica ningún grupo de seguridad al lanzar una instancia, esta se asocia automáticamente al grupo de seguridad predeterminado de la VPC.

Un grupo de seguridad predeterminado se nombra default y AWS le asigna un ID. A continuación, se describen las reglas predeterminadas de cada grupo de seguridad predeterminado:

  • Permite todo el tráfico entrante de otras instancias asociadas con el grupo de seguridad predeterminado. El grupo de seguridad se especifica a sí mismo como grupo de seguridad de origen en sus reglas de entrada.

  • Permite todo el tráfico de salida desde la instancia.

Puede agregar o eliminar reglas de entrada y de salida en cualquier grupo de seguridad predeterminado.

El grupo de seguridad predeterminado no se puede eliminar. Si intenta eliminar el grupo de seguridad predeterminado, verá el siguiente error: Client.CannotDelete: the specified group: "sg-51530134" name: "default" cannot be deleted by a user.

Custom security groups (Grupos de seguridad personalizados)

Si no desea que las instancias utilicen el grupo de seguridad predeterminado, puede crear sus propios grupos de seguridad y especificarlos al lanzar las instancias. Puede crear varios grupos de seguridad para reflejar los distintos roles de sus instancias, por ejemplo, un servidor web o un servidor de bases de datos.

Al crear un grupo de seguridad, debe darle un nombre y una descripción. Los nombres y las descripciones de los grupos de seguridad pueden tener hasta 255 caracteres de longitud y se limitan a los siguientes caracteres:

a-z, A-Z, 0-9, espacios y ._-:/()#,@[]+=&;{}!$*

El nombre del grupo de seguridad no puede comenzar con sg-. El nombre de un grupo de seguridad debe ser único en la VPC.

A continuación, se describen las reglas predeterminadas de un grupo de seguridad que crea:

  • No permite ningún tráfico de entrada

  • Permite todo el tráfico de salida

Una vez que ha creado un grupo de seguridad, puede cambiar las reglas de entrada para que reflejen el tipo de tráfico de entrada que desea que llegue a las instancias asociadas. También puede cambiar sus reglas de salida.

Para obtener más información sobre las reglas que puede añadir a un grupo de seguridad, consulte Referencia de reglas de grupos de seguridad.