ホストキーの検証
Tessera は trust-on-first-use(TOFU、初回接続時の信頼)を採用しています。 サーバーへの最初の接続でそのホストキーをピン留めし、以降の接続はすべてその ピンと照合されます。
初回接続
サーバーに初めて接続すると、Tessera は 不明なホスト のシートを表示して いったん止まり、次の内容を示します。
- エンドポイント(アドレスとポート)、
- サーバーのフィンガープリント(SHA-256、OpenSSH 互換)、
- キーの種類。
フィンガープリントは信頼できる情報源と照合してください — 契約先のダッシュボード、 あるいはサーバー自身で次を実行します:
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
そのうえで 信頼して接続 をタップするとピン留めされ、キャンセル で中止 します。ホストのキーが信頼されるまで、Tessera はそのホストにキーを設置せず、 ファイルパネルは先にターミナルセッションを開くよう求めます。
一度信頼すれば接続全体が対象になります。mosh ホストの信頼はブートストラップの SSH に相乗りするため、tmux のサイドチャネルで再び確認を求められることは ありません。Handoff 経由で到達したときや、 近くのデバイスからのセットアップでホストを読み込んだときは、 もう一方のデバイスが信頼しているキーと一致するかどうかもシートに表示されます。 異なる 場合、シートは 接続しない を先頭に出します。参考にはなりますが、 ピン留めはあくまでデバイスごとの明示的な判断です。信頼が同期されることは ありません。
ホストキーが変わったとき
サーバーのキーがピン留めしたものと異なる場合、Tessera は ホストキーが変更されました を表示し、おなじみの 「警告: リモートホストの識別情報が変更されました。」という注意書き、以前と新しい フィンガープリント、信頼 / キャンセル のボタンを示します。
変更の理由に心当たりがない限り、中間者攻撃の可能性があるものとして扱って ください。正当な理由としては、サーバーの再インストール、入れ替え、ホストキーの 意図的な更新などがあります。
既知のホストページ
既知のホスト のページ(iPad ではサイドバー、iPhone ではキータブのセレクタの 中)には、ピン留めしたキーがすべて並びます。ホスト、アルゴリズム、追加日、状態が 表示されます。フィルタのチップで一覧を絞り込めます。
- 検証済み — ピン留め済みで一致しているもの、
- 古い記録 — 90 日間見かけていないもの、
- 変更あり — 異なるキーが確認されたもの。赤いバナーが不一致を示します。
行を展開するとフィンガープリントを確認でき、フィンガープリントをコピー、 (正当な変更のあとであれば)新しいキーを受け入れる、ピンの 削除 ができます。 ピンを削除すると、次の接続はふたたび初回接続として扱われます。
ピンはアプリの Application Support ディレクトリ内の known_hosts.json に、
address:port をキーとして、OpenSSH 互換の SHA-256 フィンガープリント付きで
保存されます。
書き出しと読み込み
ページヘッダーの 書き出す ボタンは、ピンを標準の OpenSSH known_hosts
ファイルとして書き出します — 公開ホストキーとフィンガープリントだけで、秘密の
情報は含まれません — ほかのどの SSH クライアントでもそのまま使えます。
読み込む は known_hosts ファイルを読み、統合する前に見つかったピンをすべて
確認画面に出すので、何を取り込むかは自分で決められます。使えるものが何もない
ファイルの場合はそう表示されます(「読み込めるホストピンが見つかりませんでした。」)。
どちらも iPad と iPhone で使えます。