21.9 C
Madrid
jueves, octubre 23, 2025
spot_img
spot_img

Convierta su terminal en una página web compartible con TTYD

¿Alguna vez te has enfrentado en una situación en la que necesitabas mostrarle a determinado exactamente lo que estás haciendo en tu terminal? Tal vez está depurando un problema de servidor con un colega o demostrando una secuencia de comando compleja a un amigo. Claro, podría tomar capturas de pantalla o esculpir su pantalla, pero ¿no sería sorprendente si pudiera compartir su sesión de terminal en vivo a través de un enlace web simple? Este enfoque facilita la colaboración y proporciona visibilidad en tiempo positivo de lo que está sucediendo en su máquina.

Linux ya le ofrece algunas formas de compartir terminales. Por ejemplo, tiene métodos tradicionales como SSH, herramientas como TMUX y pantalla, y herramientas de impresión como Asciinema. Si acertadamente estos métodos funcionan en ciertos casos, a menudo agregan pasos o dependencias adicionales que lo retrasan.

Ahí es donde entra la útil de columna de comandos TTYD. En punto de apremiar a otros a instalar software o meterse con las configuraciones, TTYD convierte su terminal en una página web. Ahora, cualquier persona con el enlace puede rasgar su navegador y ver o incluso interactuar con su sesión.

¿Qué puede hacer Ttyd?

  • TTYD Aproveche libwebsockets y libuv para el rendimiento de rápido rápido.
  • Utiliza WebSockets debajo del capó, lo que mantiene la experiencia suave y receptiva incluso sobre conexiones más débiles.
  • Admite ZModem dibujo para transferencias de archivos y se integra con LRZSZ para deslizar y soltar archivos directamente en el navegador.
  • Incluya oculto SSL/TLS para seguridad, soporte de autenticación.
  • TTYD puede ejecutarse fácilmente en cualquier puerto que desee, y con la compatibilidad de compilación cruzada incluso puede ejecutarlo en una Raspberry Pi.
  • Proporcione soporte incorporado de copia/pegado entre el navegador y el terminal.
  • Puede recortar el número mayor de conexiones concurrentes.
  • Sesiones auto-abiertas en su navegador.
  • Restringir el golpe a un solo cliente a la vez.
LEER  Cómo configurar un servidor de código basado en la web en Linux

Instale TTYD en Linux

Si está en Debian o Ubuntu, TTYD puede no estar habitable en los repositorios predeterminados. Pero no se preocupe, aún puede instalarlo fácilmente utilizando otras opciones, como la construcción desde la fuente.

Primero, asegúrese de que su sistema esté actualizado:

sudo apt update && sudo apt upgrade -y

Instale las dependencias requeridas para construir TTYD:

sudo apt install -y build-essential cmake git libjson-c-dev libwebsockets-dev
Instalación de la herramienta TTYD

Clon el código fuente TTYD de GitHub y constrílo con estos comandos:

git clone https://github.com/tsl0922/ttyd.git
cd ttyd
mkdir build && cd build
cmake ..
make
sudo make install

Y eso es todo. Ahora tiene TTYD instalado.

Para otras distribuciones, puede usar la misma opción de compilación manual. Alternativamente, puede obtener un binario precompilado de la página de lanzamientos de GitHub de TTYD para su construcción (como AMD64 para la mayoría). O puede descargarlo con este comando wget:

wget https://github.com/tsl0922/ttyd/releases/download/1.7.7/ttyd.x86_64

Hacerlo ejecutable:

chmod +x ttyd.x86_64

Esa es probablemente la forma más rápida de hacer que TTYD se ejecute en cualquier distribución de Linux. Incluso puede usar un Manager de paquetes universal como Snap para instalar TTYD:

sudo snap install ttyd --classic

Una vez que instale ttyd utilizando cualquiera de estos métodos, escriba ttyd --version Para confirmar que está instalado correctamente.

Convierta su terminal en una página web compartible

El uso más elemental de TTYD es compartir su sesión de shell predeterminada. Para hacer esto, simplemente ejecute ttyd seguido del comando que desea compartir. En este caso, es BASH (o ZSH, FISH, etc.):

ttyd bash

Este comando inicia un servidor web en el puerto 7681 de forma predeterminada. Para confirmar, rada su navegador y visite http: // localhost: 7681 o http: // Your-IP-Address: 7681.

LEER  La próxima oportunidad de Apple de construir una Mac con celular está casi aquí
Página web compartible creada con TTYD

Ahora verá su terminal ejecutándose adentro de una página web. Encima, cualquier persona en su red puede obtener a este terminal reemplazando a Localhost con la dirección IP de su máquina. Puedes encontrar tu IP con ip addr show o hostname -Iluego compártelo con otros.

Siquiera te limitas a compartir un caparazón. Cualquier software de columna de comandos puede estar expuesto en el navegador. Por ejemplo, ejecutando ttyd htop se lanzará directamente a la htop Administrador de procesos, mientras ttyd vim o ttyd top Compartirá esas herramientas en su punto.

Abrir la salida de la herramienta de línea de comando superior en la página web

Si no desea usar el puerto predeterminado, todavía puede especificar el suyo. Con el -p bandera:

ttyd -p 8080 bash

Ahora su terminal está habitable en el puerto 8080 en punto del 7681 predeterminado.

Ejecutar un terminal franco accesible para cualquier persona no es una opción sabia, por lo que TTYD ofrece opciones de autenticación con el -c bandera:

ttyd -c username:password bash
Iniciar sesión en la opción para la sesión terminal usando TTYD

Esto crea un mensaje elemental de autenticación HTTP. Cualquiera que intente obtener a su terminal debe ingresar las credenciales especificadas. Para los entornos de producción, querrá poco más robusto, pero para demostraciones rápidas o redes de confianza, esto funciona perfectamente.

Incluso puede hacer que su sesión sea de solo recitación, evitando la entrada del navegador:

ttyd -R bash

Esto es útil para talleres o presentaciones donde desea permanecer el control. Por otro banda, usa -W Si desea explícitamente una sesión de escritura e interactiva.

ttyd -W bash

Compartir sobre la red pública

Al compartir por Internet, el oculto se vuelve esencial. TTYD le permite habilitar HTTPS utilizando su propio certificado SSL. Si aún no tiene certificados, puede crear uno autofirmado para probar con OpenSSL, aunque para la producción, es mejor usar un proveedor de confianza como Let’s Sintetizar.

LEER  Ahora puedes compartir tu pantalla de Chromebook con otros

Por defecto, TTYD solo se puede obtener en su red restringido, pero a veces querrá compartirlo con determinado fuera de su red restringido. Puede conseguir esto de forma segura de varias maneras. El enfoque más simple es emparejar TTYD con un servicio de túneles como TailScale o Cloudflare Tunnel, que expone de forma segura su puerto restringido a Internet a través de una URL pública temporal. Alternativamente, puede ejecutar TTYD en un VPS o servidor en la cirro con un nombre de dominio, haciendo que su terminal sea de forma permanente a través de HTTPS.

Para configuraciones más avanzadas, puede vincular TTYD solo a localhost y colocarlo detrás de un proxy inverso como Nginx o Caddy, que puede manejar la terminación SSL, la autenticación y el control de golpe de ántrax fino.

Pensamientos finales

TTYD toma la complicada tarea de compartir terminal y la hace tan simple como compartir un hipervínculo. Encima, si desea asimilar cómo compartir su sesión de TMUX en Linux, consulte esta orientación.

spot_img

Artículos relacionados

spot_img

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Últimos artículos