Desarrollo y gestión remota
Esta guía abarca dos temas: abrir su VelaTerm local para que otros dispositivos puedan acceder a él, y conectarse a máquinas remotas para desarrollar y gestionar sesiones allí.
1. Dos puntos de entrada, dos direcciones
Ambas funciones remotas se encuentran en el lado derecho de la barra de título (junto al selector de tema):

El ícono de globo es Acceso remoto (Navegador): abre esta máquina para que un teléfono, tableta u otro ordenador pueda utilizar su VelaTerm desde un navegador. El ícono de flecha es Conectar a servidor remoto: esta máquina actúa como cliente y se conecta a otra máquina para desarrollar. Cuando el servidor está en ejecución, el globo se ilumina en verde.
| Lo que desea | Qué punto de entrada usar |
|---|---|
| Ver y operar las sesiones de esta máquina desde un teléfono/tableta/u otro ordenador | Botón de globo (Acceso remoto) |
| Trabajar en una caja de desarrollo remota Linux / macOS sin componentes preinstalados | Botón Conectar → modo SSH |
| Conectar a otro VelaTerm que ya tenga el acceso remoto habilitado | Botón Conectar → modo URL |
2. Abrir esta máquina (Acceso remoto)
2.1 Iniciar el servidor
Haga clic en el globo, establezca un puerto (por defecto 8799; cámbielo si está ocupado) y una contraseña de acceso, y luego haga clic en Iniciar servidor:

Se requiere la contraseña de acceso para que cualquier dispositivo pueda conectarse. Solo es válida mientras el servidor está en ejecución; después de detenerlo, establezca una nueva la próxima vez.
2.2 Conectar un dispositivo
Una vez en ejecución, el panel muestra el estado, la huella digital del certificado y un enlace de emparejamiento generado automáticamente:

Para conectarse: envíe el enlace de emparejamiento a su propio dispositivo (AirDrop, mensaje a sí mismo, lo que funcione), ábralo en un navegador e introduzca la contraseña de acceso. El enlace contiene las credenciales de emparejamiento encriptadas; el tráfico entre el navegador y la máquina está encriptado de extremo a extremo. Hay dos cosas a tener en cuenta:
- El enlace es una clave. Úselo solo con sus propios dispositivos. Si sospecha que se ha filtrado, haga clic en Regenerar enlace: el enlace antiguo se invalida de inmediato y todos los dispositivos conectados se desconectan hasta que usen el nuevo.
- Al conectarse por primera vez, el navegador advertirá sobre un certificado no confiable; es normal en el caso de un certificado autofirmado. Compare la huella digital que muestra el navegador con la Huella digital del certificado en el panel; si coinciden, está comunicándose con su propia máquina.
Con múltiples interfaces de red (por cable, Wi-Fi, VPN), el panel muestra la dirección preferida y oculta las demás bajo “1 URL más”; elija la que esté en la misma red que el dispositivo conectado.
Al abrir el mismo enlace en un teléfono, se cambia automáticamente al diseño móvil (navegación de dos niveles más una barra de teclas de terminal); no se necesita configuración adicional.
2.3 Sensación en el lado del navegador
Página de inicio de sesión y UI principal que ve un dispositivo conectado:


El cliente del navegador comparte las mismas sesiones en tiempo real que la versión de escritorio: mismo árbol, misma salida de terminal, ambos lados pueden escribir y cada uno ve las acciones del otro en tiempo real. La disposición de ventanas (pestañas abiertas, división) es independiente para cada cliente.
El tamaño de la terminal tiene un concepto de “dueño”: cuando hay una sesión abierta en varios clientes, el tamaño sigue al dueño y los demás clientes ven un reflejo escalado con una barra “Reflejar … haga clic para ajustar esta ventana” (en la esquina superior derecha de la terminal en la captura anterior); haga clic en ella para asumir el control del tamaño de la ventana actual.
2.4 Gestión de dispositivos
La lista de Dispositivos emparejados del panel muestra todos los dispositivos que se han conectado:

Para bloquear un dispositivo, haga clic en Bloquear junto a él y confírmelo; se desconectará de inmediato y no podrá volver a conectarse (necesitará un nuevo enlace de emparejamiento); los demás dispositivos no se ven afectados. Los nombres de los dispositivos son informados por los propios clientes; trátelos como etiquetas, no como identidades. Para desconectar a todos a la vez, use Regenerar enlace.
2.5 Detener el servidor
Haga clic en Detener servidor en la parte inferior del panel. Los clientes del navegador se desconectan; las sesiones en ejecución no se ven afectadas, ya que pertenecen a la aplicación de escritorio.
3. Conectarse hacia afuera (Conectar a servidor remoto)
Haga clic en el botón de conexión en la barra de título; el panel ofrece los modos SSH y URL.
3.1 Modo SSH: todo lo que necesita el entorno remoto es SSH
Para una caja de desarrollo remota (normalmente Linux o macOS) sin componentes VelaTerm instalados. La conexión ejecuta automáticamente todo el proceso: examina el SO y la arquitectura remota → transfiere el vela-server correspondiente → lo inicia como proceso persistente → configura el reenvío de puertos local → abre una ventana remota e inicia sesión automáticamente.

