Ir al contenido

Hosts y grupos

Qué hace cada campo, interruptor y ajuste: 99 controles en esta página. Es el texto que hay detrás del ⓘ junto a cada etiqueta en las apps: en el escritorio, pasa el puntero por encima o haz clic (o pulsa F1 en el campo); en el teléfono, tócalo.

La línea bajo cada nombre indica el identificador que usa el código y dice cuándo solo una de las apps tiene el control.

Dónde: Hosts › Nuevo host, o Editar en un host.

host.label

El nombre que tiene este host en tu lista. Es solo para ti: nunca se envía al servidor ni se usa para conectar.

  • Ejemplo: web-01 (producción)
  • Atención: Obligatorio, hasta 256 caracteres.

host.address

Dónde está el servidor: un nombre de host o una dirección IPv4 o IPv6. Aquí solo va la dirección; el puerto y el nombre de usuario tienen sus propios campos, así que user@host y host:22 se rechazan.

  • Ejemplo: web.example.com, 10.0.0.12 o 2001:db8::1

host.group

La carpeta en la que está este host. Un host toma cada ajuste que no define él mismo de su grupo, luego de los grupos superiores y luego de Ajustes.

  • Predeterminado: Sin grupo.
  • Atención: Mover un host a otro grupo cambia todos los valores que hereda: puerto, nombre de usuario, clave, hosts de salto y lo demás.

host.tags

Palabras libres para buscar y filtrar hosts, como “prod” o “database”. Un host puede tener hasta 64 etiquetas, y el nombre de una etiqueta tiene de 1 a 64 caracteres.

  • Ejemplo: prod, eu-west, postgres
  • Atención: En el móvil, la × junto a una etiqueta en este formulario elimina esa etiqueta de todos los hosts, tras preguntar.

host.os

Qué sistema ejecuta este host, mostrado como icono y nombre en el host. Si se deja en “Detectar automáticamente”, Sternway lo lee al conectar: del saludo del servidor SSH y de una consulta de solo lectura al host (su archivo os-release, uname y el nombre de su shell de inicio, que también decide qué pueden contener los valores integrados de un fragmento), en un canal propio, nunca escrita en tu terminal. Elige un sistema de la lista para un host que no puede leer o que lee mal, como un router que solo dice que es Linux; tu elección se mantiene y nada detectado la sustituye.

  • Predeterminado: Detectar automáticamente.
  • Ejemplo: Un cortafuegos que responde como un FreeBSD normal: elige pfSense.
  • Atención: Esto solo cambia lo que se muestra. No cambia cómo se conecta Sternway.

host.notes

Cualquier cosa que quieras recordar sobre este host. Las notas se guardan con el host y no se usan para conectar. Hasta 10.000 caracteres.

  • Atención: Las notas se sincronizan como el resto del host, así que no guardes aquí ninguna contraseña.

Dónde: El editor de hosts o de grupos, bajo la dirección.

host.port

El puerto de red en el que escucha el servidor SSH, de 1 a 65535. Cámbialo solo si el servidor se configuró en otro puerto. Mosh y SFTP también lo usan; Telnet tiene su propio puerto.

  • Predeterminado: 22.
  • Ejemplo: 2222

host.credentials · Solo teléfono

Cómo inicia sesión este host. “Usar una identidad guardada” toma el nombre de usuario, la contraseña y la clave de una identidad de tu llavero; “Definir directamente” te permite escribirlos solo para este host.

  • Predeterminado: Definir directamente.
  • Atención: Al cambiar se pierde lo que tenía la otra opción: elegir una identidad quita el nombre de usuario, la contraseña y la clave escritos aquí, y elegir “Definir directamente” desvincula la identidad.

host.username

La cuenta con la que inicias sesión en el servidor. Si la dejas vacía, la app te la pide al conectar.

  • Predeterminado: Ninguno: se te pregunta al conectar.
  • Ejemplo: root, ubuntu o deploy
  • Atención: Una identidad guardada elegida para este host sustituye el nombre de usuario escrito aquí.

host.password

La contraseña de esa cuenta, que se prueba una vez al conectar para que no se te pida. Déjala vacía para que se te pida cada vez o para iniciar sesión con una clave.

  • Predeterminado: Ninguna.
  • Atención: Se guarda en la bóveda con el host y se sincroniza con él, salvo que Ajustes › Seguridad › “Sincronizar claves e identidades” esté desactivado, en cuyo caso se queda en este dispositivo. En el escritorio, vaciar el campo significa “sin contraseña” y además bloquea la que daría el grupo; usa Quitar anulación para volver a heredarla.

host.identity

Un inicio de sesión guardado en tu llavero: un nombre de usuario con contraseña, clave o ambas, guardado una vez y compartido por muchos hosts. Si cambias la identidad, todos los hosts que la usan la siguen.

  • Predeterminado: Ninguna.
  • Atención: Una identidad se aplica completa: el nombre de usuario, la contraseña o la clave escritos en el mismo host o grupo se ignoran mientras haya una identidad elegida.

host.key

La clave privada con la que este host inicia sesión en lugar de una contraseña. El servidor ya debe confiar en su mitad pública (Llavero › Instalar en el host lo hace). Sternway solo ofrece esta clave. En el escritorio, Ajustes › Conexiones y SSH puede añadir las claves del propio agente SSH del equipo.

  • Predeterminado: Ninguna.
  • Atención: Una clave protegida con frase de contraseña pide la frase de contraseña cuando se usa.

host.personalCredentials · Solo escritorio

Para un host de una bóveda de equipo compartida: inicia sesión con tu propio nombre de usuario, contraseña y clave, guardados en tu bóveda personal, en lugar de lo que el equipo guardó en el host. Así cada compañero usa su propia cuenta.

  • Predeterminado: Desactivado.
  • Atención: Si no hay credenciales personales guardadas para este host, se te piden al conectar.

