bambouville

Verificación de claves de host

Tessera usa la confianza en el primer uso (TOFU): la primera conexión con un servidor fija su clave de host, y todas las conexiones posteriores se comprueban contra esa fijación.

Primera conexión

La primera vez que conectas con un servidor, Tessera se detiene con una hoja de host desconocido que muestra:

  • el endpoint (dirección y puerto),
  • la huella del servidor (SHA-256, compatible con OpenSSH),
  • el tipo de clave.

Verifica la huella con una fuente en la que confíes — el panel de tu proveedor, o el propio servidor:

ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

Después toca Confiar y conectar para fijarla, o Cancelar para abandonar. Mientras no se confíe en la clave de un host, Tessera no instalará claves en él, y el panel de archivos te pedirá que abras antes una sesión de terminal.

Confiar una vez cubre toda la conexión: la confianza de un host mosh viaja en su SSH de arranque, así que el canal lateral de tmux no vuelve a preguntar. Cuando llegas por handoff o importas un host mediante la configuración cercana, la hoja también dice si la clave coincide con aquella en la que confía tu otro dispositivo — y cuando difiere, la hoja encabeza con No conectar. Es contexto útil, pero la fijación sigue siendo una decisión explícita de cada dispositivo; la confianza nunca se sincroniza.

La hoja de host desconocido con la dirección del servidor, su huella SHA-256, el tipo de clave ssh-ed25519 y los botones Confiar y conectar y Cancelar.
La pregunta de confianza en el primer uso. La huella que aparece aquí es la que comparas con el servidor.

Una clave de host cambiada

Si la clave de un servidor llega a diferir de la fijada, Tessera muestra LA CLAVE DEL HOST CAMBIÓ con el clásico aviso «ADVERTENCIA: ¡LA IDENTIFICACIÓN DEL HOST REMOTO HA CAMBIADO!», las huellas antigua y nueva, y los botones Confiar / Cancelar.

Trátalo como un posible ataque de intermediario salvo que sepas por qué cambió — motivos legítimos son reinstalar el servidor, sustituirlo o rotar sus claves de host deliberadamente.

La página de hosts conocidos

La página de hosts conocidos (barra lateral en el iPad; tras el selector de la pestaña de claves en el iPhone) lista todas las claves fijadas: host, algoritmo, fecha de alta y estado. Las fichas de filtro acotan la lista:

  • verificado: fijada y coincidente,
  • obsoleto: sin verse en 90 días,
  • cambiado: se vio una clave distinta; un aviso rojo marca la discrepancia.

Despliega una fila para ver sus huellas, copiar la huella, aceptar la clave nueva (tras un cambio legítimo) o quitar la fijación. Quitar una fijación significa que la próxima conexión se vuelve a tratar como una primera conexión.

Las fijaciones se guardan en known_hosts.json, en el directorio Application Support de la app, indexadas por address:port, con huellas SHA-256 compatibles con OpenSSH.

Exportar e importar

El botón de exportar de la cabecera de la página escribe tus fijaciones como un archivo known_hosts estándar de OpenSSH — solo claves públicas de host y huellas, nada secreto —, listo para cualquier otro cliente SSH. Importar lee un archivo known_hosts y muestra una revisión de todas las fijaciones que encontró antes de fusionar nada, así que tú decides qué entra; un archivo sin nada aprovechable lo dice («No se encontró ninguna fijación de host importable.»). Ambos funcionan en el iPad y en el iPhone.

La página de hosts conocidos con fichas de filtro para todos, verificado, obsoleto y cambiado, una tabla de hosts fijados con el algoritmo de la clave, la fecha de alta y el estado, y una fila desplegada que revela su huella con los botones de copiar y quitar.
Todos los hosts fijados, filtrables por estado. Al desplegar una fila aparece su huella guardada.