Configurar Secure RDP usando un Windows Bastion Host ☁️

Madeline Scarlett
GDG IPN
Published in
10 min readSep 29, 2020

Lab 4 del quest “Cloud Architecture-Design, Implement, and Manage” de Qwiklabs.

¡Hola galera! 🤘

En este post, continuaremos con el cuarto laboratorio del quest Cloud Architecture-Design, Implement, and Manage”.

Recuerda que estos posts son por si llegas a tener alguna duda mientras te encuentras realizando el quest. Sin embargo, se trata de poner a prueba lo que aprendiste, por lo que te recomiendo intentar hacerlo sin ayuda y después checar la solución.

El objetivo de este lab es crear una nueva VPC para alojar servicios de Windows de producción seguros. Crear un host de Windows conectado a una subred en la VPC creada con una interfaz de red sólo interna. Crear un host bastión de Windows (jump box) con una interfaz de red accesible externamente. Así como configurar las reglas de los firewalls para permitir la administración del host seguro de Windows desde Internet usando el host bastión como un cuadro de salto.

Sin más preámbulo, comencemos con el lab…

Inicialmente el lab proporciona un proyecto en GCP. Para comenzar a trabajar en este proyecto precisas iniciar el lab e ingresar con el usuario y contraseña que se te asignó (como buena práctica, te recomiendo iniciar en una ventana de incógnito para evitar confusiones con tu cuenta personal y evitarte eliminar la cuenta que se te asigna temporalmente cada que finalizas un lab).

Panel con los datos de login.

Creación de una VPC

Estando dentro de GCP, lo primero que debes hacer es crear es una VPC Network (VPC Network > VPC Networks > Create a VPC Network). Nombra a la VPC securenetwork, luego crea una nueva subred de VPC dentro de securenetwork.
Elige la región us-central1, o busca la región más cercana a tu ubicación.
Para el rango de direcciones IP utiliza la dirección IP privada 192.168.16.0/20, con máscara de /20 que te permitirá un número de host de 4094.
Haz clic en Crear.

Configuración de la VPC.

Hasta este punto ya puedes marcar como realizada la primera y segunda instrucción que se pide:
Se ha creado una nueva VPC no predeterminada. ✅
La nueva VPC contiene una nueva subred dentro de ella. ✅

Configuración de la reglas de Firewall

Selecciona la subred creada, securenetwork. Ve a las reglas de Firewall.

Panel de la VCP securenetwork.

Crea una regla de Firewall con la siguiente configuración:

Nombre: secure-allow-rdp
Target tags: rdp
Source IP ranges: 0.0.0.0/0
Puertos y protocolos específicos: tcp 3389

Configuración de la regla de Firewall.
Configuración de la regla de Firewall.

El protocolo RDP utiliza por defecto el puerto TCP 3389 en el servidor para recibir peticiones. Es por ello que se utiliza este puerto, dado que más adelante vas a conectarte remotamente a las instancias.

Ya puedes marcar como realizada la tercera tarea que pide el laboratorio: Existe una regla de firewall que permite el tráfico del puerto TCP 3389 (para RDP). ✅

Crear instancias VM

El laboratorio pide que se creen dos instancias: vm-securehost y vm-bastionhost.

Configuración de la instancia vm-securehost
Debes implementar una instancia de servidor de Windows 2016 llamada vm-securehost con dos interfaces de red. La primera interfaz de red con una conexión única interna a la nueva subred de VPC (securenetwork) y la segunda interfaz de red con una conexión única interna a la red de VPC predeterminada. Esta instancia es el servidor seguro.

Nombre: vm-securehost
Región: us-central1
Zona: us-central1-a
Series: N1
Tipo de máquina: n1-standard-2

Configuración de la instancia vm-securehost.

En la configuración de disco de inicio (boot disk), elige la siguiente configuración. Se eligen estos valores ya que el lab pide implementar una instancia de servidor de Windows 2016.

Sistema operativo: Windows Server
Versión: Windows Server 2016 Datacenter
Tamaño (GB): 150

Configuración del disco de inicio.

Permite el tráfico HTTP para lograr que la instancia sea accesible a través de HTTP desde Internet.
Despliega el apartado de Management, security, disks, networking, sole tenancy y en Networking configura las etiquetas:

Network tags: rdp

Y en el apartado de Network interfaces edita la que se encuentra por defecto, presiona el lápiz que tiene a la derecha para hacerlo.

Configuración de las interfaces.

