Abrir el terminal con un solo clic usando el enlace con el esquema neoserver:// en iOS

Author: Neo Huang
ÚLTIMA ACTUALIZACIÓN: 2026-08-16 23:40:54
Etiqueta: NeoServer

Index

NeoServer

NeoServer offers a comprehensive management solution for your servers, NAS (Network Attached Storage), and Linux-based routers across iPhone, iPad, and Mac platforms.

Un enlace neoserver://, un clic, y NeoServer se activa automáticamente, se conecta al servidor y te abre el terminal en la posición que quieras: puede ser en una máquina específica, una sesión de tmux o un directorio.

Guárdalo en los favoritos de Safari, en Notas, como icono en el escritorio, en Atajos de Siri, o envíalo por AirDrop a un compañero; siempre funcionará.


1. Cómo escribir el enlace del terminal

Todos los enlaces del terminal se ven así:

neoserver://terminal?host=<servidor>&port=<puerto>&user=<usuario>&name=<nota-del-terminal>&tmuxName=<sesión-tmux>&zellijName=<sesión-zellij>&workdir=<directorio>&command=<comando>
Parámetro Obligatorio Qué rellenar
host IP o dominio del servidor. Obligatorio, si se deja vacío el enlace no funciona.
port Puerto SSH, si no se especifica el valor predeterminado es 22. Rango válido 1–65535, si se pone un valor ilegal el enlace queda inservible.
user Nombre de usuario para el inicio de sesión, si no se especifica el valor predeterminado es root.
name Nombre descriptivo de este terminal (solo para mostrar, no interviene en la coincidencia de servidores).
tmuxName Entra automáticamente a esta sesión de tmux al conectar.
zellijName Entra automáticamente a esta sesión de zellij al conectar.
workdir Hace un cd automático a este directorio remoto al conectar.
command Ejecuta automáticamente un comando al conectar (con salto de línea). Para varias líneas usa %0A como separador.

⚠️ Prioridad: tmuxName > zellijName > command > workdir.

  • tmuxName / zellijName y command no se combinan: si se indica el nombre de una sesión, solo se hará attach a dicha sesión y command será ignorado (el attach bloquea la entrada del terminal, por lo que no se puede insertar el comando).
  • command se puede usar junto con workdir: primero se hace cd al directorio, y luego se ejecuta el comando.
  • tmuxName / zellijName / workdir siguen siendo mutuamente excluyentes.
  • name es únicamente un nombre para mostrar, puede coexistir con cualquier otro y no afecta a la lógica anterior.

Copia el siguiente ejemplo y modifícalo a tu gusto:

# Lo más simple: solo el host
neoserver://terminal?host=1.2.3.4

# Especificar puerto y usuario
neoserver://terminal?host=1.2.3.4&port=2222&user=deploy

# Conectar y entrar directamente a la sesión main de tmux
neoserver://terminal?host=1.2.3.4&user=root&tmuxName=main

# Conectar y entrar directamente a la sesión dev de zellij
neoserver://terminal?host=1.2.3.4&user=root&zellijName=dev

# Conectar y hacer cd automáticamente al directorio de logs
neoserver://terminal?host=1.2.3.4&user=root&workdir=/var/log/nginx

# Ponerle un nombre descriptivo al terminal (para mostrarlo en la lista, no interviene en la coincidencia)
neoserver://terminal?host=1.2.3.4&user=root&name=Servidor-de-producción

# Conectar y ejecutar automáticamente ls -la (%20 = espacio)
neoserver://terminal?host=1.2.3.4&user=root&command=ls%20-la

# Primero hacer cd a /var/log, luego ejecutar tail -f syslog
neoserver://terminal?host=1.2.3.4&user=root&workdir=/var/log&command=tail%20-f%20syslog

# Comandos de varias líneas: primero cd /tmp luego pwd (%0A = salto de línea)
neoserver://terminal?host=1.2.3.4&user=root&command=cd%20%2Ftmp%0Apwd

2. Al conectar, ¿dónde se abrirá el terminal?

Esta es la parte más útil del enlace del terminal: dependiendo de los parámetros rellenados, el lugar donde se abre el terminal tras la conexión será diferente:

Parámetros introducidos Estado del terminal tras la conexión
Solo host (+ port/user opcionales) Abre un terminal normal, situado en el directorio home del usuario
tmuxName=main Hace tmux attach automáticamente a la sesión main, volviendo a la pantalla donde lo dejaste
zellijName=dev Entra automáticamente a la sesión dev de zellij
workdir=/var/log Hace cd automáticamente al directorio /var/log
command=ls -la Cuando el terminal está listo, teclea y ejecuta este comando automáticamente
workdir=/var/log&command=tail -f syslog Primero hace cd a /var/log, luego ejecuta tail -f syslog

