強欲で謙虚なツボツボ

趣味の読書の書の方

【AWS EC2】ssh接続ユーザーの作成とec2-userの削除

概要

毎回、インスタンスを作成するたびに調べてやっていたのでもう調べないという決意を込めての記録

デフォルトでec2-userというユーザーが作成されているが、セキュリティを強化するために別にユーザーを作成してデフォルトのは消す。
よくある初回ログイン時に初期パスワードを変更するみたいなノリ。

 

手順

手順というほど大したものはない。

  1. ec2-userでssh接続してrootユーザーに切り替え
  2. ユーザー作成と権限設定
  3. ~/.sshディレクトリをコピーして権限設定
  4. 作成したユーザーで再度ssh接続
  5. rootユーザーに切り替えてec2-userを削除

 

ユーザー作成

# ssh接続
ssh -i "keypairのパス" ec2-user@ec2インスタンスのip
# rootユーザーに切り替え
sudo su -
# ユーザー作成
adduser new-user
# ユーザーのパスワード設定(このユーザーでrootユーザーに切り替えるときに使う)
passwd new-user
# root権限をもつグループに追加
usermod -aG wheel new-user

確認

# new-userディレクトリが作成されている
ls /home
# new-userがwheelグループに追加されている
less /etc/group | grep wheel

 

sshディレクトリ設定

# ec2-userの.sshをnew-userへコピー
cp -r /home/ec2-user/.ssh /home/new-user
# 所有者を変更
chown -r new-user:new-user /home/new-user/.ssh
# パーミッションを変更
chmod 700 /home/new-user/.ssh
chmod 600 /home/new-user/.ssh/authorized_keys

確認

# sshディレクトリがdrwx------、authorized_keysが-rw-------
ls -la /home/new-user/.ssh

 

ec2-user削除

# ssh接続
ssh -i "keypairのパス" new-user@ec2インスタンスのip
# rootユーザーに切り替え(passwdで設定したパスワード)
sudo su -
# ec2-user削除
deluser ec2-user

確認

# ec2-userが削除されている
ls /home
# ec2-userでssh接続できない
ssh -i "keypairのパス" ec2-user@ec2インスタンスのip

 

終わり

大したことではないけどよくやるからちゃんと覚えておこう。

他に作業ユーザー作るときはちゃんとssh-keygenして公開鍵をauthorized_keysにコピーして使おう。