Repolode
MisterTea

MisterTea/EternalTerminal

Cliente y servidor de shell remoto que mantiene sesiones como las de SSH y se reconecta automáticamente cuando cambia la red.

Alternativa open source a:Mosh

Estrellas
3,943
Forks
240
Issues abiertos
28
Último commit
anteayer

¿Qué es?

Eternal Terminal (ET) es un shell remoto que se reconecta automáticamente sin interrumpir la sesión. El cliente `et` usa SSH para autenticar y abrir la sesión remota, y luego mantiene una conexión persistente con el daemon `etserver`, que escucha en el puerto TCP 2022 de forma predeterminada. Así, el shell no se cierra si la laptop entra en suspensión o cambia de red.

ET funciona como ssh en cuanto a sintaxis de comandos y admite jumphosts, reenvío de puertos mediante `--tunnel`, archivos de configuración de SSH y reenvío del agente SSH. Las sesiones se pueden guardar y volver a conectar después de reiniciar el cliente. El proyecto también ofrece `etctl`, una herramienta para controlar sesiones desde scripts y capturar la salida y los códigos de salida. Incluye HTM, un multiplexor de terminal compatible con tmux, y puede usarse como transporte para VS Code y Cursor Remote-SSH.

El proyecto está escrito en C++ y se puede instalar en macOS, distribuciones de Linux como Ubuntu, Debian, Fedora y NixOS, FreeBSD y WSL en Windows. La telemetría está activada de forma predeterminada y se puede desactivar mediante una flag, un ajuste de configuración, una variable de entorno o una opción de compilación.

Funciones clave

  • 01Se reconecta automáticamente y mantiene activa la sesión de shell remoto aunque cambie la red.
  • 02Usa SSH para la autenticación y el inicio de la sesión, con una sintaxis de comandos como la de ssh.
  • 03Admite jumphosts, reenvío de puertos mediante `--tunnel` y archivos de configuración de SSH.
  • 04Guarda las sesiones para volver a conectarse a ellas después de reiniciar el cliente.
  • 05Ofrece `etctl` para controlar sesiones desde scripts y capturar la salida y los códigos de salida.
  • 06Funciona como transporte para VS Code y Cursor Remote-SSH.

Casos de uso

  • Trabajar en un servidor remoto mediante una conexión Wi-Fi o móvil inestable.
  • Mantener activas sesiones de edición remota de larga duración mientras la laptop está en suspensión.
  • Ejecutar comandos remotos interactivos desde scripts con `etctl`.
  • Conectarse a servidores detrás de un jumphost con puertos SSH personalizados.

Inicio rápido

  1. 1

    Instala el cliente en macOS con Homebrew

    brew install et
  2. 2

    Instala en Ubuntu mediante PPA, después de añadir el repositorio

    sudo add-apt-repository ppa:jgmath2000/et
  3. 3

    Instala en FreeBSD con pkg

    pkg install eternalterminal
  4. 4

    Conéctate a un host (SSH debe funcionar con ese host y el puerto 2022 debe estar abierto en el servidor)

    et hostname

Antes de usarlo

  • Se necesita acceso SSH funcional al host, ya que ET usa SSH para el protocolo de enlace.
  • Es necesario tener abierto un puerto TCP en el servidor; el predeterminado es el 2022.
  • La telemetría está activada de forma predeterminada y envía registros de errores a Datadog e informes de fallos a Sentry; hay que desactivarla manualmente.

En colecciones

Temas

#remote-shell#ssh#terminal#cpp#reconnect#tmux#devops#mosh

Preguntas frecuentes

¿Qué es EternalTerminal?
Cliente y servidor de shell remoto que mantiene sesiones como las de SSH y se reconecta automáticamente cuando cambia la red. Eternal Terminal (ET) es un shell remoto que se reconecta automáticamente sin interrumpir la sesión. El cliente `et` usa SSH para autenticar y abrir la sesión remota, y luego mantiene una conexión persistente con el daemon `etserver`, que escucha en el puerto TCP 2022 de forma predeterminada. Así, el shell no se cierra si la laptop entra en suspensión o cambia de red.
¿EternalTerminal es gratuito? ¿Qué licencia tiene?
EternalTerminal es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿EternalTerminal sigue mantenido?
Mantenimiento activo. El último commit de EternalTerminal fue el 4 nov 2026.
¿Para qué puedo usar EternalTerminal?
Trabajar en un servidor remoto mediante una conexión Wi-Fi o móvil inestable. Mantener activas sesiones de edición remota de larga duración mientras la laptop está en suspensión. Ejecutar comandos remotos interactivos desde scripts con `etctl`. Conectarse a servidores detrás de un jumphost con puertos SSH personalizados.
¿Cómo se instala EternalTerminal?
Instala el cliente en macOS con Homebrew: brew install et Instala en Ubuntu mediante PPA, después de añadir el repositorio: sudo add-apt-repository ppa:jgmath2000/et Instala en FreeBSD con pkg: pkg install eternalterminal Conéctate a un host (SSH debe funcionar con ese host y el puerto 2022 debe estar abierto en el servidor): et hostname
¿Dónde consigo EternalTerminal?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/MisterTea/EternalTerminal

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados