動作環境
ローカルPC
エディション | Windows 10 Home |
バージョン | 21H2 |
エクスペリエンス | Windows Feature Experience Pack 120.2212.4180.0 |
サーバー(AWS)
OS | Amazon Linux2 |
インスタンスタイプ | t2.micro |
ssh接続時のエラー内容について
AWSのec2インスタンスを起動してローカルPCからコマンドプロンプトでssh接続を試みましたが上手く接続できませんでした。何度かipアドレスのみ変更して接続できていたので、コマンドはあってるはず・・・。teratermからもログインできているので疎通も問題ないはず。。
エラー内容見るとman-in-the-middle atackの文字を発見。
man-in-the-middle atackとは中間者攻撃のことで、簡単に言うと通信を行っている二者間に割り込み送受信されているデータを不正に取得する攻撃のことです。
ということは、ssh接続を実行しているのは本人だけど~/.ssh\known_hostに登録された鍵のパターンが異なるため、本人になりすましてると思われてしまったようです。
原因
ローカルのssh接続時の設定に問題があったようです。以下問題点。
~/.ssh\known_hostに設定されている秘密鍵がssh接続しようとしているサーバーの公開鍵の組み合わせと一致していないため、中間者攻撃とみなされてエラーが起きた。
① EC2インスタンス(仮想サーバー)をA鍵で構築
② A鍵で構築したEC2に一度接続を行った後に、インスタンスを削除する。
③ EC2インスタンスをB鍵で構築する
④ ~/.ssh\known_hostに記述された設定はA鍵のままなのでB鍵でssh接続をすると中間者攻撃とみなされる。
対処方法
ローカルPCのユーザー配下にある~/.ssh\known_hostの設定を消去する。
もう一度ssh接続してみる。
無事接続できました!