セキュリティ対策 - Shinichi0713/security_specialist GitHub Wiki
目的
脅威に対するセキュリティ案をまとめる
SSH関係
SSHの手順
SSH はざっくりつぎのような手順。
① A と B の間で 鍵交換 が行われ、暗号化で使う情報を共有する ② ①と同時に ホスト認証 が行われ、B が本物の B であることを A が確認する ③ 通信を暗号化しながら ユーザー認証 が行われ、B が A を信頼し、接続を許可する
SSHの秘密鍵
クライアント側で生成されて、誰にも教えずに大切に保管するもの。
秘密鍵とサーバーに登録された公開鍵がペアで機能して、認証が行われる仕組み。
つまり、サーバーにアクセスする際の「本人確認」に使われる。
ssh agent forwarding
概要
ssh agentで登録させた情報を、接続後のssh接続に引き継ぐやり方。 ssh秘密鍵をサーバーにコピーしないで、ssh秘密鍵認証する際に使われる。
SSH秘密鍵認証 VS 公開鍵認証
SSH秘密鍵認証と公開鍵認証は、実は同じプロセスの中で使われる。
- 公開鍵認証 これは、サーバーに自分の公開鍵を登録しておいて、認証時にそのペアになる秘密鍵でログインする方法だよ。これによって、パスワードを使わずに安全にアクセスできる!
- 秘密鍵の役割 秘密鍵は、認証を行う本人だけが持っている鍵で、それを使ってサーバーからの挑戦(暗号データ)に正しい応答を返すことで本人確認が行われる。
a. サーバーA上にのみあるssh秘密鍵をサーバーAのssh agentに登録
b. サーバーBにssh公開鍵認証で接続
c. そのままサーバーBからサーバーCに接続する際に
d. ssh秘密鍵をサーバーAのssh agentから引き継ぎ、ssh公開鍵認証する