Dónde: El editor de hosts o de grupos › Avanzado (escritorio); las secciones inferiores del formulario (teléfono).

host.startupSnippet · Solo escritorio

Un fragmento guardado que se escribe en la sesión, seguido de Enter, en cuanto parece lista (consulta Comando de inicio), y que se vuelve a escribir cada vez que la sesión se reconecta. Se usa en lugar del comando de inicio si ambos están definidos; si el fragmento se ha eliminado desde entonces, se usa el comando de inicio.

  • Predeterminado: Ninguno.
  • Atención: Se escribe donde está el cursor, como si lo hubieras escrito tú, así que aparece en la terminal y en el historial del shell. Como se vuelve a ejecutar tras una reconexión, usa un fragmento que se pueda repetir sin problemas.

host.startupCommand

Un comando que se escribe en la sesión, seguido de Enter, en cuanto parece lista: en la primera solicitud del shell si la integración del shell la notifica; si no, tras medio segundo sin salida. Se escribe una vez por conexión, así que de nuevo cada vez que la sesión se reconecta, sola o con el botón Reconectar, porque una reconexión inicia un shell nuevo. Úsalo para ir a una carpeta o conectarte a tmux. Hasta 4096 caracteres.

  • Predeterminado: Ninguno.
  • Ejemplo: cd /srv/app && tmux attach || tmux
  • Atención: Se escribe, no se ejecuta por separado: con un inicio de sesión lento, y en Telnet en la solicitud de inicio de sesión, puede acabar en lo que haya en pantalla, y aparece en la terminal y en el historial del shell. Como se vuelve a ejecutar tras una reconexión, usa un comando que se pueda repetir sin problemas. Nunca pongas una contraseña en él.

host.proxy

Llega al servidor a través de un servidor proxy en lugar de directamente, como exigen algunas redes de empresa. Se admiten proxies SOCKS5, SOCKS4 y HTTP (a un proxy HTTP se le pide abrir un túnel simple con su método CONNECT, así que debe permitirlo para el puerto del servidor). Con hosts de salto, el proxy solo lleva la conexión hasta el primero.

  • Predeterminado: Ninguno (conexión directa).
  • Atención: Mosh no se puede usar en un host que tiene proxy.

host.proxyHost

La dirección del servidor proxy: un nombre de host o una dirección IP.

  • Ejemplo: proxy.corp.example.com

host.proxyPort

El puerto en el que escucha el proxy, de 1 a 65535.

  • Predeterminado: Se rellena 1080 sea cual sea el tipo de proxy; es el puerto habitual de SOCKS, así que cámbialo para un proxy HTTP (a menudo 3128 u 8080).
  • Ejemplo: 1080 para SOCKS, 3128 u 8080 para HTTP

host.proxyUsername

El nombre de usuario que pide el propio proxy, si lo pide. SOCKS4 no tiene un inicio de sesión real: solo se le envía un nombre, llamado su “user ID”, que la mayoría de los proxies SOCKS4 ignoran. No es tu cuenta en el servidor.

  • Predeterminado: Ninguno.

host.proxyPassword

La contraseña que pide el propio proxy. SOCKS4 no tiene contraseñas, así que el campo se oculta en ese caso.

  • Predeterminado: Ninguna.
  • Atención: Un proxy HTTP la recibe solo con una codificación básica, legible por cualquiera en el camino hasta el proxy. Se guarda y sincroniza como la contraseña del host.

host.jumpHosts

Servidores por los que pasar por el camino, en orden, cuando el destino no es accesible directamente (ssh lo llama ProxyJump; a ese servidor se le suele llamar bastión). La app inicia sesión en el primero con el inicio de sesión guardado de ese host, crea un túnel a través de él hasta el siguiente, y así hasta este host. Hasta 8, cada uno un host guardado de la misma bóveda. El proxy propio de un host de salto se ignora: solo se usa el proxy de este host, para llegar al primer host de salto. Los hosts de salto del primer host de salto también se atraviesan.

  • Predeterminado: Conexión directa o la cadena del grupo.
  • Ejemplo: bastion → este host
  • Atención: Cada host de salto puede ver adónde te conectas a continuación. Mosh no se puede usar a través de hosts de salto y Telnet los ignora.

host.env

Valores con nombre que se pasan al shell remoto cuando se inicia, como LANG o una variable que leen tus scripts. Un nombre lleva letras, dígitos y guiones bajos, y no empieza por un dígito; un valor tiene hasta 4096 caracteres. Solo se envían en sesiones SSH. Gana completo el nivel más cercano que defina alguno: la lista de un host sustituye la de su grupo, no se combina con ella.

  • Predeterminado: Ninguna.
  • Ejemplo: LANG = en_US.UTF-8
  • Atención: La mayoría de los servidores solo aceptan los nombres indicados tras AcceptEnv en la configuración de su servidor SSH (sshd_config; a menudo solo LANG y LC_*) y descartan el resto sin avisar. Los valores se guardan y sincronizan como ajustes normales, así que no pongas secretos en ellos.

host.connectTimeout · Solo escritorio

Cuántos segundos esperar a que responda el servidor, y luego al intercambio de inicio de sesión, antes de desistir. Auméntalo para un enlace lento o lejano. De 1 a 300.

  • Predeterminado: 15 segundos (Ajustes › Conexiones y SSH).

host.autoReconnect

