Puntos de control
Create the blue server
/ 15
Create the green server
/ 15
Install Nginx and customize the welcome page
/ 30
Create the tagged firewall rule
/ 15
Create a test-vm
/ 10
Create a Network-admin service account
/ 15
Redes de VPC: Cómo controlar el acceso
GSP213
Descripción general
En el mundo real, necesitas proteger los datos sensibles y garantizar la disponibilidad continua de tus aplicaciones web todo el tiempo. Aprende a usar la red de VPC de Google Cloud para crear una implementación de servidores web más segura, escalable y administrable con tu entorno de Google Cloud.
En este lab, crearás dos servidores web nginx en la red de VPC predeterminada y controlarás el acceso HTTP externo a los servidores web a través del uso de reglas de firewall etiquetadas. Luego, explorarás roles de IAM y cuentas de servicio.
- Tener dos servidores web ofrece redundancia: si uno de ellos falla, el otro puede seguir entregando tráfico web, lo que evita el tiempo de inactividad.
- Las reglas de firewall etiquetadas proporcionan un control detallado sobre el tráfico que puede llegar a determinados servidores web.
- Con la asignación de permisos a una cuenta de servicio para realizar tareas, se respeta el principio de privilegios mínimos y se mantienen protegidos los recursos de Cloud.
Objetivos
En este lab, aprenderás a realizar las siguientes tareas:
- Crear un servidor web de nginx en una red de VPC
- Crear reglas de firewall etiquetadas
- Crear una cuenta de servicio con roles de IAM
- Explorar los permisos de los roles de Administrador de red y Administrador de seguridad
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.
Activa Cloud Shell
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
- Haz clic en Activar Cloud Shell en la parte superior de la consola de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
- Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
-
Haz clic en Autorizar.
-
Ahora, el resultado debería verse de la siguiente manera:
Resultado:
- Puedes solicitar el ID del proyecto con este comando (opcional):
Resultado:
Resultado de ejemplo:
gcloud
, consulta la guía con la descripción general de gcloud CLI en Google Cloud.
Tarea 1: Crea los servidores web
En esta sección, crearás dos servidores web (blue y green) en la red de VPC predeterminada. Luego, instalarás nginx en los servidores web y modificarás la página de bienvenida para distinguir entre servidores.
Crea el servidor blue
Crea el servidor blue con una etiqueta de red.
-
En la consola de Cloud, navega al menú de navegación () > Compute Engine > Instancias de VM.
-
Haz clic en Crear instancia.
-
Configura los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad Valor (escribe el valor o selecciona la opción como se especifica) Nombre blue Región Zona Para obtener más información sobre las regiones y las zonas disponibles, en la guía de regiones y zonas de Compute Engine de Google Cloud, consulta la sección Regiones y zonas disponibles en las guías de Compute Engine.
-
Haz clic en Opciones avanzadas > Redes.
-
En Etiquetas de red, escribe
web-server
.
- Haz clic en Crear.
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Crea el servidor green
Crea el servidor green sin una etiqueta de red.
-
En la consola, en la página Instancias de VM, haz clic en Crear instancia.
-
Configura los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad Valor (escribe el valor o selecciona la opción como se especifica) Nombre green Región Zona -
Haz clic en Crear.
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Instala Nginx y personaliza la página de bienvenida
Instala Nginx en ambas instancias de VM y modifica la página de bienvenida para distinguir los servidores.
-
En el diálogo Instancias de VM del servidor blue, haz clic en SSH para iniciar una terminal y conectarte.
-
En la terminal SSH del servidor blue, ejecuta el siguiente comando para instalar Nginx:
- Abre la página de bienvenida en el editor nano:
- Reemplaza la línea
<h1>Welcome to nginx!</h1>
por<h1>Welcome to the blue server!</h1>
. - Presiona CTRL + O, INTRO, CTRL + X.
- Verifica el cambio:
El resultado debería contener lo siguiente:
- Cierra la terminal SSH del servidor blue:
Repite los mismos pasos para el servidor green:
- En el caso del servidor green, haz clic en SSH para iniciar una terminal y conectarte.
- Instala Nginx:
- Abre la página de bienvenida en el editor nano:
- Reemplaza la línea
<h1>Welcome to nginx!</h1>
por<h1>Welcome to the green server!</h1>
. - Presiona CTRL + O, INTRO, CTRL + X.
- Verifica el cambio:
El resultado debería contener lo siguiente:
- Cierra la terminal SSH del servidor green:
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Tarea 2: Crea la regla de firewall
Crea la regla de firewall etiquetada y prueba la conectividad HTTP.
Crea la regla de firewall etiquetada
Crea una regla de firewall que se aplique a las instancias de VM con la etiqueta de red web-server.
- En la consola de Cloud, navega al menú de navegación () > Red de VPC > Firewall.
- Observa la regla de firewall default-allow-internal.
-
Haz clic en Crear regla de firewall.
-
Establece los siguientes valores y deja el resto con la configuración predeterminada.
Propiedad Valor (escribe el valor o selecciona la opción como se especifica) Nombre allow-http-web-server Red predeterminado Destinos Etiquetas de destino especificadas Etiquetas de destino web-server Filtro de origen Rangos de IPv4 Rangos de IPv4 de origen 0.0.0.0/0 Protocolos y puertos Protocolos y puertos especificados; marca tcp, escribe 80, y marca Otros protocolos y escribe icmp.
- Haz clic en Crear.
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Crea la instancia test-vm
Crea la instancia test-vm con la línea de comandos de Cloud Shell.
-
Abre una nueva terminal de Cloud Shell.
-
Ejecuta el siguiente comando para crear una instancia test-vm, en la zona
:
El resultado debería verse así:
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Prueba la conectividad HTTP
Desde test-vm, ejecuta curl
en las direcciones IP interna y externa de los servidores blue y green.
- En la consola, navega al menú de navegación () > Compute Engine > Instancias de VM.
- Observa las direcciones IP interna y externa de los servidores blue y green.
- En test-vm, haz clic en SSH para iniciar una terminal y conectarte.
- Para probar la conectividad HTTP con la IP interna del servidor blue, ejecuta el siguiente comando, en el cual deberás ingresar la IP interna del servidor blue:
Deberías ver el encabezado Welcome to the blue server!
.
- Para probar la conectividad HTTP con la IP interna del servidor green, ejecuta el siguiente comando, en el cual deberás ingresar la IP interna del servidor green:
Deberías ver el encabezado Welcome to the green server!
.
- Para probar la conectividad HTTP con la IP externa del servidor blue, ejecuta el siguiente comando, en el cual deberás ingresar la IP externa del servidor blue:
Deberías ver el encabezado Welcome to the blue server!
.
- Para probar la conectividad HTTP con la IP externa del servidor green, ejecuta el siguiente comando, en el cual deberás ingresar la IP externa del servidor green:
- Presiona CTRL + C para detener la solicitud HTTP.
Puedes verificar el mismo comportamiento desde el navegador. Para ello, abre una pestaña nueva y navega a http://[IP externa del servidor]
.
Tarea 3: Explora los roles de Administrador de red y Administrador de seguridad
Cloud IAM te permite autorizar quién puede tomar medidas sobre recursos específicos, lo que te proporciona control y visibilidad completos para administrar recursos de nube de manera central. Los siguientes roles se usan junto con las herramientas de redes de proyecto único para controlar de manera independiente el acceso de administrador a cada red de VPC:
- Administrador de red: tiene permisos para crear, modificar y borrar recursos de red, excepto reglas de firewall y certificados SSL.
- Administrador de seguridad: tiene permisos para crear, modificar y borrar reglas de firewall y certificados SSL.
Para explorar estos roles, puedes aplicarlos a una cuenta de servicio, que es una Cuenta de Google especial que pertenece a tu instancia de VM, en lugar de a un usuario final individual. En lugar de crear un usuario nuevo, autorizarás a test-vm para que utilice la cuenta de servicio y, así, demuestre los permisos de los roles de Administrador de red y Administrador de seguridad.
Verifica los permisos actuales
Actualmente, test-vm usa la cuenta de servicio predeterminada de Compute Engine, que se habilita en todas las instancias que crean la línea de comandos de Cloud Shell y la consola de Cloud.
Intenta obtener una lista de las reglas de firewall disponibles desde test-vm o trata de borrarlas.
- Regresa a la terminal SSH de la instancia test-vm.
- Intenta obtener una lista de las reglas de firewall disponibles:
El resultado debería verse así:
- Intenta borrar la regla de firewall allow-http-web-server:
- En caso de que se te pregunte si deseas continuar, ingresa Y.
El resultado debería verse así:
Crea una cuenta de servicio
Crea una cuenta de servicio y aplica el rol Administrador de red.
-
En la consola, ve al menú de navegación () > IAM y administración > Cuentas de servicio.
-
Observa la cuenta de servicio predeterminada de Compute Engine.
-
Haz clic en Crear cuenta de servicio.
-
A la cuenta de servicio asígnale el nombre
Network-admin
y haz clic en CREAR Y CONTINUAR. -
En Selecciona un rol, elige Compute Engine > Administrador de red de Compute y haz clic en CONTINUAR y luego en LISTO.
-
Después de crear la cuenta de servicio
Network-admin
, haz clic en los tres puntos ubicados en la esquina derecha y en Administrar claves del menú desplegable. Luego, haz clic en Agregar clave y selecciona Crear nueva clave en el menú desplegable. Haz clic en Crear para descargar la salida de JSON. -
Haz clic en Cerrar.
Se descargará un archivo de claves JSON en tu computadora local. Encuentra ese archivo de claves y súbelo a la VM en un paso posterior.
-
Cambia el nombre del archivo de claves JSON en tu máquina local por credentials.json.
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.
Autoriza la instancia test-vm y verifica los permisos
Autoriza a test-vm para que use la cuenta de servicio Network-admin.
- Regresa a la terminal SSH de la instancia test-vm.
- Para subir credentials.json a través de la terminal SSH de la VM, haz clic en el ícono Subir archivo ubicado en la esquina superior derecha.
- Selecciona credentials.json y súbelo.
- En la ventana Transferencia de archivos, haz clic en Cerrar.
Nota: Si se te solicita, haz clic en Reintentar en el diálogo No se pudo establecer la conexión a través de Cloud Identity-Aware Proxy y vuelve a subir el archivo. - Autoriza la VM con las credenciales que subiste:
- Intenta obtener una lista de las reglas de firewall disponibles:
El resultado debería verse así:
Esto debería funcionar.
- Intenta borrar la regla de firewall allow-http-web-server:
- En caso de que se te pregunte si deseas continuar, ingresa Y.
El resultado debería verse así:
Actualiza la cuenta de servicio y verifica los permisos
Para actualizar la cuenta de servicio Network-admin, proporciona el rol de Administrador de seguridad.
-
En la consola, navega al menú de navegación () > IAM y administración > IAM.
-
Busca la cuenta Network-admin. Enfócate en la columna Nombre para identificar esta cuenta.
-
Haz clic en el ícono de lápiz de la cuenta Network-admin.
-
Cambia el Rol por Compute Engine > Administrador de seguridad de Compute.
-
Haz clic en Guardar.
-
Regresa a la terminal SSH de la instancia test-vm.
-
Intenta obtener una lista de las reglas de firewall disponibles:
El resultado debería verse así:
Esto debería funcionar.
- Intenta borrar la regla de firewall allow-http-web-server:
- En caso de que se te pregunte si deseas continuar, ingresa Y.
El resultado debería verse así:
Esto debería funcionar.
Verifica la eliminación de la regla de firewall
Verifica que ya no tengas acceso HTTP a la IP externa del servidor blue, dado que borraste la regla de firewall allow-http-web-server.
- Regresa a la terminal SSH de la instancia test-vm.
- Para probar la conectividad HTTP con la IP externa del servidor blue, ejecuta el siguiente comando, en el cual deberás ingresar la IP externa del servidor blue:
- Presiona CTRL + C para detener la solicitud HTTP.
¡Felicitaciones!
En este lab, creaste dos servidores web nginx y controlaste el acceso HTTP externo con una regla de firewall etiquetada. Después, creaste una cuenta de servicio, primero con el rol de Administrador de red y, luego, usaste el de Administrador de seguridad para explorar los diferentes permisos de esos roles.
Próximos pasos y más información
Obtén más información sobre las cuentas de servicio y los roles con este lab:
Para obtener información sobre los conceptos básicos de Google Cloud Identity and Access Management, consulta la Descripción general de Google Cloud Identity and Access Management
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 2 de febrero de 2024
Prueba más reciente del lab: 19 de septiembre de 2023
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.