Para proteger aún más los recursos de Compute Engine, puedes hacerlo mediante los Controles del servicio de VPC.
Los controles del servicio de VPC te permiten definir un perímetro de seguridad para los recursos de Compute Engine. El perímetro de servicio limita la importación y exportación de recursos y sus datos asociados dentro del perímetro definido.
Cuando creas un perímetro de servicio, selecciona uno o más proyectos para protegerlos. Las solicitudes entre proyectos dentro del mismo perímetro no se ven afectadas. Todas las API existentes continúan funcionando siempre que los recursos involucrados estén dentro del mismo perímetro de servicio. Ten en cuenta que las funciones y políticas de IAM aún se aplican dentro de un perímetro de servicio.
Cuando un perímetro protege un servicio, este no puede realizar solicitudes dentro del perímetro a ningún recurso fuera del perímetro. Esto incluye la exportación de recursos desde el interior hacia el exterior del perímetro. Las solicitudes de recursos protegidos desde el exterior de un perímetro son posibles si cumplen ciertos criterios. Para obtener más información, consulta Descripción general en la documentación de controles del servicio de VPC.
Cuando se realiza una solicitud que infringe el perímetro de servicio, la solicitud falla con el siguiente error:
"code": 403, "message": "Request is prohibited by organization's policy."
Beneficios de seguridad
Los controles del servicio de VPC brindan los siguientes beneficios de seguridad:
- El acceso a las operaciones sensibles de la API de Compute Engine, como el cambio de reglas de firewall, se puede restringir a un acceso privado desde redes autorizadas o a direcciones IP permitidas.
- Las imágenes personalizadas y las instantáneas del disco persistente de Compute Engine se pueden restringir a un perímetro.
- Los metadatos de la instancia de Compute Engine actúan como un sistema de almacenamiento limitado. El acceso a los metadatos de la instancia a través de la API de Compute Engine está limitado por la política de perímetro de servicio, lo que mitiga los riesgos de robo de datos mediante este canal.
Además, ahora se puede acceder a la API de Compute Engine en la IP virtual restringida (VIP). Esto simplifica la configuración de enrutamiento y Cloud DNS para los clientes que están dentro del perímetro y que necesitan acceso a esta API.
Limitaciones
- Los firewalls jerárquicos no se ven afectados por los perímetros de servicio.
- Las operaciones de intercambio de tráfico de VPC no imponen restricciones en el perímetro de servicio de VPC.
- El método de la API
projects.ListXpnHosts
para la VPC compartida no impone restricciones de perímetro de servicio en los proyectos que se muestran.
Permisos
Asegúrate de tener las funciones adecuadas a fin de administrar la configuración del perímetro de los controles del servicio de VPC para la organización.
Configura un perímetro de servicio
Sigue las instrucciones en Crea un perímetro de servicio en la documentación de controles del servicio de VPC para configurar un perímetro de servicio.
Si configuras un perímetro de servicio mediante Google Cloud CLI, especifica compute.googleapis.com
con la marca --restricted-services
para restringir la API de Compute Engine.
Agrega Compute Engine como un servicio restringido a un perímetro existente
Si tienes un perímetro de servicio existente y deseas agregar Compute Engine al perímetro de servicio, sigue las instrucciones en Actualiza un perímetro de servicio en la documentación de controles del servicio de VPC.
Crea una VM con controles del servicio de VPC
Después de configurar un perímetro de servicio, no es necesario que realices ningún cambio en las llamadas a la API o las herramientas de API existentes, siempre que los recursos afectados en las solicitudes estén incluidos en el mismo perímetro de servicio. Por ejemplo, con el siguiente comando, se crea una instancia de VM con una imagen de ejemplo. En este caso, el comando falla si el IMAGE_PROJECT
está fuera del perímetro de servicio (y no hay un puente perimetral de servicio entre los proyectos).
gcloud compute instances create new-instance \
--image-family IMAGE_FAMILY --image-project IMAGE_PROJECT \
--zone us-central1-a --machine-type n1-standard-72
Si creas una VM a partir de una plantilla de instancias, todos los recursos a los que se haga referencia en la plantilla de instancias deben pertenecer al mismo perímetro de servicio en el que se ejecuta el comando o estar conectados mediante un puente perimetral de servicio. La solicitud falla si la plantilla de instancia hace referencia a un recurso fuera del perímetro de servicio, incluso si la plantilla de instancia en sí está dentro del perímetro.
Para ver una situación de ejemplo de un cliente de Compute Engine fuera del perímetro con el que se crea un disco de Compute Engine fuera del perímetro con una clave de Cloud KMS dentro del perímetro, consulta Ejemplos de solicitudes a la API que se permiten mediante la combinación de las reglas de entrada y salida.
Proyectos de imagen pública
Google proporciona y mantiene un conjunto de imágenes públicas para las instancias. Estos proyectos están incluidos de manera implícita en todos los perímetros de seguridad. No debes realizar ninguna acción adicional para usar estas imágenes.
A continuación, se muestra una lista de proyectos que se incluyen de forma automática en todos los perímetros de seguridad:
centos-cloud
cos-cloud
debian-cloud
fedora-cloud
fedora-coreos-cloud
rhel-cloud
rhel-sap-cloud
rocky-linux-cloud
opensuse-cloud
suse-cloud
suse-byos-cloud
suse-sap-cloud
ubuntu-os-cloud
ubuntu-os-pro-cloud
windows-cloud
windows-sql-cloud
Si usas un proyecto de imagen que no está en esta lista y eliges no incluir el proyecto de imagen directamente en el perímetro de seguridad, recomendamos que primero hagas una copia de todas las imágenes que se usarán en un proyecto separado y, luego, incluyas el proyecto separado en el perímetro de seguridad.
Copia de imágenes con controles del servicio de VPC
Puedes copiar imágenes de un proyecto a otro si ambos pertenecen al mismo perímetro de servicio. En este ejemplo, DST_PROJECT
y SRC_PROJECT
deben pertenecer al mismo perímetro de servicio para que funcione la solicitud.
gcloud compute images create --project DST_PROJECT IMAGE_NAME \
--source-image SOURCE_IMAGE --source-image-project SRC_PROJECT \
--family IMAGE_FAMILY --storage-location LOCATION
Si eliges no incluir el proyecto de imagen directamente en el perímetro de seguridad, recomendamos que primero hagas una copia de todas las imágenes que se usarán en un proyecto separado y, luego, incluyas el proyecto separado en el perímetro de seguridad.
VPC compartida con controles del servicio de VPC
Cuando se usa la VPC compartida, las restricciones del perímetro de servicio se aplican a todos los proyectos involucrados en una operación determinada. En otras palabras, te recomendamos que te asegures de que el proyecto host y los proyectos de servicio estén dentro del mismo perímetro de servicio cuando una operación incluya recursos distribuidos entre los proyectos host y de servicio.
Intercambio de tráfico entre redes de VPC
El intercambio de tráfico entre redes de VPC permite el intercambio de tráfico de redes de VPC entre dos organizaciones distintas. Debido a que un perímetro de servicio está limitado a proyectos dentro de una organización, los perímetros de servicio no afectan las redes de VPC de intercambio de tráfico.
Firewalls jerárquicos
Los firewalls jerárquicos son firewalls que se configuran fuera de un proyecto (a nivel de la carpeta o de la organización). Las restricciones del perímetro de servicio se aplican a un conjunto de proyectos dentro de un perímetro, por lo que no se aplican a firewalls jerárquicos.
Grupos de instancias administrados
Los grupos de instancias administrados te ayudan a administrar un grupo de instancias de VM como una sola entidad. Los grupos de instancias administrados (MIG) usan plantillas de instancias para crear VM, y se aplican todas las restricciones en torno a imágenes o redes y subredes de varios proyectos. Es decir, cuando uses imágenes de otros proyectos, asegúrate de que los proyectos pertenezcan al mismo perímetro o copia las imágenes que necesitas en otro proyecto y, luego, incluye ese proyecto en el perímetro de servicio. Los proyectos de imagen pública que mantiene Google se incluyen de forma automática en todos los perímetros de servicio.
Si quieres usar grupos de instancias con VPC compartida, asegúrate de que los proyectos estén en el mismo perímetro de seguridad.
¿Qué sigue?
- Obtén más información sobre los controles de servicio de VPC.
- Obtén más información sobre los servicios admitidos por las IP virtuales restringidas.
- Obtén más información sobre los pasos de configuración del perímetro de servicio.