sshの仕組み 接続元のクライアントと接続先のサーバ間に暗号化された経路を確立し、データを安全に転送するための技術 ssh接続時…

sshの仕組み

  • 接続元のクライアントと接続先のサーバ間に暗号化された経路を確立し、データを安全に転送するための技術
  • ssh接続時にはユーザ認証とホスト認証が行われる

共通

  1. クライアント側で秘密鍵・公開鍵を生成する
  2. 公開鍵をサーバに登録する

ホスト認証:接続先サーバが意図したものかどうかの認証

  1. 初回接続時にサーバの公開鍵をクライアントのknown_hostsに書き込む
  2. クライアントからサーバにssh接続要求を行う
  3. known_hostsに書き込まれた公開鍵とサーバの公開鍵が一致する場合はユーザ認証に進み、しない場合は警告する

ユーザ認証:接続元がサーバに接続する資格があるかどうかの認証
4. サーバは公開鍵で暗号化した乱数を応答する
5. クライアントは乱数を復号し、ハッシュ化してサーバへ送信する
6. サーバ側でも乱数からハッシュ値を生成し、5と比較する
7. 6が一致していればssh接続が確立される