Cuando una sesión se cae inesperadamente, vuelve a conectar sin preguntar: 5 intentos rápidos, esperando 1, 2, 4, 8 y 16 segundos, y después un intento por minuto mientras su pestaña siga abierta, y enseguida cuando cambia la red o el dispositivo se reactiva (Dejar de intentar lo termina). Los reenvíos de puertos en marcha a través de este host también vuelven a intentarlo: hasta 10 intentos en unos 5 minutos, y enseguida cuando cambia la red. Se detiene de inmediato si se rechazó la clave del host del servidor o cancelaste el inicio de sesión; un reenvío que necesita aprobación de nuevo la espera.

  • Predeterminado: Activado (Ajustes › Conexiones y SSH).
  • Atención: Una reconexión vuelve a iniciar sesión con una contraseña que escribiste antes durante esta ejecución de la app (en el teléfono: hasta que la app se bloquee, cierres sesión o haya estado en segundo plano el tiempo de bloqueo automático). La frase de contraseña de una clave solo se reutiliza si marcaste Recordar cuando se pidió.

host.keepaliveInterval · Solo escritorio

Un keep-alive es un mensaje mínimo de “¿sigues ahí?” que se envía mientras la conexión está inactiva, para que los routers y cortafuegos no la corten y se detecte un enlace caído. Es el número de segundos entre ellos; 0 los desactiva. De 0 a 3600.

  • Predeterminado: 30 segundos (Ajustes › Segundo plano y mantener activo).

host.keepaliveCountMax · Solo escritorio

Cuántos mensajes keep-alive seguidos pueden quedar sin respuesta antes de dar la conexión por perdida y cerrarla. Con los valores predeterminados es aproximadamente un minuto y medio. De 1 a 100.

  • Predeterminado: 3 (Ajustes › Segundo plano y mantener activo).

host.agentForwarding

Permite que el servidor en el que estás use tus claves para iniciar sesión en otro servidor (por ejemplo, git pull desde GitHub en el servidor), sin que las claves privadas salgan de este dispositivo. “Clave de autenticación” ofrece solo la clave con la que iniciaste sesión; “Todas las claves” ofrece las claves de este host y de sus hosts de salto. El servidor puede pedir firmas, nunca leer las claves. Solo se solicita en sesiones de terminal, no para SFTP ni reenvíos de puertos. “Clave de autenticación” no ofrece nada si iniciaste sesión con contraseña o con una clave del agente SSH de este equipo. “Todas las claves” omite las claves de llave de seguridad (hardware) y las claves cifradas cuya frase de contraseña no está guardada ni recordada; no la pide.

  • Predeterminado: Desactivado (Ajustes › Conexiones y SSH).
  • Atención: Mientras estés conectado, cualquiera con derechos de administrador en ese servidor puede iniciar sesión en otro lugar como tú con las claves reenviadas. Actívalo solo para servidores de confianza.

host.legacyAlgorithms · Solo escritorio

Ofrecer también métodos de cifrado antiguos (intercambio de claves y firmas SHA-1, cifrados CBC, claves de host ssh-rsa) que el SSH moderno ha abandonado. Actívalo solo cuando un router, switch o servidor antiguo se niegue a conectar sin ellos.

  • Predeterminado: Desactivado (Ajustes › Conexiones y SSH › Avanzado).
  • Atención: Estos métodos son débiles. Déjalo desactivado para cualquier cosa accesible desde internet.

host.pqc · Solo escritorio

Preferir una forma más reciente de acordar las claves de cifrado de la sesión (el método llamado mlkem768x25519) que también resiste a un futuro ordenador cuántico, si el servidor la admite; los métodos habituales se siguen ofreciendo después. Desactívalo solo si un servidor falla con ella.

  • Predeterminado: Activado (Ajustes › Conexiones y SSH › Avanzado).

host.sftpStartPath · Solo escritorio

La carpeta en la que se abre el explorador de archivos para este host la primera vez. Después, la app recuerda la última carpeta en la que estuviste.

  • Predeterminado: Tu carpeta personal en el servidor.
  • Ejemplo: /var/www

host.theme

Los colores de las terminales de este host, para que un servidor de producción se vea distinto de uno de pruebas. Un tema elegido dentro de una sesión sigue prevaleciendo en esa sesión.

  • Predeterminado: El tema de terminal de la app (Ajustes › Apariencia).

host.fontFamily · Solo escritorio

La tipografía de las terminales de este host: una instalada en este equipo o una incluida (JetBrains Mono, Fira Code, Cascadia Code, Source Code Pro, Hack).

  • Predeterminado: La fuente de Ajustes › Terminal (JetBrains Mono).

host.fontSize · Solo escritorio

El tamaño del texto de la terminal para este host, en píxeles, de 6 a 72.

  • Predeterminado: El tamaño de Ajustes › Terminal (14).

host.lineHeight · Solo escritorio

El espacio que ocupa cada línea de la terminal, como múltiplo del tamaño de fuente, de 0,8 a 2. Más grande es más holgado; 1 es ajustado.

  • Predeterminado: El valor de Ajustes › Terminal (1,2).

host.charset · Solo escritorio

La codificación de caracteres que usa el servidor. Casi todos los sistemas modernos usan UTF-8; elige otra solo si las letras acentuadas o los caracteres de dibujo de cuadros aparecen como basura en un sistema antiguo. La app convierte en ambos sentidos; no se cambia nada en el servidor.

  • Predeterminado: UTF-8.
  • Ejemplo: ISO-8859-1, windows-1252, Shift_JIS

host.termType · Solo escritorio

Lo que la app le dice al servidor que es, como variable TERM. Los programas la usan para decidir qué colores y teclas funcionan. Cámbiala solo si un programa de pantalla completa (vi, top) falla en un sistema antiguo.

  • Predeterminado: xterm-256color (Ajustes › Terminal › Avanzado).
  • Ejemplo: vt100 para equipos muy antiguos

host.backspace · Solo escritorio

Qué carácter envía la tecla Retroceso. Casi todos los sistemas esperan DEL; cambia a Ctrl-H si Retroceso imprime ^? o no borra. Ctrl+Retroceso envía el otro.

  • Predeterminado: DEL.

