Documentación de Shellvana
Shellvana es un cliente SSH para teléfonos. Se conecta a tus propios servidores mediante SSH estándar y muestra la salida como texto legible. Esta página cubre la configuración y el uso diario.
Qué necesitas
- Un teléfono. Un iPhone con iOS 15 o posterior, o un teléfono Android.
- Un host con
sshdestándar. Sirve cualquier máquina Linux, BSD o macOS a la que ya puedas llegar conssh. No hay que instalar nada en el servidor: ni agente, ni daemon, ni plugin. - Una ruta de red hasta ese host. Shellvana se conecta directamente desde tu teléfono a la dirección que escribes. Si el host solo es accesible desde tu red doméstica, conéctate antes mediante tu propia VPN (WireGuard, Tailscale o similar). Shellvana no tiene ningún relay ni servicio en la nube de por medio.
Instalación
Descarga Shellvana desde App Store o Google Play. La app es gratuita. No hay que crear ninguna cuenta ni iniciar sesión en nada.
Añadir un host
- En la lista de hosts, toca + para abrir Add host (añadir host).
- Rellena Name (nombre; la etiqueta que quieras), Host (una dirección o un nombre de host), Port (puerto; normalmente 22) y User (usuario).
- En Auth (autenticación), elige Password (contraseña) o una de tus claves SSH. Si todavía no tienes claves, la lista solo ofrece Password. Consulta Claves SSH.
- En Grid (cuadrícula), elige el tamaño de terminal que Shellvana le pide al servidor. Console son 132 columnas por 40 filas y sirve para el trabajo normal en el shell. AI agent son 60 columnas por 40 filas y sirve para los asistentes de terminal a pantalla completa que dibujan una barra lateral. Custom te deja definir Cols y Rows (columnas y filas) a mano.
- Toca Save (guardar) y luego toca el host para conectarte.
Primera conexión y claves de host
La primera vez que te conectas, Shellvana muestra el algoritmo de la clave de host del servidor y su huella digital, y pregunta Trust this host? (¿confiar en este host?). Compara la huella con la del servidor, por ejemplo con ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub, y luego toca Trust (confiar).
Shellvana recuerda esa clave. Si el servidor alguna vez presenta una distinta, ves un aviso HOST KEY CHANGED (clave de host cambiada) con la huella anterior y la nueva, y la sesión no se abre a menos que escribas el nombre del host para aceptar la clave nueva. Si no reinstalaste ni regeneraste las claves del servidor, no la aceptes.
Se rechazan los algoritmos de clave de host débiles u obsoletos. Si ves "Host key algorithm ... is not allowed", activa en el servidor una clave de host moderna, como Ed25519.
Leer una sesión
- Vista de lectura. Todas las sesiones se abren en la vista de lectura. La prosa y el Markdown se reajustan en tipografía proporcional, dimensionada para un teléfono. Las tablas, los diffs, la salida en árbol y todo lo alineado en columnas se quedan en monoespaciado, con su espaciado exacto.
- Vista de terminal. Toca el icono de terminal en la barra superior para ver la cuadrícula exacta que envió el servidor. Toca el icono de lectura para volver. Las dos vistas muestran la misma sesión, así que no pierdes nada al cambiar.
- Fuente y tamaño de lectura. Toca el icono Reading font (fuente de lectura) en la barra superior para cambiar la tipografía y el tamaño de lectura.
- Programas a pantalla completa. Programas como
vim,htopytmuxfuncionan con normalidad. Cuando uno toma la pantalla, Shellvana te avisa de que su diseño necesita la cuadrícula y te ofrece un botón Grid. - Enlaces. Un enlace de la salida solo se abre después de que confirmes adónde lleva, y se abre en tu propio navegador, fuera de la app.
Escribir comandos
- Escribe en el compositor de la parte de abajo (Type a command, escribe un comando) y toca el botón de enviar.
- La fila de teclas sobre el compositor envía teclas que le faltan al teclado de un teléfono, como Ctrl-C, Tab, Esc, las flechas, Ctrl-D y Ctrl-Z.
- Cuando la salida parece una petición de contraseña, Shellvana ofrece Secure input (entrada segura). El texto que escribes así se envía al servidor, pero no se guarda ni pasa a la transcripción.
Claves SSH
Abre el menú (tres puntos) de la lista de hosts y elige SSH keys (claves SSH).
- Importar una clave. Toca Import (importar), pega una clave privada de OpenSSH y escribe su contraseña si la tiene. La clave se guarda cifrada en el dispositivo.
- Generar una clave de hardware (Pro). Generate secure key (generar clave segura) crea una clave dentro del hardware seguro del teléfono: el Secure Enclave en el iPhone, o StrongBox o el keystore respaldado por hardware en Android. La mitad privada no puede salir del dispositivo. Estas claves son ECDSA P-256, que en el servidor aparece como
ecdsa-sha2-nistp256. - Instalar la mitad pública en el servidor. Abre el menú de la clave, elige Copy public key (copiar clave pública) y añade esa línea a
~/.ssh/authorized_keysde tu usuario en el servidor. La primera vez, conéctate con contraseña para hacerlo. - Usar la clave. Edita el host y, en Auth, elige la clave en lugar de Password.
Mantener el trabajo vivo tras una desconexión
Un teléfono pierde conexiones: se bloquea la pantalla, cambia la red, la app pasa a segundo plano. Cuando Shellvana se reconecta, el servidor te da un shell nuevo. Todo lo que se estaba ejecutando en el shell anterior se pierde, salvo que corriera dentro de un multiplexor de terminal.
Para cualquier cosa de larga duración, ejecútala dentro de tmux o screen en el servidor. Por ejemplo, ejecuta tmux new -A -s main después de conectarte. Si la conexión se cae, vuelve a conectarte y ejecuta el mismo comando para retomar donde lo dejaste.
Ajustes de seguridad por host
- Exigir desbloqueo para conectar. Desactivado por defecto. Cuando lo activas en un host, Shellvana pide tu huella, tu rostro o el bloqueo de pantalla antes de abrir una sesión ahí.
- Bloquear capturas de pantalla. Activado por defecto. Se bloquean las capturas de pantalla y la vista previa de una sesión en el selector de apps. Puedes desactivarlo por host.
- Conectar (incógnito) (Pro). En el menú de un host, abre una sesión que no escribe ninguna transcripción.
Historial y tus datos
- Las transcripciones de las sesiones se guardan solo en el teléfono, cifradas con SQLCipher. Las transcripciones de más de 30 días se borran solas.
- Para quitar las transcripciones guardadas de un host, abre el menú de ese host y elige Clear this host's history (borrar el historial de este host). Para quitarlo todo, abre el menú principal y elige Clear all history (borrar todo el historial).
- Eliminar un host lo quita de la lista, pero conserva sus transcripciones guardadas y su clave de host de confianza. Si quieres que también desaparezcan, borra antes el historial.
- Shellvana no tiene cuenta, ni analíticas, ni informes de fallos. La política de privacidad enumera todas las conexiones de red que hace la app.
Gratis y Pro
- Gratis. Una sesión en vivo, autenticación con contraseña y con clave, perfiles de host y el renderizado legible completo. La legibilidad no es lo que se paga.
- Pro. Una única compra, no una suscripción. Añade hasta cuatro sesiones simultáneas, autenticación con claves respaldadas por hardware, todas las fuentes de lectura y sesiones incógnito.
- Comprar o restaurar. Abre el menú de la lista de hosts y elige Shellvana Pro. En un teléfono nuevo, toca Restore purchase (restaurar compra) en esa hoja.
Solución de problemas
- La conexión agota el tiempo de espera. Comprueba que el teléfono llega al host. Si el host está en una red privada, activa antes tu VPN y verifica que el puerto coincide con el que escucha
sshd. - Se rechaza la clave. Confirma que la clave pública de Copy public key está en una sola línea de
~/.ssh/authorized_keys, para el mismo usuario que indica el perfil del host, y que el servidor admite ese tipo de clave. - El diseño de un programa se ve mal en la vista de lectura. Cambia a la vista de terminal. Los programas a pantalla completa se dibujan para una cuadrícula, y la cuadrícula siempre es la salida exacta.
- Un asistente a pantalla completa aparece cortado. Edita el host, cambia Grid a AI agent y vuelve a conectar.
- "No previous purchase found." (No se encontró ninguna compra anterior.) Asegúrate de que el teléfono tenga iniciada la sesión en la misma cuenta de App Store o Google Play con la que compraste Pro y vuelve a probar Restore purchase.
Obtener ayuda
Escribe a [email protected] con el modelo de tu dispositivo y tu versión de iOS o Android, o consulta la página de soporte.