☝️
メモ: 鍵の指紋を眺める良い習慣
皆さんは 16 進数の羅列を見て比較するのが好きですか? 私は好きではありません。 もしあなたが 16 進数の羅列を比較することを得意とするのであれば、このメモはきっと役に立たないでしょう。
鍵の指紋
皆さんは毎日 ssh をしていると思うので、初めてサーバに ssh 接続した日のことを忘れてしまっているかもしれません。 覚えていますか? “お前がアクセスしようとしているサーバの指紋はこれだが、正気か?” と尋ねられて脳死で yes
と入力して Enter したあの日のことを。
$ ssh example.com
The authenticity of host 'example.com (0.0.0.0)' can't be eastablished.
RSA key fingerprint is HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH:HH
Are you sure you want to continue connecting (yes/no)?
本当に用心深い人なら、指紋である 16 進数の羅列を指差しながら 3 回くらい確認すると思いますが、ほとんどの人はそこまでしていないと思います。 ああ、もっと簡単に比較できないものか……
できます
とりあえず $HOME/.ssh/config
を編集しましょう。 ファイルの先頭に VisualHostKey=yes
と書くだけの簡単なお仕事です。
$ ed $HOME/.ssh/config
1i
VisualHostKey=yes
.
wq
この状態で適当なサーバに ssh 接続しようとしてみてください。 頭をぶつけたときに見える星を額縁入れて飾ったようなアスキーアートが表示されます。
+--[ED25519 256]--+
|.o .+. .|
|o.+ . .o |
|o*E o o|
|oo. . o . o|
| .. S. . . o|
|+ . ..*. .o|
|+. +. . *.* . ..|
|..=... ..*.=. . |
|.... ..o.oo o. |
+----[SHA256]-----+
これからは 16 進数の羅列を一桁ずつ比較する必要はありません。 この一見意味不明な芸術を眺めるだけで比較することができます。
ある日その見た目が変わったなら恐らく誰かがサーバのふりをしています。 接続するなかれ。
おわり
終わりです。
Discussion