host.telnetPort · Solo escritorio

El puerto que se usa al abrir este host con Telnet en lugar de SSH, de 1 a 65535. Telnet no tiene un inicio de sesión que la app pueda responder por ti: el servidor pide un nombre de usuario y una contraseña en la terminal, y los escribes ahí. La app no guarda ninguno de los dos.

  • Predeterminado: 23.
  • Atención: Telnet no está cifrado: todo lo que se escribe, contraseñas incluidas, se puede leer en la red.

host.moshEnabled · Solo escritorio

Mosh es otra forma de mantener viva una terminal en una conexión mala o itinerante: sobrevive a cambios de red y a la suspensión, y muestra al instante lo que escribes. La app sigue iniciando sesión primero por SSH y luego cambia. El servidor necesita mosh-server instalado y sus puertos UDP abiertos, y este equipo necesita el programa mosh-client instalado (macOS y Linux; Mosh no funciona en la app de Windows). La app del teléfono no puede ejecutar Mosh: allí, un host con esta opción se conecta por SSH normal.

  • Predeterminado: Desactivado.
  • Atención: Un host con hosts de salto o un proxy no puede conectar mientras Mosh está activado, igual que uno en un equipo sin mosh-client: en el escritorio no se recurre a SSH. Las sesiones de Mosh no se graban en el registro de sesión y no tienen autocompletado.
  • Más: Leer más (en inglés)

host.moshServerCommand · Solo escritorio

El programa que se inicia en el servidor para Mosh. Defínelo solo si mosh-server no está en el PATH allí. Indica solo el nombre del programa o su ruta completa, sin argumentos.

host.moshPortRange · Solo escritorio

El puerto UDP, o rango de puertos, que el servidor puede usar para Mosh, escrito BAJO:ALTO con dos puntos. Ajústalo a lo que deja pasar el cortafuegos del servidor.

  • Predeterminado: Lo decide mosh-server (de 60000 a 61000 en la mayoría de los sistemas).
  • Ejemplo: 60000:61000
  • Más: Leer más (en inglés)

host.shellIntegration · Solo escritorio

Permite a la app ver dónde empieza y termina cada comando en una sesión de bash o zsh, que es lo que hace funcionar “¿hay un comando en ejecución?” y la restauración de un espacio de trabajo. Para ello escribe un pequeño script en el shell cuando se inicia la sesión.

  • Predeterminado: Desactivado.
  • Atención: Cambia los hooks de la solicitud de esa sesión del shell y envía a la app cada línea de comandos que ejecutas.

host.autocomplete · Solo escritorio

Si se muestran sugerencias mientras escribes en este host, en el escritorio y en el teléfono. Un host solo puede desactivarlas; si las sugerencias están desactivadas en Ajustes › Terminal, esto no puede activarlas. No oculta la oferta de la contraseña guardada en el escritorio ante una solicitud de contraseña.

  • Predeterminado: Activado, según Ajustes › Terminal.

host.autocompleteHostLookup · Solo escritorio

Si el autocompletado puede preguntar a este host qué tiene: comandos instalados, las opciones de las páginas de manual y valores como ramas, servicios y nombres de archivo. Las preguntas son comandos fijos de solo lectura que se ejecutan en segundo plano por la propia conexión de la sesión, nunca escritos en la terminal. Desactívalo para un host en el que no deba ejecutarse nada sin pedirlo; allí las sugerencias saldrán de tu historial, tus fragmentos y las descripciones de comandos integradas. La app del teléfono también sigue este interruptor.

  • Predeterminado: Activado, según Ajustes › Terminal.
  • Atención: Las consultas se ejecutan como el usuario con el que inicias sesión y aparecen en el host como cualquier otro comando.

host.tabColor

Una etiqueta de color para este host: todas las pestañas de sesión y SFTP a él llevan el color, igual que sus filas en Sesiones y en Hosts, para distinguir de un vistazo un host (o un tipo, como producción) de otro. Si se define en un grupo, todos sus hosts reciben el color salvo que el host defina el suyo; “Ninguno” en un host le quita el color del grupo. A una pestaña abierta se le puede dar otro color desde su menú sin cambiar el host. El color se sincroniza con el host; es una etiqueta, no un secreto.

  • Predeterminado: Ninguno, o el color del grupo.
  • Ejemplo: Rojo en el grupo Producción, verde en Staging.

host.smartHighlight

Si Sternway colorea lo que reconoce en la salida sin formato de este host (direcciones, rutas, tamaños, niveles de registro, listados de archivos). Desactívalo para un dispositivo cuya salida interpreta mal, o actívalo para un host mientras está desactivado en Ajustes. Qué tipos se colorean se define en Ajustes › Terminal. Los colores propios de los programas nunca se cambian y la copia no se ve afectada.

  • Predeterminado: Según Ajustes › Terminal.

host.notify

De qué te avisa cada sesión a este host sin tener que pedirlo cada vez. Las mismas opciones están en el menú de cada sesión (“Avisarme…”), donde se aplican solo a esa sesión. Un comando cuenta cuando se ha ejecutado durante el tiempo definido en Ajustes › Notificaciones; “salida tras silencio” significa 30 segundos sin ninguna; “cuando se queda en silencio” significa sin salida durante los minutos definidos en Ajustes › Notificaciones, una vez por periodo de silencio; “una línea coincide” usa tus reglas de Ajustes › Notificaciones; “un agente de programación necesita una entrada” reconoce las preguntas que hacen los agentes de programación de línea de comandos antes de actuar; “el programa envía una notificación” es una notificación que pide el propio programa remoto (OSC 9, 777 o 99). Si se define en un grupo, todos sus hosts avisan igual salvo que el host defina lo suyo.

  • Predeterminado: Nada: una sesión solo avisa de lo que le pidas.
  • Atención: Una notificación puede mostrar una línea de la salida del host. Un teléfono solo avisa mientras la app se está ejecutando o se mantiene activa en segundo plano.

