公開鍵認証てなに
このへん深く理解しなくても手順やれると思いますが本当に多少は理解しないとなにをやってるかわからないので知らねーという場合参考元など見るだけ見ておこう
公開鍵と秘密鍵を使っての電子署名による認証のやり方らしい。 ✅️参考
読んでみよう(全部理解してない)
さらに参考
詳しいことが書いてあるらしい〈2〉が読んでも特にわからない
あるということで一応貼っておく
公開鍵暗号について 予備知識…貼ってみただけ
端折った雑な理解
こんな感じか 曖昧に書いています
公開鍵と秘密鍵
公開鍵は他人に見られてもいい、秘密鍵は漏洩させてはいけない という違いで分けてるだけ。
だからといってSSH接続の一連の過程で2個の鍵だけ使ってるというわけではない。
鍵の種類
以下の他にもあるけど使う分にはあんまり関係ない?
ホスト鍵:ホスト(サーバー)認証に使う
両方ともサーバーで生成される。
公開鍵
ナントカ.pubというファイル
秘密鍵
ナントカというファイル
認証鍵:ユーザー認証に使う
ログインしたい人が自分で作って設置する。
公開鍵
SSHにおいて公開鍵と言われてるやつは大体これらしい
ログイン先の~/.ssh/authorized_keysに書き込んで設置。
秘密鍵
ログインしたい人が自分のPCに持っておく鍵。
SSHでの公開鍵認証では少なくともホスト認証とユーザー認証をおこなっている
ホスト認証
クライアント(自分)がログインしようとしてるそのサーバーが本物かどうかチェックする。
サーバーは、ホスト鍵(公開鍵)とホスト鍵(秘密鍵)による署名などをクライアントに送る。
クライアント側でチェックして確かめる。
セッションID
クライアントとサーバーのやりとりの最中、同一セッションであることをチェックするのに使う
ユーザー認証
クライアントがそのサーバーにログインする資格があるかチェックする。
クライアントはクライアントが持っている認証鍵(秘密鍵)の署名をサーバーへ送信する。
サーバーはその署名を、クライアントがサーバーに設置した認証鍵(公開鍵) (~/.ssh/authorized_keys) と検証する。
正直よくわからんのでこのへんにしておきます…鍵交換←?なので書いてません まあSSH接続の操作するだけなら多分関係ないし…
SSHクライアントでの実際の操作と照らし合わせて何がいつおこなわれているのかイマイチ自信なし(セッションID??公開鍵をクライアントから署名と一緒に送信??)
ごた御託は終わり
戻って作業していきます。