bambouville

Host-Key-Überprüfung

Tessera nutzt Trust-on-First-Use (TOFU): Die erste Verbindung zu einem Server heftet dessen Host-Key fest, und jede spätere Verbindung wird gegen diesen Pin geprüft.

Erste Verbindung

Wenn Sie sich zum ersten Mal mit einem Server verbinden, blockiert Tessera mit einem Dialog unbekannter Host, der Folgendes zeigt:

  • den Endpunkt (Adresse und Port),
  • den Server-Fingerabdruck (SHA-256, OpenSSH-kompatibel),
  • den Key-Typ.

Prüfen Sie den Fingerabdruck gegen eine Quelle, der Sie vertrauen — das Dashboard Ihres Anbieters oder auf dem Server selbst:

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

Tippen Sie dann auf Vertrauen und verbinden, um ihn festzuheften, oder auf Abbrechen, um abzubrechen. Solange dem Key eines Hosts nicht vertraut wird, installiert Tessera dort keine Keys, und das Dateien-Panel bittet Sie, zuerst eine Terminal-Sitzung zu öffnen.

Einmal vertrauen deckt die ganze Verbindung ab: Das Vertrauen eines mosh-Hosts reitet auf dessen Bootstrap-SSH mit, der tmux-Seitenkanal fragt also nicht erneut. Wenn Sie über Handoff ankommen oder einen Host über die Einrichtung in der Nähe importieren, sagt der Dialog außerdem, ob der Key dem entspricht, dem Ihr anderes Gerät vertraut — und wenn er abweicht, führt der Dialog mit Nicht verbinden. Nützlicher Kontext, aber der Pin bleibt eine ausdrückliche Entscheidung pro Gerät; Vertrauen wird nie synchronisiert.

Der Dialog „unbekannter Host“ mit der Serveradresse, ihrem SHA-256-Fingerabdruck, dem Key-Typ ssh-ed25519 sowie den Schaltflächen „Vertrauen und verbinden“ und „Abbrechen“.
Die Abfrage nach dem Prinzip Trust on First Use. Der hier gezeigte Fingerabdruck ist der, den Sie mit dem Server vergleichen.

Ein geänderter Host-Key

Weicht der Key eines Servers je von dem festgehefteten ab, zeigt Tessera HOST-KEY GEÄNDERT mit dem klassischen Hinweis „WARNUNG: DIE IDENTIFIKATION DES ENTFERNTEN HOSTS HAT SICH GEÄNDERT!“, den alten und den neuen Fingerabdrücken sowie den Schaltflächen Vertrauen / Abbrechen.

Behandeln Sie das als möglichen Man-in-the-Middle-Angriff, solange Sie nicht wissen, warum er sich geändert hat — legitime Gründe sind eine Neuinstallation des Servers, sein Austausch oder ein bewusster Wechsel seiner Host-Keys.

Die Seite „bekannte Hosts“

Die Seite bekannte Hosts (Seitenleiste auf dem iPad; auf dem iPhone hinter dem Auswahlmenü des Tabs „Keys“) listet jeden festgehefteten Key auf: Host, Algorithmus, Datum der Aufnahme und Status. Filter-Chips grenzen die Liste ein:

  • geprüft — festgeheftet und übereinstimmend,
  • veraltet — seit 90 Tagen nicht gesehen,
  • geändert — es wurde ein anderer Key gesehen; ein rotes Banner markiert die Abweichung.

Klappen Sie eine Zeile auf, um ihre Fingerabdrücke zu sehen, den Fingerabdruck kopieren, den neuen Key akzeptieren (nach einer legitimen Änderung) oder den Pin zu entfernen. Einen Pin zu entfernen heißt, dass die nächste Verbindung wieder wie eine erste Verbindung behandelt wird.

Pins werden in known_hosts.json im Application-Support-Verzeichnis der App gesichert, mit address:port als Schlüssel und mit OpenSSH-kompatiblen SHA-256-Fingerabdrücken.

Export & Import

Die Schaltfläche exportieren in der Kopfzeile der Seite schreibt Ihre Pins als standardmäßige OpenSSH-known_hosts-Datei — nur öffentliche Host-Keys und Fingerabdrücke, nichts Geheimes — bereit für jeden anderen SSH-Client. importieren liest eine known_hosts-Datei und zeigt eine Prüfung jedes gefundenen Pins, bevor irgendetwas zusammengeführt wird, sodass Sie entscheiden, was hereinkommt; eine Datei ohne Verwertbares sagt das („Es wurden keine importierbaren Host-Pins gefunden.“). Beides funktioniert auf iPad und iPhone.

Die Seite „bekannte Hosts“ mit Filter-Chips für alle, geprüft, veraltet und geändert, einer Tabelle festgehefteter Hosts mit Key-Algorithmus, Aufnahmedatum und Status sowie einer aufgeklappten Zeile, die ihren Fingerabdruck samt Schaltflächen zum Kopieren und Entfernen zeigt.
Jeder festgeheftete Host, nach Zustand filterbar. Das Aufklappen einer Zeile zeigt seinen gesicherten Fingerabdruck.