Puntos de control
Create a Cloud Storage bucket and upload an object
/ 30
Create a Load Balancer
/ 30
Delete the object from Cloud Storage bucket
/ 20
Create Edge Security Policy for your CDN Cache and Validate Policy
/ 20
Defiende el almacenamiento en caché perimetral con Cloud Armor
GSP878
Descripción general
Google Cloud Armor y sus políticas de seguridad perimetral te permiten restringir el acceso a objetos almacenados en caché en Cloud CDN (red de distribución de contenidos) y Cloud Storage. Las políticas de seguridad perimetral se implementan y se aplican en el perímetro más externo de la red de Google, más arriba de donde se encuentra la caché de Cloud CDN. Las razones para hacer esto incluyen garantizar que tus usuarios no accedan a objetos en buckets de almacenamiento desde ubicaciones geográficas restringidas, o asegurarse de que tu distribución de medios esté filtrando según las ubicaciones geográficas para las que tienes licencia.
En este lab, crearás un bucket de Google Cloud Storage, subirás una imagen a él, lo vincularás a un balanceador de cargas y, luego, habilitarás políticas de seguridad perimetrales de Cloud CDN y Cloud Armor en él.
Qué aprenderás
En este lab, aprenderás a realizar las siguientes tareas:
- Configurar un bucket de Cloud Storage con contenido que se puede almacenar en caché
- Crear una política de seguridad perimetral para proteger el contenido
- Validar que la política de seguridad perimetral esté funcionando como se espera
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
- Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón Abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debe usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta. -
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}} También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}} También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia Cuenta de Google podría generar cargos adicionales. -
Haga clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Antes de comenzar
- En Cloud Shell, configura tu ID del proyecto y crea una variable de entorno para él:
Tarea 1. Crea un bucket de Cloud Storage y sube un objeto
El bucket de Cloud Storage será la fuente de origen para Cloud CDN.
-
Ve al menú de navegación () de la consola > Cloud Storage > Buckets.
-
Para crear un nuevo bucket de Cloud Storage, haz clic en CREAR.
-
Establece el nombre del bucket como
-bucket . -
Haz clic en Continuar.
-
En Tipo de ubicación, selecciona
Región
y elige. -
Haz clic en Continuar.
-
La clase de almacenamiento predeterminada para tu bucket es
Estándar
. Haz clic en Continuar. -
Desmarca la casilla de verificación
Aplicar la prevención de acceso público a este bucket
debajo de Impedir el acceso público. -
Elige Detallado en Control de acceso.
-
Haz clic en Continuar.
-
Haz clic en Crear.
Eso es todo. Acabas de crear un bucket de Cloud Storage.
Sube un objeto al bucket
Ahora, sube un objeto al bucket. Lo usarás más tarde. De forma predeterminada, los buckets de Cloud Storage son privados. Como parte de este lab, pondrás el objeto a disposición de Internet.
- Ejecuta el siguiente comando en Cloud Shell para descargar una imagen en Cloud Shell. Se usa una imagen de la página principal de Google para este lab.
- Usa el comando
gsutil cp
para subir la imagen de Cloud Shell al bucket que creaste:
- Quita la imagen descargada de Cloud Shell:
-
Localiza el objeto que subiste al bucket, para ello, navega a Cloud Storage > Buckets >
. -
Ahora, haz clic en los tres puntos en el lado derecho del objeto que subiste y haz clic en Editar acceso.
-
Haz clic en Agregar entrada y establece la entidad como Pública desde la lista desplegable.
-
Haz clic en Guardar.
Haz clic en Revisar mi progreso para verificar el objetivo.
Tarea 2. Crea un balanceador de cargas
Cloud CDN y Cloud Armor son componentes que se pueden asociar al Cloud Load Balancing global de Google. En esta sección, crearás un balanceador de cargas HTTP.
- Navega a Redes > Servicios de red > Balanceo de cargas.
- Haz clic en + CREAR BALANCEADOR DE CARGAS.
- En Tipo de balanceador de cargas, selecciona Balanceador de cargas de aplicaciones (HTTP/HTTPS) y haz clic en SIGUIENTE.
- En Orientado al público o para uso interno, selecciona Orientado al público (externo) y haz clic en SIGUIENTE.
- En Implementación global o de una sola región, selecciona Ideal para cargas de trabajo globales y haz clic en SIGUIENTE.
- En Generación de balanceadores de cargas, selecciona Balanceador de cargas de aplicaciones externo global y haz clic en SIGUIENTE.
- Haz clic en el botón CONFIGURAR.
- Asigna el nombre
edge-cache-lb
al balanceador de cargas.
Crea la configuración de frontend
Sigue estos pasos para crear la configuración de frontend:
-
Haz clic en Configuración de frontend.
-
Para la configuración de frontend, usa HTTP (aunque HTTPS también funciona si tienes un certificado) y una dirección IP efímera, además, asegúrate de tener seleccionada la red de nivel Premium. Esa es la configuración predeterminada.
-
Haz clic en Listo.
Crea la configuración de backend
Sigue estos pasos para crear la configuración de backend:
-
Haz clic en Configuración de backend.
-
En Servicios y buckets de backend, haz clic en Crear un bucket de backend.
-
Establece el Nombre del bucket de backend como
lb-backend-bucket
. -
En el siguiente campo, selecciona el bucket de Cloud Storage que creaste antes, para ello, haz clic en el botón Explorar.
-
Deja todos los demás valores con su configuración predeterminada.
-
Haz clic en Crear.
Crea las reglas de host y de ruta
Sigue estos pasos para crear las reglas de host y de ruta:
-
Haz clic en Reglas de enrutamiento en el lado izquierdo.
-
Selecciona Regla simple de host y ruta de acceso en Modo para enviar solicitudes al bucket. Esta es la opción predeterminada.
Revisa y crea el balanceador de cargas HTTP
Sigue estos pasos para revisar y crear el balanceador de cargas HTTP:
- Haz clic en Revisar y finalizar.
- Revisa los Servicios de backend y el Frontend.
- Haz clic en Crear.
Obtén la IP del balanceador de cargas
Sigue estos pasos para obtener la IP del balanceador de cargas en la consola:
- Haz clic en el nombre del balanceador de cargas en la lista de balanceadores de cargas del proyecto. Anota la dirección IPv4 del balanceador de cargas para la siguiente tarea. Refiérete a ella como
[LOAD_BALANCER_IP]
.
Consulta el balanceador de cargas
Después de unos minutos, consulta en el balanceador de cargas por el objeto que subiste. Necesitarás la dirección IP del balanceador de cargas y el nombre de la imagen.
- Ejecuta este comando en Cloud Shell y reemplaza LOAD_BALANCER_IP por la dirección IPv4 del balanceador de cargas:
Resultado:
- Ejecuta algunas consultas con este comando:
Confirma el contenido entregado por Cloud CDN
- Valida que tu contenido se está entregando desde la CDN a través de la CDN o la supervisión del balanceo de cargas, para ello, navega a Servicios de red > Cloud CDN.
Deberías obtener una tasa de aciertos cercana a un 100%.
Haz clic en Revisar mi progreso para verificar el objetivo.
Tarea 3. Borra el objeto del bucket de Cloud Storage
Ahora que la caché se completó, borra el objeto del bucket. Esto reforzará que estás aplicando la política a la caché y no al backend.
-
Navega a Cloud Storage > Buckets >
-bucket > Objetos . -
Selecciona el objeto y haz clic en el botón Borrar en la parte superior para borrarlo.
-
Haz clic en Borrar en el mensaje.
Haz clic en Revisar mi progreso para verificar el objetivo.
Tarea 4. Crea una política de seguridad perimetral
Las políticas de Cloud Armor se comprueban fuera del balanceador de cargas HTTP. Una vez que se implemente la política de Cloud Armor, puedes asociarla con uno o más servicios de backend del balanceador de cargas HTTP o recursos de bucket, que se denominan Destinos.
- Navega a Seguridad de red > Políticas de Cloud Armor y haz clic en Crear política.
- Establece los siguientes valores y deja el resto con la configuración predeterminada, luego, haz clic en Próximo paso:
Propiedad | Valor (escribe el valor o selecciona la opción como se especifica) |
---|---|
Nombre | edge-security-policy |
Tipo de política | Política de seguridad perimetral |
Acción de la regla predeterminada | Rechazar |
- En la sección Aplica políticas a los objetivos, haz clic en Agregar destino y establece los siguientes valores:
Propiedad | Valor |
---|---|
Tipo 1 | Bucket de backend (balanceador de cargas de aplicaciones externo) |
Destino del bucket de backend 1 | lb-backend-bucket |
-
Haz clic en Listo.
-
Haz clic en Crear política.
Valida la política de seguridad perimetral
Ahora que creaste una política de seguridad perimetral frente al bucket de backend, valida que funciona según lo esperado.
Comprueba la política de seguridad
Después de unos minutos, puedes comprobar que se esté ejecutando la política de Cloud Armor.
En la línea de comandos, ejecuta el siguiente comando, que genera un error 403:
El error 403 ocurre cuando no tienes permiso para acceder a una página web o un elemento en un servidor web.
Resultado:
Investiga los registros
A continuación, comprueba los registros para ver la política de seguridad perimetral aplicada.
-
Navega a Observabilidad > Logging > Explorador de registros.
-
Ingresa el siguiente fragmento en el cuadro de consulta y haz clic en Ejecutar consulta:
- Observa la
respuesta 403
y la política de seguridad aplicada.
Haz clic en Revisar mi progreso para verificar el objetivo.
Quita la política de seguridad
Para comprobar que el objeto se está entregando desde la caché de la CDN, quita la política de seguridad de Cloud Armor y consulta el objeto. El objeto de origen se quitó de Cloud Storage, lo que demuestra que el objeto se está entregando desde la caché perimetral.
- Navega a Seguridad de red > Políticas de Cloud Armor > edge-security-policy > Destinos.
- Selecciona el destino
lb-backend-bucket
y haz clic en Quitar para eliminar el bucket de destino. Confirma la eliminación.
- Espera unos minutos y, luego, envía otro
curl
al recurso en el bucket de Cloud Storage:
Esta vez, obtendrás una respuesta 200
. La página web funciona como corresponde.
Resultado:
Inténtalo un par de veces más y comprueba si obtienes un código de estado 403.
¡Felicitaciones!
Creaste correctamente un bucket de Cloud Storage, subiste una imagen a él, lo vinculaste a un balanceador de cargas y, luego, habilitaste Cloud CDN y políticas de seguridad perimetrales en él.
Última actualización del manual: 16 de julio de 2024
Prueba más reciente del lab: 16 de julio de 2024
Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.