host.sessionLogging · Solo escritorio

Si lo que muestran las sesiones de este host se registra en Registros. Solo se registra si el registro también está activado para la bóveda del host (Ajustes › Registros). Desactívalo para un host cuya salida nunca quieras conservar. La app del teléfono registra igual y sigue este interruptor. Un registro se queda en el dispositivo que lo creó salvo que “Sincronizar registros de sesión” esté activado allí.

  • Predeterminado: Activado, si la bóveda registra.
  • Atención: Un registro contiene todo lo mostrado en la terminal, incluido cualquier secreto que haya impreso un comando.

host.recordSessions · Solo escritorio

Graba cada sesión a este host desde su inicio, con sus tiempos, para que puedas reproducirla más tarde en Grabaciones: lo que mostró la terminal y cada cambio de su tamaño, como archivo asciicast. Una grabación se queda en este dispositivo, cifrada con el resto de los datos de la app, y nunca se sincroniza ni se sube. Una insignia roja “Grabando” aparece en la sesión mientras dura. Si se define en un grupo, todos sus hosts graban salvo que el host diga lo contrario. Una sesión concreta también se puede grabar desde su menú.

  • Predeterminado: Desactivado.
  • Atención: Una grabación contiene todo lo mostrado en la terminal, incluido cualquier secreto que haya impreso un comando.
  • Más: Leer más (en inglés)

host.recordInput · Solo escritorio

Con “Grabar sesiones” activado, también guarda en la grabación lo que escribes. Lo que escribes tras una solicitud que la app reconoce (una línea que termina en “password:”, “passphrase:”, “PIN:” y similares, también en los idiomas europeos habituales, ruso, japonés, chino y coreano, aunque el programa muestre * por cada tecla) nunca se guarda, hasta Enter, Ctrl-C o Ctrl-D.

  • Predeterminado: Desactivado: solo se graba lo que mostró la terminal.
  • Atención: El texto escrito puede contener secretos que la app no reconoce como tales: una contraseña pegada en una línea de comandos, un token, una solicitud redactada de otra forma (“Código de verificación:”, un idioma que la documentación no menciona) o una que no está al final de la última línea. Esos se grabarían.
  • Más: Leer más (en inglés)

host.metricsStrip · Solo escritorio

Muestra una franja fina sobre las terminales de este host con el uso de CPU, la memoria en uso y lo lleno que está su sistema de archivos raíz. Cada 5 segundos mientras la terminal está en pantalla, Sternway ejecuta un breve comando de solo lectura (/proc y df en Linux; sysctl, vm_stat y ps en macOS y FreeBSD) en un canal aparte de la conexión: no se escribe nada en tu shell ni aparece nada en su historial. Se pausa mientras la pestaña está oculta y permanece oculta en un sistema que no puede leer.

  • Predeterminado: Desactivado.
  • Atención: Un servidor que solo permite un canal por conexión no puede ejecutarlo junto a tu shell: en ese caso la franja queda vacía.

host.tmuxAttach · Solo teléfono

Una sesión SSH a este host se ejecuta dentro de tmux en el servidor: al conectar se une a la sesión de tmux indicada abajo y la crea si no existe. Lo que se ejecuta en ella continúa cuando el teléfono se suspende, pierde la red o cierra la app, y una reconexión, automática o con el botón Reconectar, vuelve a unirse a ella, así que la pantalla vuelve tal como la dejaste. Funciona a través de hosts de salto. Antes de unirse, Sternway comprueba en un canal propio si tmux está instalado; si no lo está, se te avisa y la sesión continúa como un shell normal.

  • Predeterminado: Desactivado.
  • Ejemplo: Una compilación larga o un agente de programación que inicias en el teléfono y vuelves a mirar más tarde.
  • Atención: El comando para unirse se escribe en el shell, así que aparece en pantalla y, salvo que tu shell omita las líneas que empiezan por un espacio, en su historial. El comando de inicio se escribe en la sesión de tmux solo cuando se crea, no en cada unión. Salir de tmux (desconectarse o cerrar su última ventana) te deja en el shell normal. No se usa con Telnet ni Mosh.

host.tmuxSession · Solo teléfono

La sesión de tmux a la que unirse. Si se deja vacía, se crea a partir del nombre visible del host (“web-01 (prod)” se convierte en web-01-prod). Letras, dígitos, - y _, hasta 64 caracteres. Dos hosts del mismo servidor con el mismo nombre comparten una sesión de tmux.

  • Predeterminado: Se crea a partir del nombre visible del host.
  • Ejemplo: build

host.wakeMac

La dirección de hardware de la tarjeta de red que despierta esta máquina. Si está definida, el host tiene una acción Despertar: este dispositivo envía el “paquete mágico” que indica a una máquina suspendida o apagada que arranque, si su firmware tiene Wake-on-LAN activado. El paquete sale de este equipo o teléfono, por la red en la que está: no interviene ningún servidor, así que llega a una máquina de la misma red local (o a una cuyo router lo reenvíe).

  • Predeterminado: Ninguna: sin acción Despertar.
  • Ejemplo: 52:54:00:ab:cd:ef (también 52-54-00-ab-cd-ef o 5254.00ab.cdef)
  • Atención: Búscala en la propia máquina (ip link en Linux, ipconfig /all en Windows) mientras está encendida. Una máquina desenchufada, o cuya tarjeta está desactivada, no puede oír el paquete.

host.wakeAddress

