Posted at

AWSサーバーにログインできなくなった場合の対処

More than 3 years have passed since last update.

普段使いのMacが起動しなくなって新しくしたところ、使っていたAWSにログインできなくなったので、再度使えるようになるまでの、備忘録です。

SSHでログインできないと、クライアント上でしかログが確認できないし情報少なすぎて、ほんと辛いですね。。


新しいキーペアの作成(失敗)

前のMacが起動しなくなったので秘密鍵も失ったため、新しいキーペアを作成しました。

ですが、以下のエラーでログインできず。-vvv して詳細なログも追いましたが、原因つかめず。

Permission denied (publickey).


キーペアのインポート(失敗)

Mac上でssh-keygenで秘密鍵・公開鍵を作成して、公開鍵をインポートし、秘密鍵のアクセス権も chmod 400 hoge.pem しましたが、さっきと同じエラーでログインできず。


インスタンスにJavaSSHクライアント(MindTerm)を起動して接続確認(失敗)

クライアントの設定は指示通りやっているので問題ないと判断し、サーバー側がどうなっているのか確認したかったので、インスタンスに対してブラウザからJavaアプレットで繋ぐのを試みました。

いろんな確認ポップアップに対してすべてYesで答えましたが、ログインの段階でターミナルが固まる、という動作を何度も繰り返したため、諦めました。


新しいインスタンスを作成して、ボリュームを付け替え

試しに、新しいインスタンスを作成したうえで、ボリュームの付け替えしたらどうなるかなと思って、やってみました。

手順を以下に残します。

* 新しいインスタンスの作成

* 接続できないインスタンスのインスタンスの状態を停止する。

* このときに、ルートデバイスの値を控えておく。/dev/xvdaなど。

* 新しく作ったインスタンスの状態も停止する。

* ボリュームに表示される2つのボリュームをデタッチ。

* 接続できないインスタンスに紐付いていたボリュームを、新しく作成したインスタンスにアタッチ。

* このときに入力するデバイスは、さっき控えておいたデバイスの値を入力。

* 新しく作ったインスタンスの状態を開始にする。

* Macからsshでつないでみる

自分はこれでうまくいきました。

ログインできたときの俺つえぇぇー!!感がたまんないですね(笑)