¿Por qué se dividen en estos tres tipos?

  • Sesiones tmux / zellij: Si se corta la red, se cierra la App o te conectas desde otro móvil, la sesión sigue ahí y el proceso no se pierde. Si compartes la sesión tmux de un servidor con un colega, ambos podréis entrar en la misma pantalla para solucionar problemas juntos.
  • Directorio: En lugar de tener que hacer cd /opt/app/logs cada vez que te conectas, es mejor que el enlace te coloque ahí directamente.
  • Comando: Ejecuta automáticamente un comando al conectar, como por ejemplo extraer logs, ver el estado o correr un script de despliegue. Se puede combinar con workdir (primero entra al directorio y luego se ejecuta).

name no afecta al comportamiento tras la conexión; simplemente le da un nombre fácilmente reconocible a este terminal para que sea más fácil de encontrar en la lista.


3. Copiar el enlace desde la App (sin escribir a mano)

Escribir enlaces a mano es propenso a errores. NeoServer permite copiar con un clic desde tres lugares; una vez copiado, puedes pegarlo en cualquier sitio.

1. Copiar el enlace de «este servidor»

Pestaña Servidores · Lista de servidoresDesliza a la izquierda sobre un servidor → Copy Scheme Link

Lo copiado será:

neoserver://terminal?host=...&port=...&user=...

2. Copiar desde el modo quick del terminal

Pestaña Terminal · Lista de servidores (modo quick) → Mantén pulsado sobre un servidor → Copy Scheme Link

3. Copiar el enlace de «esta sesión» ⭐ La más útil

Pestaña Terminal · Lista de sesionesMantén pulsado sobre una sesión → Copy Scheme Link

Este enlace empaquetará «la conexión a la sesión Y del servidor X»:

  • Si esta sesión es tmux → añadirá automáticamente &tmuxName=...
  • Si esta sesión es zellij → añadirá automáticamente &zellijName=...
  • Sesión normal → solo incluye host/port/user

Al copiarse con éxito aparecerá el mensaje Link Copied, y el enlace estará en el portapapeles.

✏️ El enlace copiado solo contiene host/port/user (el enlace de la sesión lleva además tmuxName o zellijName). ¿Quieres añadir un name (descripción) o un command (comando automático)? Solo tienes que añadirlos manualmente al final del enlace, por ahora la App no genera estos dos.

💡 Mantén pulsado para copiar una sesión de tmux que se esté ejecutando y envíala a un colega; al abrirla desde NeoServer, se conectará directamente a la misma sesión; ambos entraréis en la misma pantalla del terminal.


4. Cómo abrir este enlace

neoserver:// es un protocolo de enlace de iOS: en cualquier lugar donde puedas hacer clic en un enlace, se podrá activar NeoServer:

  • Safari: Pégalo en la barra de direcciones y pulsa Enter, o guárdalo en favoritos para hacer clic.
  • Notas / Recordatorios: Guárdalo como una nota, haz un clic y entrarás directamente.
  • Atajos (Shortcuts): Introduce el enlace en la acción «Abrir URL» → puedes vincularlo a la voz de Siri, a un icono en el escritorio o a una automatización.
  • AirDrop: Envía un enlace entre dos iPhones y la otra persona solo tiene que abrirlo para conectarse.
  • Correo electrónico: Envía el enlace como texto; el destinatario lo copia y lo abre en Safari.

📱 La primera vez que se hace clic en un enlace neoserver:// en un dispositivo real, iOS mostrará el mensaje «¿Deseas abrir en NeoServer?», basta con confirmarlo y no volverá a aparecer.


5. Tres escenarios prácticos

🏠 Escenario 1: Convertir «conectar a tmux de producción» en un icono de escritorio

Cada día tienes que conectarte a la sesión main de tmux en el servidor de producción. En lugar de abrir la App → buscar el servidor → conectar → hacer attach cada vez, es mejor convertirlo en un icono:

  1. Copia el enlace de este servidor desde la App y añádele manualmente &tmuxName=main;
  2. Abre «Atajos» (Shortcuts) de iOS → Nuevo → Añade la acción «URL», pega este enlace;
  3. Añade la acción «Abrir URL»;
  4. Haz clic en Compartir → Añadir a la pantalla de inicio, ponle el nombre «Conectar a prod» y elige un icono.

A partir de ahora, al hacer clic en este icono de escritorio, NeoServer se conectará automáticamente y entrará en la sesión main, todo sin pasos adicionales.

🎙️ Escenario 2: Conectarse por voz

Integra el atajo anterior con Siri y configura la frase «Oye Siri, conectar a prod». Cuando lo digas, el teléfono se conectará automáticamente.