Adónde se envía el paquete mágico. El valor predeterminado llega a todas las máquinas del propio segmento de red de este dispositivo. Usa la dirección de difusión de la otra red (por ejemplo 192.168.20.255) si la máquina está en otra subred cuyo router la reenvía, o la propia dirección de la máquina si un router la mantiene accesible mientras duerme.

  • Predeterminado: 255.255.255.255 (esta red).
  • Ejemplo: 192.168.1.255

host.wakePort

El puerto UDP al que se envía el paquete mágico. Las tarjetas de red lo escuchan sea cual sea el puerto; algunos routers solo reenvían el puerto 7 o el 9. De 1 a 65535.

  • Predeterminado: 9.

host.wakeBeforeConnect

Cada conexión a este host (terminal, archivos, reenvíos de puertos) envía primero el paquete mágico, espera a que responda el puerto SSH del host, como mucho el tiempo de espera de abajo, y luego inicia sesión. Comprobar el puerto solo abre y cierra una conexión con él; nunca inicia sesión. Un host que ya está despierto responde enseguida, así que entonces no cuesta nada.

  • Predeterminado: Desactivado.
  • Atención: Para un host al que se llega a través de un host de salto o un proxy, el puerto no se puede comprobar desde aquí: la app espera todo el tiempo antes de conectar.

host.wakeWaitSec

Cuánto espera “Despertar antes de conectar” a que el host empiece a responder antes de intentar iniciar sesión de todos modos. Una máquina que arranca desde apagada necesita más tiempo que una que sale de la suspensión. De 5 a 600.

  • Predeterminado: 60 segundos.

host.knockSequence

Puertos a los que “llamar”, en orden, antes de cada conexión a este host, para un servidor cuyo cortafuegos (knockd y similares) mantiene cerrado el puerto SSH hasta verlos. Separa los puertos con espacios; añade :udp a un puerto que se golpea con UDP (TCP es lo predeterminado). Un golpe TCP abre una conexión y la cierra enseguida; un golpe UDP es un paquete vacío. Hasta 16 puertos. Si a este host se llega a través de un host de salto, es el host de salto quien envía los golpes.

  • Predeterminado: Ninguno: se conecta al host directamente.
  • Ejemplo: 7000 8000:udp 9000
  • Atención: Los golpes detrás de un host de salto solo pueden ser TCP, y los golpes UDP no pueden pasar por un proxy. Una secuencia de golpes no es una contraseña: cualquiera que observe la red entre tú y el servidor puede verla.

host.knockDelayMs

Cuánto esperar después de cada golpe, y después del último antes de conectar, para que el cortafuegos no se quede atrás. De 0 a 10000 milisegundos.

  • Predeterminado: 200 ms.

Dónde: Hosts › Nuevo grupo, o Editar en un grupo.

group.name

El nombre de la carpeta en tu lista de hosts. Obligatorio, hasta 256 caracteres.

  • Ejemplo: Producción

group.parent

Coloca este grupo dentro de otro. Así sus hosts también heredan los ajustes de los grupos superiores. Un grupo no puede ir dentro de sí mismo ni de uno de sus subgrupos.

  • Predeterminado: Ninguno (nivel superior).

Sincronizar hosts desde un proveedor de nube

Sección titulada «Sincronizar hosts desde un proveedor de nube»

group.cloudEnable · Solo escritorio

Mantiene este grupo lleno con tus servidores en la nube en ejecución: se añade un host por cada instancia, su dirección se actualiza cuando cambia y su host se elimina cuando la instancia desaparece. La app solo lee la lista de instancias; no cambia nada en el proveedor.

  • Predeterminado: Desactivado.
  • Atención: El host de una instancia detenida o terminada se elimina en la siguiente actualización, junto con cualquier cambio que le hayas hecho.

group.cloudProvider · Solo escritorio

El servicio en la nube del que leer las instancias. Por ahora solo funciona AWS EC2; los demás aparecen como próximamente.

  • Predeterminado: AWS EC2.

group.cloudRegion · Solo escritorio

La única región del proveedor cuyas instancias se listan. Para varias regiones, crea un grupo para cada una.

  • Ejemplo: us-east-1 o eu-west-2

group.cloudFilter · Solo escritorio

Solo se añaden las instancias cuya etiqueta Name coincide. El texto se pasa a AWS como filtro de la etiqueta Name: el nombre completo debe coincidir y las mayúsculas importan; * equivale a cualquier secuencia de caracteres y ? a exactamente uno. Así, “web” solo encuentra una instancia llamada exactamente web, y “web-*” encuentra web-1 y web-eu-2. Con un filtro definido, se omiten las instancias sin etiqueta Name. Déjalo vacío para todas las instancias en ejecución o iniciándose en la región.

  • Predeterminado: Vacío (todas las instancias).
  • Ejemplo: web-*

group.cloudRefresh · Solo escritorio

Con qué frecuencia se vuelve a leer la lista de instancias mientras la app está abierta, de 1 a 1440 minutos.

  • Predeterminado: 60.

group.cloudAccessKeyId · Solo escritorio

La mitad pública de una clave de acceso de AWS con permiso para listar instancias EC2. Deja vacíos ambos campos de clave para conservar las ya guardadas.

  • Ejemplo: AKIA…
  • Atención: Se guarda solo en este dispositivo: nunca se sincroniza ni se comparte con tu equipo, así que cada dispositivo que deba sincronizar necesita la suya.

group.cloudSecretAccessKey · Solo escritorio

La mitad secreta de esa clave de acceso de AWS, usada para firmar la solicitud de la lista de instancias.

  • Atención: Se guarda solo en este dispositivo y no se vuelve a mostrar. Usa una clave que solo pueda leer EC2, no la clave principal de tu cuenta.

group.cloudSessionToken · Solo escritorio