La primera interfaz de red debe tener una conexión única interna a la nueva subred de VPC (securenetwork), esto indica que no tendrá IP externa y debe estar dentro de la VPC que creaste. Utiliza la siguiente configuración para lograrlo:

Network: securenetwork
Subnetwork: securenetwork (192.168.16.0/20)
IP externa: None

Configuración de la primera interfaz de red de la instancia vm-securehost.

Clic en Done y agrega una nueva interfaz de red.

Para la segunda interfaz de red se pide que incluya una conexión única interna a la red de VPC predeterminada, esto indica que no tendrá IP externa y debe estar dentro de la VPC predeterminada. Utiliza la siguiente configuración para lograrlo:

Network: default
Subnetwork: securenetwork (10.128.0.0/20)
IP externa: None

Configuración de la segunda interfaz de red de la instancia vm-securehost.

Ya puedes marcar como realizada la quinta tarea que pide el laboratorio: Existe una instancia informática de Windows llamada vm-securehost que no tiene una dirección IP pública. ✅

Configuración de la instancia vm-bastionhost
Para la segunda instancia se pide implementar una instancia de servidor de Windows 2016 llamada vm-bastionhost con dos interfaces de red. La primera interfaz de red debe conectarse a la nueva subred de VPC (securenetwork) con una dirección pública efímera (NAT externa) y la segunda interfaz de red con una conexión solo interna a la red de VPC predeterminada. Esta instancia es la caja de salto o el anfitrión bastión.

Nombre: vm-bastionhost
Región: us-central1
Zona: us-central1-a
Series: N1
Tipo de máquina: n1-standard-2

Configuración de la instancia vm-bastionhost.

En la configuración de disco de inicio (boot disk), elige la siguiente configuración. Se eligen estos valores ya que el lab pide implementar una instancia de servidor de Windows 2016.

Sistema operativo: Windows Server
Versión: Windows Server 2016 Datacenter
Tamaño (GB): 150

Configuración del disco de inicio.

Permite el tráfico HTTP para lograr que la instancia sea accesible a través de HTTP desde Internet.
Despliega el apartado de Management, security, disks, networking, sole tenancy y en Networking configura las etiquetas:

Network tags: rdp

Y en el apartado de Network interfaces edita la que se encuentra por defecto, presiona el lápiz que tiene a la derecha para hacerlo.

Configuración de las interfaces.

La primera interfaz de red debe conectarse a la nueva subred de VPC (securenetwork) con una dirección pública efímera (NAT externa), esto indica que tendrá IP externa y debe estar dentro de la VPC que creaste. Utiliza la siguiente configuración para lograrlo:

Network: securenetwork
Subnetwork: securenetwork (192.168.16.0/20)
IP externa: Ephemeral

Clic en Done y agrega una nueva interfaz de red.

Para la segunda interfaz de red se pide una conexión solo interna a la red de VPC predeterminada, esto indica que no tendrá IP externa y debe estar dentro de la VPC predeterminada. Utiliza la siguiente configuración para lograrlo:

Network: default
Subnetwork: securenetwork (10.128.0.0/20)
IP externa: None

En este punto ya puedes marcar como realizada la cuarta tarea que pide el laboratorio: Existe una instancia informática de Windows llamada vm-bastionhost que tiene una dirección IP pública a la que se aplica la regla de firewall del puerto TCP 3389. ✅

Hasta el momento debes tener las siguientes instancias:

VM instancias.

Probar el servicio RDP

Para el último paso te vas a conectar vía remoto a las instancias. Para obtener las credenciales de acceso por instancia utiliza los siguientes comandos en Cloud Shell:

gcloud compute reset-windows-password vm-bastionhost — user app_admin — zone us-central1-a

En este caso, obtuviste las credenciales de la instancia vm-bastionhost. Presta atención a la dirección ip, password y username ya que los utilizarás en los siguientes pasos.

Credenciales de acceso de la instancia vm-bastionhost.

En tu computadora busca la Conexión a Escritorio remoto. Aquí es donde utilizarás las credenciales de acceso de la instancia vm-bastionhost. Recuerda que esta instancia es la caja de salto o el anfitrión bastión.

Herramienta para la conexión remota.

En Cloud Shell se encuentran las credenciales de acceso de la instancia vm-bastionhost copia la ip_address y pégala en el panel de Conexión a Escritorio remoto.

Conexión remota a la instancia vm-bastionhost.

Da clic en Conectar. Si te muestra algún error da clic en Mostrar opciones y clic de nuevo en Conectar. Esto debería mandarte al panel de Seguridad de Windows, donde deberás utilizar el usuario y contraseña que tienes en Cloud Shell.

