Túneles y herramientas
¿Qué son los túneles?
La tunelización es un concepto de red que implica la creación de una conexión segura y directa entre dos redes o dispositivos independientes. La creación de un túnel permite transmitir datos de forma privada a través de diferentes redes o internet. Vamos a analizar un escenario en el que la tunelización es útil.
Los problemas
Un equipo de desarrollo se distribuye entre varias ubicaciones. El equipo debe interactuar con un servidor remoto que contenga recursos y aplicaciones esenciales. Es fundamental proteger el acceso eficaz. El servidor que se hospeda en el centro de datos de su empresa contiene herramientas de desarrollo y bases de datos vitales necesarias para el trabajo del equipo. Debido a las estrictas directivas de seguridad, el acceso directo a este servidor desde redes externas está muy restringido. En tal situación, las soluciones tradicionales, como las redes privadas virtuales (VPN) pueden ser complicadas y provocar conexiones lentas, lo que dificulta la productividad para los desarrolladores.
Casos de uso para túneles
En el escenario anterior, un desarrollador debe trabajar en una aplicación que dependa de los servicios y bases de datos ubicados en la red interna de la empresa. En lugar de trabajar con VPN o exponer servicios confidenciales a Internet, el desarrollador puede usar la tunelización para establecer una conexión segura y directa desde su entorno local al servidor remoto. Este enfoque permite el acceso sin problemas a archivos, bases de datos y servicios como si el desarrollador estuviera conectado físicamente al servidor remoto. La tunelización facilita un flujo de trabajo más eficaz al permitir a los desarrolladores editar código, realizar la depuración y ejecutar tareas directamente en el servidor remoto, todo ello dentro de su entorno de desarrollo preferido.
Extensión Remote - Tunnels de Visual Studio Code
El uso de la tunelización ofrece una solución simplificada a muchos desafíos. Las extensiones ahora están disponibles para herramientas de desarrollo como Visual Studio Code. La extensión Remote - Tunnels de Visual Studio Code puede eliminar eficazmente la necesidad de que el código fuente esté en el equipo cliente de Visual Studio Code porque la extensión ejecuta comandos y otras extensiones directamente en el equipo remoto. Este enfoque es posible debido a Visual Studio Code Server. Este servicio se puede ejecutar en una máquina de desarrollo remoto, como el equipo de escritorio o una máquina virtual (VM). Permite conectarse de forma segura a la máquina remota desde cualquier lugar a través de un cliente local de Visual Studio Code, sin necesidad del protocolo Secure Shell.
Configuración de la extensión Remote - Tunnels de Visual Studio Code.
Hay dos métodos disponibles para configurar túneles:
Escritorio de Visual Studio Code: Active la tunelización a través de la interfaz de usuario (UI) del Escritorio de Visual Studio Code. Visual Studio Code es un editor de código redefinido y optimizado para compilar y depurar aplicaciones web y en la nube modernas.
Interfaz de línea de comandos (CLI) de código: Ejecute el comando túnel disponible en la CLI de código. La CLI le permite controlar cómo se abre el editor. Desde la línea de comandos, se usa la CLI al realizar tareas como abrir archivos, instalar extensiones, cambiar el idioma de visualización y generar diagnósticos mediante opciones de línea de comandos (modificadores).
Si no es factible instalar el Escritorio de Visual Studio Code en el equipo remoto, la CLI ofrece una alternativa viable. Por otro lado, si ya está involucrado en tareas en Visual Studio Code, usar la interfaz de usuario de Escritorio de Visual Studio Code para iniciar la tunelización de la máquina actual es una opción cómoda.
Independientemente del método que elija, el resultado en términos de funcionalidad de tunelización es idéntico. Seleccione el enfoque que mejor se adapte a sus necesidades.
Preparación para los ejercicios
En los próximos ejercicios, usará el Escritorio de Visual Studio Code y la CLI de código para configurar túneles. Para prepararse para estos ejercicios, debe tener código de ejemplo en un archivo y una carpeta disponibles en el equipo local. Vamos a profundizar.
Cree una carpeta TestUI en el disco duro.
Cree una carpeta TestCLI, repitiendo el paso anterior.
Cree un archivo index.html con el código de prueba siguiente:
<!DOCTYPE html> <html> <head> <title>Sample Page</title> </head> <body> <h1>Welcome to My Sample Page</h1> <p>This is a simple HTML page with some sample content.</p> </body> </html>Copie el archivo en las carpetas TestUI y TestCLI.