Solo para credenciales temporales de AWS (de SSO o de un rol asumido), que vienen en tres partes. Déjalo vacío para una clave de acceso normal.

  • Predeterminado: Ninguno.

Dónde: La pantalla Hosts.

quickConnect.target

Conéctate una vez, sin guardar un host. Escribe la dirección, opcionalmente con un nombre de usuario antes de @ y un puerto tras dos puntos, o pega un enlace ssh://, sftp:// o telnet:// o un comando “ssh”. De un comando se usan el usuario (-l), el puerto (-p) y los hosts de salto (-J); cualquier otra opción, un comando para ejecutar en el host y una contraseña en un enlace no se usan, y se te indica cuáles. No se ejecuta nada de lo que pegas. Usa los valores predeterminados de la app de Ajustes: sin grupo, clave ni proxy.

  • Predeterminado: Puerto 22; si se omite el nombre de usuario, se te pide.
  • Ejemplo: root@203.0.113.10:2222, o: ssh -p 2222 -J jump@bastion deploy@web-01

hostSave.label · Solo escritorio

El nombre que recibe la conexión rápida en tu lista de hosts al guardarla. La dirección, el puerto y el nombre de usuario se toman de la conexión; una contraseña que escribiste solo se guarda con ella si también lo indicaste en la solicitud de contraseña. Después puedes editar el host como cualquier otro.

hostMove.group · Solo escritorio

El grupo al que mover los hosts seleccionados. Empiezan a heredar los ajustes de ese grupo. Los hosts de bóvedas distintas solo pueden ir al nivel superior de su propia bóveda.

  • Predeterminado: Sin grupo (nivel superior).

hostBulk.tags

Etiquetas que añadir a todos los hosts seleccionados o quitarles. Haz clic una vez en una etiqueta para añadirla a todos (o, si todos la tienen, para quitarla), otra vez para cambiar y una tercera para dejarla como está. El chip indica qué hosts la tienen ahora.

  • Predeterminado: Todas las etiquetas como están.

hostBulk.identity

La identidad guardada con la que inician sesión todos los hosts seleccionados. “Heredar” quita la identidad de cada host para que la herede de su grupo; “Ninguna” significa sin identidad. El nombre de usuario, la contraseña y la clave propios de un host se conservan: mientras haya una identidad elegida no se usan, y vuelven a usarse cuando se quita la identidad.

  • Predeterminado: Dejar como está.

hostBulk.port

El puerto SSH de todos los hosts seleccionados: un número de 1 a 65535, o “Heredar” para quitar el puerto propio de cada host y que lo herede de su grupo (22 por defecto).

  • Predeterminado: Dejar como está.
  • Atención: Un reenvío de puertos aprobado en este dispositivo vuelve a pedir aprobación cuando cambia el puerto de su host, y los dispositivos de un compañero muestran el cambio antes de conectarse a un host compartido.

hostBulk.group

El grupo al que van todos los hosts seleccionados, o el nivel superior de su almacén. Empiezan a heredar los ajustes de ese grupo.

  • Predeterminado: Dejar como está.

hostTransfer.vault · Solo escritorio

La bóveda a la que mover o copiar la selección. Una bóveda es una colección cifrada por separado: la tuya personal o una compartida con un equipo.

  • Atención: Todos los que tienen acceso a la bóveda de destino podrán ver y usar lo que pongas allí.

hostTransfer.group · Solo escritorio

El grupo de la bóveda de destino en el que acaban los elementos.

  • Predeterminado: (sin grupo).

hostTransfer.linkMode · Solo escritorio

Qué pasa con la identidad y la clave con las que inicia sesión un host copiado. “Copiar vínculos” también las copia a la bóveda de destino. “Conservar credenciales personales” (de tu bóveda personal a una bóveda de equipo) las deja fuera de la copia y las mantiene como tus credenciales personales para ese host.

  • Predeterminado: Copiar vínculos.
  • Atención: Con “Copiar vínculos”, todos los que pueden abrir la bóveda de destino obtienen la clave y la contraseña copiadas.

tag.name

Cambia el nombre de la etiqueta en todos los lugares donde se usa. De 1 a 64 caracteres; dos etiquetas de una misma bóveda no pueden tener el mismo nombre, sin importar las mayúsculas.

hostFilter.match

Con varias etiquetas elegidas: “Cualquiera” muestra los hosts que tienen al menos una, “Todas” solo los hosts que las tienen todas.

  • Predeterminado: Cualquiera.

Dónde: Hosts › Nuevo › Importar desde Tailscale….

tailscale.source · Solo escritorio

“Tailscale de este equipo” pregunta a la app de Tailscale que se ejecuta aquí (tailscale status --json), sin clave: lista los dispositivos que este equipo puede ver. “API de Tailscale” es para un equipo sin la app de Tailscale: pregunta a api.tailscale.com con una clave de API.

  • Predeterminado: Tailscale de este equipo.

tailscale.controlUrl · Solo escritorio

Vacío para leer los dispositivos de Tailscale. Para una tailnet gestionada por Headscale, la URL del servidor Headscale (el server_url de su configuración): la importación lee entonces su lista de nodos (/api/v1/node) con una clave de API de Headscale, y no hace falta el nombre de la tailnet. Se guarda en este dispositivo para la próxima importación. «Este equipo» no necesita nada de esto: el cliente de Tailscale responde desde el servidor en el que ha iniciado sesión, Headscale incluido.

  • Ejemplo: https://headscale.example.com
  • Atención: Solo https:// (http:// sin cifrar solo hacia este equipo, localhost), sin usuario ni contraseña en ella: la clave de API va a este servidor. Headscale no dice qué sistema usa un nodo, su nombre MagicDNS ni si usa Tailscale SSH, así que esos dispositivos se añaden por su dirección de Tailscale.

tailscale.tailnet · Solo escritorio