Introduzca user@host[:port] y haga clic en Conectar. Detalles importantes:
Verificación de la clave del host al conectarse por primera vez. Un nuevo host muestra su huella digital de la clave del host SSH para que la verifique; confírmelo con “La huella digital coincide, conectar” y se guardará en known_hosts; no habrá más solicitudes para ese host. Si la huella digital de un host conocido cambia, el panel se pondrá rojo; averigüe por qué (reinstalación del SO, máquina diferente o alguien que ha manipulado el enlace) antes de confirmar.

Autenticación. Su configuración SSH existente (ssh-agent, ~/.ssh/config, claves) se reutiliza de forma transparente; solo aparecerá un mensaje de contraseña cuando la autenticación por clave pública falle. “Recordar contraseña” la almacena en la llave del sistema (nunca en la base de datos) y la reutiliza la próxima vez.

Modo de datos: “Usar la base de datos de la aplicación de escritorio remoto”. Si está desmarcado (valor por defecto), el servidor remoto utiliza un directorio de datos aislado (~/.velaterm/data), completamente separado de cualquier VelaTerm aplicación de escritorio instalada en esa máquina. Si está marcado, se utiliza en su lugar la base de datos de la versión de escritorio remoto; ambas partes ven el mismo árbol de sesiones, lo cual es adecuado cuando “esa máquina ejecuta VelaTerm a diario y yo tomo el control de los mismos proyectos de forma remota”. Lo que se comparte es el archivo de la base de datos en el disco, no los procesos en ejecución (ver §4.1); se recomienda mantener ambas partes en la misma versión.
Hosts recientes. Se listan los hosts a los que te has conectado; hacer clic en uno solo llena el campo de entrada (sin conexión automática): revisa y luego haz clic en Conectar. Un ícono de llave indica una contraseña guardada; × elimina al host (y su contraseña guardada).
Progreso de la conexión. La primera conexión transfiere el binario del servidor (decenas de MB); el botón muestra “Preparando / Transferiendo” con un porcentaje. Las reconexiones reutilizan el servidor ya presente en el remoto y son mucho más rápidas.
3.2 Modo URL: la otra parte ya tiene acceso remoto activo
Para cuando VelaTerm de otra máquina tiene el acceso remoto activo (§2) y tienes su enlace de emparejamiento. En comparación con abrir el enlace en un navegador normal, obtienes una ventana dedicada, inicio de sesión automático respaldado por el llavero del sistema y verificación por huella digital gestionada por la aplicación.

