【AWS EC2】ssh接続ユーザーの作成とec2-userの削除
概要
毎回、インスタンスを作成するたびに調べてやっていたのでもう調べないという決意を込めての記録
デフォルトでec2-userというユーザーが作成されているが、セキュリティを強化するために別にユーザーを作成してデフォルトのは消す。
よくある初回ログイン時に初期パスワードを変更するみたいなノリ。
手順
手順というほど大したものはない。
- ec2-userでssh接続してrootユーザーに切り替え
- ユーザー作成と権限設定
- ~/.sshディレクトリをコピーして権限設定
- 作成したユーザーで再度ssh接続
- 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にコピーして使おう。