El nombre de tu tailnet tal como lo muestra la consola de administración de Tailscale en Settings › General (a menudo tu dominio de correo electrónico, o un nombre como example.github). Un solo guion (“-”) significa la tailnet de la clave.

  • Ejemplo: example.com

tailscale.apiKey · Solo escritorio

Un token de acceso a la API de la consola de administración de Tailscale (Settings › Keys), que empieza por tskey-api-; con un servidor de control indicado, una clave de API de Headscale (headscale apikeys create). Se envía una vez, a api.tailscale.com o a ese servidor, para leer la lista de dispositivos, y no se guarda en ningún sitio.

  • Atención: Cualquiera con la clave puede gestionar tu tailnet hasta que caduque: ponle una caducidad corta y revócala tras la importación.

tailscale.address · Solo escritorio

La dirección que recibe cada host nuevo: su nombre MagicDNS (homelab.tail1234.ts.net), que sigue funcionando cuando el dispositivo obtiene una nueva IP de Tailscale, o su dirección IPv4 de Tailscale (100.x.y.z), que funciona sin MagicDNS.

  • Predeterminado: Nombre MagicDNS.

tailscale.ssh · Solo escritorio

Para dispositivos que ejecutan Tailscale SSH: los hosts reciben la etiqueta “Tailscale SSH” y ninguna contraseña ni clave. Tailscale comprueba quién eres en la tailnet, e inicias sesión con tu nombre de usuario de este equipo.

  • Predeterminado: Activado si todos los dispositivos elegidos ejecutan Tailscale SSH.

Dónde: Hosts › selecciona hosts › Enviar un archivo….

push.file · Solo escritorio

El archivo de este equipo que se copiará a cada host elegido. Allí conserva su nombre.

push.remoteDir · Solo escritorio

Dónde va el archivo en cada host. ~ es la carpeta personal del usuario con el que inicias sesión, y una ruta que no empieza por / se toma desde ahí. La carpeta debe existir.

  • Predeterminado: ~ (la carpeta personal).
  • Ejemplo: ~/bin, /etc/myapp

push.conflict · Solo escritorio

“Reemplazar” sobrescribe un archivo con ese nombre en la carpeta; “Omitir” lo deja como está y marca ese host como Omitido.

  • Predeterminado: Reemplazar.
  • Atención: “Reemplazar” sobrescribe el archivo en todos los hosts que lo tienen, sin preguntar.

push.hosts · Solo escritorio

Los hosts a los que va el archivo: los marcados, o (Por regla de etiquetas) los hosts con las etiquetas elegidas cuando empieza el envío. Se copia a cuatro hosts a la vez; cada uno se conecta como lo haría para SFTP y pregunta lo que preguntaría allí.

fleet.tagRule · Solo escritorio

Los hosts con alguna de las etiquetas marcadas, o con todas. La regla se lee cuando empieza la acción (y otra vez al repetirla), así que un host etiquetado desde entonces entra y uno al que se le quitó la etiqueta no; la línea de debajo dice qué hosts elige ahora.

  • Predeterminado: Alguna de las etiquetas.

Dónde: Hosts › Más › Traer un archivo….

pull.remotePath · Solo escritorio

El archivo que se trae de cada host elegido. ~ es la carpeta personal del usuario con el que inicias sesión, y una ruta que no empieza por / se toma desde ahí. La copia de cada host va en el zip a una carpeta con el nombre del host.

  • Ejemplo: /etc/os-release, ~/.bashrc

pull.cap · Solo escritorio

Un host cuyo archivo sea más grande se omite y se marca como demasiado grande, para que un registro enorme no llene el disco. Se trae de tres hosts a la vez.

  • Predeterminado: 50 MB.

pull.hosts · Solo escritorio

Los hosts de los que se trae el archivo: los marcados, o (Por regla de etiquetas) los hosts con las etiquetas elegidas cuando empieza. Cada uno se conecta como lo haría para SFTP. El zip se escribe cuando terminan todos los hosts; traer de nuevo de los que fallaron lo vuelve a escribir.

Dónde: Hosts › Más › Inventario.

inventory.export · Solo escritorio

Guarda el inventario como archivo CSV: host, dirección, sistema operativo, versión, arquitectura y cuándo se conectó a él este dispositivo por última vez (UTC). Lo que muestra viene de la comprobación del sistema operativo de cada conexión; un host al que nunca se conectó un dispositivo con esta bóveda tiene las columnas vacías. El archivo no está cifrado: los hosts de un equipo cuya política bloquea las exportaciones sin cifrar (o cuya política no se puede leer ahora) quedan fuera, y el diálogo dice cuántos.

Dónde: Hosts › un host › Sesiones de tmux….

tmux.search · Solo escritorio

Encuentra una palabra en lo que muestra cada panel de cada sesión de tmux del host: las últimas 200 líneas de cada uno, hasta 64 paneles, sin distinguir mayúsculas. El texto se lee por un canal propio (no se escribe en ningún terminal) y se busca en este equipo; un resultado dice en qué sesión, ventana y panel está, con Adjuntar.

tmux.name · Solo escritorio

El nombre de la sesión o de la ventana de tmux, o el título del panel, de hasta 128 caracteres. Los espacios, las comillas y cualquier otro carácter se quedan como se escriben (también un #: tmux lo muestra y no lo lee como formato); se rechaza un salto de línea, un tabulador u otro carácter de control, y también : y . en un nombre de sesión, que tmux usa para nombrar una ventana y un panel. «Iniciar» crea la sesión en el host y la deja funcionando; «Iniciar y conectar» además la abre en una pestaña nueva, lo que escribe el nombre en un terminal, así que ese solo admite letras, dígitos, - y _.

© 2026 IRONPINE LABS LLC
ALL RIGHTS RESERVED.