Pega el enlace de emparejamiento, ingresa la contraseña de acceso establecida en el otro lado y haz clic en Conectar. La primera conexión verifica la huella del certificado TLS (compara con la huella del certificado mostrada en el panel del otro lado); después, con huellas sin cambios, la conexión se establece directamente. Recordar contraseña funciona de la misma manera, a través del llavero del sistema.
4. Desconectar, cerrar y qué sobrevive
4.1 Tres capas de estado
Si “las cosas siguen allí después de una desconexión” depende de qué capa se esté considerando:
| Capa de estado | Dónde se almacena | Cuándo se pierde |
|---|---|---|
| Distribución de ventanas (pestañas abiertas, división) | Dentro de tu ventana | Prácticamente nunca: al volver a abrirse se restaura |
| Árbol de sesiones (definiciones de proyecto / grupo / sesión) | Base de datos en el disco del remoto | Nunca: sobrevive a los reinicios de la máquina |
| Sesiones en ejecución (terminales en vivo, agentes en medio de una tarea) | Memoria del proceso del servidor remoto | Desaparece cuando ese proceso del servidor muere |
Las dos primeras capas son seguras por diseño. La única capa a la que hay que prestar atención es la tercera: mientras el proceso del servidor remoto siga activo, tus sesiones en ejecución también lo estarán.
4.2 Qué significa cerrar la ventana
Modo SSH: el servidor remoto se inició mediante esta conexión y te pertenece, por lo que al cerrar la ventana se pregunta qué hacer: “Detener servidor” lo apaga en el remoto (terminando sus sesiones en ejecución); “Mantener en ejecución” solo desconecta tu extremo, dejando el servidor activo para que la próxima conexión a esa máquina lo reutilice con todas las sesiones intactas. ¿Quieres que los agentes sigan trabajando mientras estás ausente? Elige “Mantener en ejecución”.
Modo URL: eras un invitado en un programa que ya estaba en ejecución allí. Cerrar tu ventana simplemente significa que te vas; la otra parte sigue funcionando y todo está allí cuando regreses.
4.3 Caídas y reconexiones
En caso de problemas de red, aparece una barra roja de reconexión en la parte superior de la ventana remota y se intenta reconectar automáticamente; las sesiones en ejecución no se ven afectadas: en el modo SSH el servidor remoto está desconectado de la sesión SSH (está diseñado para sobrevivir a caídas de red).
Un límite importante: esa reconexión automática solo cubre el tramo de la ventana al puerto local de reenvío. Si el proceso del túnel SSH o el propio servidor remoto ha muerto, la barra roja seguirá girando indefinidamente y “Reconectar” no ayudará: vuelve a la ventana principal y haz clic en Conectar nuevamente. El flujo de conexión detecta si el servidor remoto sigue activo: si lo está, se reutiliza (las sesiones intactas); solo si está muerto se inicia uno nuevo.
Además: si la máquina remota entra en modo de suspensión, cierra sesión o se reinicia, se termina el servidor en modo SSH y sus sesiones en ejecución; el árbol de sesiones, al estar en el disco, no se ve afectado.
4.4 Referencia rápida
| Preocupación | SSH Modo | Modo URL |
|---|---|---|
| Quién posee el servidor remoto | Esta conexión: tú la iniciaste, tú la gestionas | Un programa de larga duración en el otro lado |
| Semántica de cierre por defecto | Diálogo: detener servidor / Mantener en ejecución | Tú te vas; la otra parte sigue funcionando |
| Distribución de ventanas | Guardado por ventana, restaurado al abrirse | Lo mismo |
| Árbol de sesiones | Base de datos aislada; o compartida con la aplicación de escritorio remoto si lo has seleccionado | La propia base de datos del otro programa |
| Sesiones en ejecución | Permanecen activas mientras el servidor esté activo | Son de larga duración por naturaleza; sobreviven a las reconexiones |
5. Modelo de seguridad a primera vista
Las contraseñas (contraseñas de cuenta SSH, contraseñas de inicio de sesión remoto) solo se almacenan en el llavero del sistema, nunca en la base de datos, y solo cuando lo autorizas explícitamente. El acceso desde un navegador de red local se realiza mediante TLS con un certificado autofirmado; los enlaces de emparejamiento transportan credenciales con cifrado de extremo a extremo, y el servidor rechaza conexiones en texto plano no emparejadas. Tanto las claves de host SSH como los certificados TLS remotos siguen el principio de confianza al primer uso: las conexiones conocidas y sin cambios se establecen directamente; los destinos nuevos reciben una solicitud de verificación; las huellas modificadas generan una advertencia en rojo: investiga antes de confirmar. Se pueden bloquear dispositivos individuales en cualquier momento (§2.4), y el enlace de emparejamiento se puede generar de nuevo según sea necesario.
Otra cosa: si la barra de título de la ventana remota muestra un distintivo rojo “⚠ vX ≠ vY”, la interfaz del cliente y el servidor remoto están en versiones diferentes: es posible que algunas funciones no funcionen; actualiza ambas partes a la misma versión.
6. Preguntas frecuentes
**Estoy conectado, pero la barra lateral permanece vacía o la barra roja sigue girando indefinidamente. ** Lo más probable es que el túnel SSH o el servidor remoto haya desaparecido: la reconexión dentro de la ventana no puede solucionarlo (§4.3). Vuelve a la ventana principal y haz clic en Conectar nuevamente.
¿El puerto 8799 no se inicia? Algo más lo está utilizando; elija otro puerto en el panel e inténtelo de nuevo.
¿El navegador indica que el certificado no es de confianza? Es normal en el caso de un certificado autofirmado: verifique la huella digital y continúe (§2.2). Para omitir las advertencias de cada navegador, ingrese a través del enlace de emparejamiento y la aplicación se encargará de la confianza por usted.
¿Desea que un agente remoto siga funcionando mientras se aleja? En el modo SSH, elija “Continuar ejecutándose al cerrar la ventana”; la sesión seguirá activa en el dispositivo remoto. Conéctese nuevamente más tarde y retome exactamente desde donde se quedó.
¿La terminal parece muy pequeña en el teléfono? Eso se debe a un reflejo escalado que sigue al tamaño del escritorio principal: toque “Hacer clic para ajustar esta ventana” en la esquina superior derecha de la terminal para tomar el control del tamaño en el dispositivo actual.