Conexión remota a la instancia vm-bastionhost.

Si te aparece alguna ventana sólo acepta y todo continuará como debe.
Espera a que cargué y deberás obtener una pantalla como la siguiente:

Instancia vm-bastionhost.

Como puedes observar, ya te encuentras conectado vía remota a la instancia vm-bastionhost.

Para conectarte a la instancia vm-securehost, regresa a la consola de GCP y en Cloud shell escribe los siguientes comandos.

gcloud compute reset-windows-password vm-securehost --user app_admin2 --zone us-central1-a

Presta atención a la dirección ip, password y username ya que los utilizarás para la conexión remota.

Credenciales de acceso de la instancia vm-securehost.

A diferencia de la conexión con la instancia vm-bastionhost, no buscarás la herramienta de conexión remota en tu computadora sino desde la instancia de vm-bastionhost a la que te habías conectado en pasos anteriores.

Busca la herramienta, sólo precisas escribir “Remote” y automáticamente saldrá la herramienta que necesitas.

Instancia vm-securehost.

Se te desplegará el panel de Remote Desktop Connection, donde deberás ingresar las credenciales de la instancia vm-securehost.

Conexión remota a la instancia vm-securehost.

Regresa a la consola de GCP y ve a Compute Enginee. Copia la dirección IP interna de la instancia vm-securehost.

Dirección IP interna de vm-securehost.

Vuelve a la instancia vm-bastionhost remota y escribe la dirección ip interna que copiaste.

Da clic en Conectar, si te muestra algún error da clic en Mostrar opciones y clic de nuevo en Conectar. Esto debería mandarte al panel de Seguridad de Windows, donde deberás utilizar el usuario y contraseña que tienes en Cloud Shell.

Conexión remota a la instancia vm-securehost.

Si te aparece alguna ventana sólo acepta y todo continuará como debe.
Espera a que cargué y deberás obtener una pantalla como la siguiente:

Instancia vm-securehost.

Listo, ya lograste la conexión con la vm-securehost utilizando un jump box.

El último paso pide que la instancia vm-securehost ejecute el software del servidor web Microsoft IIS. En el siguiente paso lo vas a instalarlo.

Elige la opción Add roles and features.

Instalación de servidor web Microsoft IIS

Te aparecerán distintas configuraciones, para este lab no se precisa entrar en detalle, por lo tanto sólo da Next hasta que te aparezca la ventana de Server Roles.

Aquí puedes encontrar el servidor que solicita el lab, seleccionalo. Te aparecerá una ventana emergente, elige Add Features y da Next.

Instalación de servidor web Microsoft IIS.

Continua dando Next hasta que encuentres la pantalla de Confirmation, donde deberás dar clic en Install para instalar el servidor web Microsoft IIS.

Instalación de servidor web Microsoft IIS.

Espera a que termine de instalarse y da clic en Close.

Instalación de servidor web Microsoft IIS.

Al finalizar podrás ver que el servidor ya se encuentra instalado.

Instalación de servidor web Microsoft IIS.

Esta es la última actividad que pide el lab, marca como realizada la instrucción: Vm-securehost está ejecutando el software del servidor web Microsoft IIS. ✅

Conclusiones

En este laboratorio pusiste a prueba tus conocimientos esenciales de VPC Networks.

  1. Creaste una VPC para alojar servicios de Windows de producción seguros.
  2. Creaste un host de Windows conectado a una subred en la VPC creada con una interfaz de red solo interna.
  3. Creaste un host bastión de Windows (jump box) con una interfaz de red accesible externamente.
  4. Configuraste las reglas de los firewalls para permitir la administración del host seguro de Windows desde Internet usando el host bastión como un cuadro de salto.

¡Felicitaciones! Terminaste con éxito el cuarto lab del quest Cloud Architecture-Design, Implement, and Manage.

Hazme saber que este tipo de contenido te gusta o sirve con tus claps. No te limites, puedes dejarme +50 clap si te encantó. 👏

Sígueme en mis redes sociales para más contenido: Intagram, Facebook, LinkedIn, Medium y Twitter.

Y si tienes alguna duda, con confianza puedes mandarme mensaje, trataré de resolver todas tus preguntas.

--

--

Madeline Scarlett
GDG IPN
Editor for

Cloud Engineer, GDG IPN Organizer, WTM Ambassador, Telematic Engineering Student, #IamRemarkable Ambassador 🤘