2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

キーペアーを紛失したec2-user以外のユーザーで、EC2にsshでログインする方法

Last updated at Posted at 2023-10-20

概要

表題の通り、実務にてキーペアーを紛失したec2-user以外のユーザーでEC2のサーバーにsshで接続する必要があったので、その対処方法を記載します。

前提条件

  • EC2のサーバーが構築されている
  • ec2-user以外のユーザーが作成されている
  • ec2-useror rootであれば、EC2のサーバーにsshでログインできる

注意事項

公開鍵・秘密鍵の取り扱いになる為、慎重に作業を行って下さい

サーバー側で行う設定

バックアップの作成

1.rootユーザー、ec2-userで、EC2のサーバーにアクセスする
※ セッションマネージャーを使用してアクセスしても良い
※ ローカル環境でEC2sshで接続する場合は、下記の方法で行う

# ローカル環境の.sshディレクトリーに移動
cd ~/.ssh

# EC2のアクセスコマンド
ssh -i "〇〇.pem" ユーザー名@ec2-パブリックIPv4アドレス.リージョン.compute.amazonaws.com

# 入力例
# ユーザー名には関しては、root or ec2-userどちらでも良い
ssh -i "test.pem" root@ec2-00.00.00.000.us-east-1.compute.amazonaws.com

2.サーバー内の.sshディレクトリーに移動する

cd /home/ユーザー名/.ssh
# 上記のコマンドで表示されない場合がある
# サーバー毎に、どこに.sshディレクトリーがあるか調べる必要がある

3.バックアップディレクトリーを作成

mkdir 任意のディレクトリー名

入力例
mkdir backup_keys

4.catコマンド使用して、公開鍵の中身確認して、その内容をコピーする

cat authorized_keys
# 設定を変更していなければ、authorized_keysの名前で公開鍵が保存されている

# 出力内容
ssh-rsa 

# 省略

test@ip-000-00-0-000.us-west-1.compute.internal

5.backupディレクトリーに移動する

cd 任意のディレクトリー名

6.touchコマンドを使用して、ファイルを作成する

touch 任意のファイル名

# 入力例
touch backup_keys

7.先程、touchコマンドで作成したファイルをvimorviエディターで開き、コピーしておいた公開鍵を貼り付ける

vim 任意のファイル名

# ファイル内
ssh-rsa 

# 省略

test@ip-000-00-0-000.us-west-1.compute.internal

上記の工程まで終われば、バックアップの作成は完了

ローカル環境で行う設定

1.ターミナル等のCLIを開き、.sshディレクトリーに移動する

cd ~/.ssh

2.既存の公開鍵・秘密鍵に影響しない様に、.sshディレクトリー内に新しいディレクトリーを作成する

mkdir 任意の名前

# 入力例
mkdir test_pem_directory

3.上記で作成したディレクトリーに移動する

cd 任意の名前

# 入力例
cd test_pem_directory

4.ssh-keygenのコマンド使用して、公開鍵・秘密鍵を作成する

ssh-keygen -t rsa -m PEM -f ~/.ssh/test_pem_directory/test_pem
# t rsa: RSAキーの暗号アルゴリズムを使う
# -m PEM: PEM 形式の鍵を生成するように指定
# -f: ファイル場所とファイ名を指定

5.〇〇.pubの中身をコピーして控えておく

cat 〇〇.pub

# 出力内容
ssh-rsa 

# 省略

test@test.com

6. 下記の工程を行う(サーバー側での作業)
ローカル環境で、公開鍵・秘密鍵を作成した後に行う作業

公開鍵・秘密鍵をEC2に設置

1. 権限が付与されているユーザー(rootec2-user等)で、EC2のサーバーにアクセスする

# 他のユーザーでも可能
sudo su root or ec2-user

2. EC2のサーバー内にあるauthorized_keysが存在するディレクトリに移動する

cd home/ユーザー名/.ssh/

3. ローカル環境で作成した公開鍵を貼り付ける

注意事項
別の人の公開鍵(〇〇.pub)がある場合は、その公開鍵の下に、改行して1行空けてから貼り付けを行う

# ファイル編集
vim home/ユーザー名/.ssh/authorized_keys

# authorized_keysの中身
ssh-rsa 

# 省略

test@ip-000-00-0-000.us-west-1.compute.internal
# 改行
ssh-rsa 

# 省略

test@test.com

参考資料

感想

公開鍵・秘密鍵に関しては、全然分かっていなかったので、今回勉強できてよかったと思ってます。今後も公開鍵・秘密鍵の設定に関しては、触る機会がありそうなので、次に同じ様な問題があった時は、サックと対応したいと思います。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?