🤝 Escenario 3: Enviar una sesión a un colega

  1. Terminal · Lista de sesiones → Mantén pulsado en esta sesión → Copy Scheme Link;
  2. Envíaselo a tu colega (vía AirDrop / WeChat / lo que prefieras);
  3. Él lo abre desde NeoServer → se conecta automáticamente a la misma sesión de tmux.

(Requisito: en su iPhone, la biblioteca de servidores de su NeoServer también debe poder conectarse al mismo host).

🖥️ Escenario 4: Ejecutar un comando con un icono en el escritorio

Si necesitas revisar a diario el estado de los contenedores de una máquina y no quieres escribir docker ps a mano cada vez que te conectas:

  1. Copia el enlace del servidor y añade manualmente &command=docker%20ps;
  2. Hazlo un icono en el escritorio igual que en el Escenario 1, y ponle el nombre «Estado contenedores».

A partir de ahora, haz clic en el icono → NeoServer se conecta → ejecuta automáticamente docker ps, y el resultado aparece directamente en el terminal.


6. Preguntas frecuentes sobre enlaces del terminal

P: Hice clic en el enlace pero me conecté al servidor equivocado, ¿por qué? R: NeoServer busca el servidor por su host (+ port si se indicó + user si se indicó). Si tienes dos servidores en tu biblioteca con el mismo host, se conectará al primer coincidente. Rellenar el port o el user permite distinguirlos con precisión.

P: ¿Qué pasa si no tengo este servidor en la biblioteca y hago clic en el enlace? R: Ya no aparece la página de «Nuevo servidor». Ahora se abre directamente un terminal temporal in situ utilizando el host/port/user del enlace:

  • Primero intenta la autenticación sin credenciales (ideal para escenarios como Tailscale SSH, donde la conexión ya verifica la identidad);
  • Si el servidor requiere contraseña, recurre a la autenticación normal con contraseña / keyboard-interactive de NeoServer;
  • El servidor temporal no se guarda en tu biblioteca de servidores, se elimina al cerrarlo;
  • Pero dejará una instantánea sin contraseña ni claves privadas en las «Sesiones recientes»; si tocas sobre ella tras reiniciar la App, podrás reconectar.

Los parámetros name / tmuxName / zellijName / workdir / command originales del enlace seguirán funcionando con normalidad.

P: ¿Se puede poner la contraseña directamente en el enlace para no tener que introducirla cada vez? R: No. Esto es una restricción de seguridad: los enlaces nunca contienen contraseñas. Incluso si añades manualmente password=xxx, será ignorado. La contraseña solo se transmite mediante el llavero dentro de la App.

P: ¿Para qué sirve name? R: Es simplemente un nombre descriptivo para esta conexión de terminal, para que puedas identificarlo fácilmente en la lista. No interviene en la coincidencia de servidores: dos enlaces con el mismo host pero diferente name se seguirán conectando al mismo servidor.

P: ¿Tiene algún riesgo de seguridad usar command? R: Un poco, hay que ser consciente de ello. command se ejecutará automáticamente (con salto de línea) al conectar. Cualquier App o página web puede emitir un enlace neoserver://...&command=..., así que no hagas clic en enlaces sospechosos que lleven command. La primera vez, iOS mostrará un mensaje de «¿Deseas abrir en NeoServer?» como única barrera de protección; además, no podría llevar la contraseña a servidores que la requieran, por lo que solo recurrirá a la autenticación normal.

P: ¿Se pueden poner directorios con espacios o caracteres chinos en workdir? R: Sí. Escríbelo directamente, por ejemplo workdir=/home/me/my logs. La App gestionará los caracteres especiales automáticamente. La forma más segura es copiar el enlace desde la App en lugar de escribirlo a mano.

P: Hago clic y no pasa nada, ¿por qué? R: ① Confirma que empieza por neoserver://; ② La primera vez aparecerá un mensaje de confirmación «Abrir en NeoServer»; ③ Comprueba que host no esté vacío; ④ No importa si la App no está en primer plano, se activará automáticamente.

P: ¿Se puede abrir desde Android / Windows? R: No. neoserver:// solo lo reconocen los iPhone / iPad que tengan NeoServer instalado.


Features

Multi Device

Support across multiple platforms: iPhone, iPad, Mac.

iCloud Sync

iCloud Sync ensures all your configuration information is securely stored in iCloud, facilitating seamless synchronization across your multiple devices.

Security

Security, featuring support for password and biometric (FaceID, TouchID) unlocking mechanisms.

A wealth of features.

providing support for SSH terminal, script execution, containers management, and metrics monitoring with zero server-side configuration required.

Screenshots