EC2インスタンスにログインできる新ユーザー作成及びローカルで鍵を作成しSSH通信によるインスタンスへのログイン

どうもどハマりエンジニアです。

 

<対象>

・すでにEC2インスタンスを作成

・Elstatic IP アドレスの関連付けができている。

 

<さっそくやってみよう!!!>

 インスタンス作成時にEC2にログインするために必要となるキーペアをダウンロードしたと思います。作成した公開鍵をsshフォルダに移動させます(移動はさせなくても出来る) 。 読み書きができる権限を付与し、公開鍵を利用し、すでにAWSでデフォルトであるユーザー(ec2-user)を使いログインします。

 $: mv Downloads/myserverkey.pem/
(#作成した公開鍵をsshフォルダに移動)
 $: cd .ssh/
(#ディレクトリをsshに移動)
 $: chmod 600 myserverkey.pem
(#公開鍵に600番で定義されたアクセス権を付与する)
 $: ssh -i myserverkey.pem ec2-user@18.222.239.124
(#公開鍵を利用してec2-userとしてログイン)

ここまできたら新たなユーザーを作成し、作成したユーザーにマスター権限を与えていきます。

[ec2-user|~]$ sudo adduser yoshihiro
(#新規ユーザー名の登録)
[ec2-user|~]$ sudo passwd yoshihiro
(#新規ユーザー名のパスワード登録)
[ec2-user|~]$ sudo visudo
(#vimを使いrootに関する権限追記をする)

vimで編集モードになったら下記のように追記していきます。

i で編集モード

esc でInputモードを終了

Shift + zzで保存&編集完了

1.rootに関する権限の記述箇所
root    ALL=(ALL)       ALL  を探す。
2.その下に、作成したユーザーに権限を追加する記述
yoshihiro   ALL=(ALL)       ALL  を追加する

編集が完了したら下記のコマンドでユーザーの切り替えを行います。

[ec2-user|~]$ sudo su - yoshihiro

ec2-userのところが作成したユーザー名に変わっていればユーザーの作成は完了です。

ローカルで鍵を生成し、SSH通信によるインスタンスへのログイン

ローカルのターミナル

$ cd .ssh
[.ssh]$ ssh-keygen -t rsa
(#公開鍵を作成)
-----------------------------
Enter file in which to save the key (): app_key_rsa 
(#ここでファイルの名前(なんでもいい)を記述して、エンター)
Enter passphrase (empty for no passphrase): 
(#何もせずそのままエンター)
Enter same passphrase again: 
(#何もせずそのままエンター)
-----------------------------

上記のコマンドより公開鍵(app_key_rsaとapp_key_rsa.pub)を作成することができたので、vimで.sshファイルに設定ファイル(config)を編集していきます。

[.ssh]$ ls
#「app_key_rsa」と「app_key_rsa.pub」が生成されたことを確認
[.ssh]$ vim config
(#Vimを起動し、設定ファイルを編集する)
-----------------------------
# 以下を追記
Host app_key_rsa
  Hostname  18.222.239.124(Elastic IP)
  Port 22
  User yoshihiro (先ほどのユーザー名)
  IdentityFile ~/.ssh/app_key_rsa (#秘密鍵の設定)
-----------------------------
[.ssh]$ cat app_key_rsa.pub
(鍵の中身をターミナル上に出力→後で使うのでコピーしておく)

上記により、

1.ローカルで鍵の生成

2.その鍵をどの通信の認証時に使用するか等を設定

ここまでが完了しました。

続いてはインスタンス側の設定をしていきます

[yoshihiro|~]$ mkdir .ssh
[yoshihiro|~]$ chmod 700 .ssh
[yoshihiro|~]$ cd .ssh
[yoshihiro|.ssh]$ vim authorized_keys
(#vimが開く)
-----------------------------
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDKIYAGCKxDvEf0SNLxHU/iXmAAX8Sm+AqsqUj+7KIxf60KoJWDpvxEhVC7mVG/81rA9qn3vTnm++6g7LfJhxru3SN5jp9RJS6cvHqYP55VpEmEV2baSpHjTsQK4KD/vbSh2+/f+FkL5+XXNTPdX6q/DOV1Jic8uOrKsYQZHd0rGQ4v/ktCRNzjeW+1hG929bjCQrivwH+Q5s9zvGmnLJyMP9TMGD1Q3CqYoDPVhWsbw/hbXUIxgvtUKwZ7WzOCDivtZLutV0omaffc6RBURmmIGh3L7R373yo7QG52gHlIE/hG8+IQW89m5IU2syLifs1QGXV/zFiiHCzpVhbyjnifMa6kw2DZl7z3LH9+qIVU1nUcsjI5NI0zap6sZvSoNYHdubvw0fdg1n2aEgqh+nc8bOAdfUwMgxZPPa40FysmAcN05+dzQ7dUuwli312ohfkmT4qlLC3dh8+QuRUB8zqxrpoImS7VH0l94kJtEKVA8jqglKE= yoshihironoMacBook-Air.local
(#先ほどコピーした鍵の中身を貼り付け)
-----------------------------
[yoshihiro|.ssh]$ chmod 600 authorized_keys
[yoshihiro|.ssh]$ exit
[ec2-user|~]$ exit

以上より新ユーザーに権限が付与されました。 ローカルで下記コマンドを入力し、実際にログインしてみてください

$ ssh app_key_rsa