Grupos de seguridad para GKE en AWS

Aquí se explican los grupos de seguridad de AWS (SG) que necesitas para GKE en AWS.

Si instalas un servicio de administración o usas una VPC de AWS existente, anthos-gke crea grupos de seguridad por ti. Puedes configurar las CRD de AWSCluster y AWSNodePool con una lista de ID adicionales de grupos de seguridad.

En el siguiente diagrama, se describe cómo GKE en AWS usa grupos de seguridad para conectarse a los servicios de Google Cloud y AWS.

Diagrama de puertos y conexiones de componentes de GKE en AWS a los servicios de Google Cloud y AWS.

Grupo de seguridad del servicio de administración

El grupo de seguridad del servicio de administración permite el acceso a la API del servicio de administración con HTTPS. Si tienes un host de bastión configurado, se permite el tráfico entrante desde el grupo de seguridad de bastión.

Si creas un entorno de GKE en AWS en una VPC de AWS existente, debes tener un grupo de seguridad que permita las siguientes conexiones.

Tipo Protocol Puerto Dirección Descripción
Entrante TCP 443 CIDR de VPC Permitir HTTPS desde la VPC de AWS.
Entrante TCP 22 SG de host de bastión Permitir el uso de tunelización SSH desde el host de bastión (incluido solo en la VPC dedicada)
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente

Acceso al dominio saliente

El servicio de administración requiere acceso saliente a los siguientes dominios.

  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • oauth2.googleapis.com
  • storage.googleapis.com
  • www.googleapis.com
  • gcr.io
  • k8s.gcr.io
  • EC2-REGION.ec2.archive.ubuntu.com

Reemplaza EC2-REGION por la región EC2 de AWS en la que se ejecuta la instalación de GKE en AWS. Por ejemplo, us-west-1.ec2.archive.ubuntu.com/.

Si usas Anthos Service Mesh con Prometheus y Kiali, debes permitir el acceso saliente desde los siguientes dominios:

  • docker.io
  • quay.io

Grupo de seguridad del host de bastión (opcional)

Usa las conexiones permitidas por el grupo de seguridad del host de bastión para conectarte a tu GKE en el servicio de administración de AWS y clústeres de usuarios. Este grupo es opcional y solo se incluye si usas anthos-gke para crear una instalación de GKE en AWS en una VPC dedicada.

Tipo Protocol Puerto Dirección Descripción
Entrante TCP 22 Bloque CIDR de bastionAllowedSSHCIDRBlocks en la configuración AWSManagementService. Permitir SSH al Host de bastión.
Saliente TCP 22 0.0.0.0/0 Permitir SSH saliente.
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente

Grupo de seguridad del plano de control

El grupo de seguridad del plano de control permite conexiones entre los nodos del plano de control y el servicio de administración, y entre los nodos del plano de control y los grupos de nodos.

El plano de control consta de tres instancias de EC2 detrás de un balanceador de cargas de red de AWS (NLB). Estas instancias aceptan conexiones desde instancias etcd en otros nodos, nodos de grupos de nodos y el NLB. Para actualizar los componentes de GKE en AWS, se permite el tráfico HTTP/HTTPS saliente.

Especifica los ID de los grupos de seguridad en tu definición de AWSCluster.

Tipo Protocol Puerto Dirección Descripción
Entrante TCP 2380 Este SG Permitir la replicación de etcd del plano de control.
Entrante TCP 2381 Este SG Permitir la replicación de eventos etcd del plano de control.
Entrante TCP 443 SG del grupo de nodos Permitir HTTPS desde los nodos del grupos de nodos.
Entrante TCP 443 Rango de CIDR de VPC de AWS Permitir HTTPS desde el balanceador de cargas y el servicio de administración.
Entrante TCP 11872 Rango de CIDR de VPC de AWS Verificación de estado HTTP para el balanceador de cargas.
Saliente TCP 22 SG del grupo de nodos Permite el uso de túneles SSH en grupos de nodos (para clústeres v1.20 y versiones anteriores).
Entrante TCP 8132 SG del grupo de nodos Permite la conexión de Konnectivity desde grupos de nodos (para clústeres v1.21 y versiones posteriores).
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente
Saliente TCP 2380 Este SG Permitir la replicación de etcd del plano de control.
Saliente TCP 2381 Este SG Permitir la replicación de eventos etcd del plano de control.
Saliente TCP 10250 SG del grupo de nodos Permite conexiones del plano de control a Kubelet.

Grupo de seguridad del grupo de nodos

El grupo de seguridad del grupo de nodos permite conexiones desde el plano de control y otro nodo. Especifica los ID de los grupos de seguridad en tus definiciones de AWSNodePool.

Tipo Protocol Puerto Dirección Descripción
Entrante TCP Todos Este SG Permitir la comunicación entre Pods.
Entrante TCP 22 SG del plano de control Permite el uso de túneles SSH desde el plano de control (para clústeres v1.20 y versiones anteriores).
Saliente TCP 8132 SG del plano de control Permitir conexiones de Konnectivity al plano de control (para clústeres v1.21 y versiones posteriores).
Entrante TCP 443 SG del plano de control Permite conexiones del plano de control a Kubelet.
Entrante TCP 10250 SG del plano de control Permite conexiones del plano de control a Kubelet.
Saliente TCP Todos Este SG Permitir la comunicación entre Pods.
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente