🌟
【AWS】【EC2】ec2-userとrootのパスワードを設定しよう
EC2 インスタンス作成時にはec2-user や root はパスワードが設定されていません。
なので、パスワードなしに root に昇格できたり、sudo が使えるのですが、
セキュリティ的によろしくないので、設定していきます
ec2-user のパスワードを設定する
ec2-userで EC2 インスタンスに ssh 接続しましょう
できたら、下記のように表示されます
Last login: Sun Sep 25 14:31:22 2022 from m106072141098.v4.enabler.ne.jp
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-×××-××-××-×× ~]$
次のように passwdコマンドを実行し、設定したいパスワードを 2 回入力します
sudo passwd ec2-user
(実行結果) ※パスワードを入力してもウインドウに表示されませんので、ご注意ください
ec2-user@ip-×××-××-××-×× ~]$ sudo passwd ec2-user
Changing password for user ec2-user.
New password: ※1回目のパスワード入力
Retype new password: ※2回目のパスワード入力
passwd: all authentication tokens updated successfully.
sudo コマンドを使用する際にパスワードを要求する
ユーザーの sudo コマンド実行権限の設定は sudoersを編集します
また、sudoers を安全に編集する visudo コマンドを使用します ※ vi コマンドでも編集できます
visudo に関しては下記をご参考ください
下記コマンドを実行すると、ファイルを編集できるようになります
[ec2-user@ip-×××-××-××-×× ~]$ sudo visudo -f /etc/sudoers.d/cloud-init
以下の手順でファイルを編集していきます
- iを押し、INSERT モードにする。(下に --INSERT---- )と表示されます
- ec2-user ALL = (ALL) ALLと入力する。
- Escを押し、INSERT モードから抜ける
- :wq! と入力し、Enterを押し、ファイルを保存する。
パスワードが設定できているか確認しよう
下記コマンドを使用して、root ユーザーに切り替えましょう
入力するパスワードは先ほど設定したものです
sudo su -
(実行結果)
[ec2-user@ip-×××-××-××-×× ~]$ sudo su -
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for ec2-user: ※ここまでの設定ができていれば、パスワードを求められます
[root@ip-×××-××-××-×× ~]#
うまくいけば、root@ と表示され、root ユーザーになれます
root ユーザーのパスワードも設定しよう
先ほどと同様に passwdコマンドを使用します。
ただし、root ユーザーなので、sudo はいりません
(実行結果)
[root@ip-×××-××-××-×× ~]# passwd
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
パスワードが設定できているか確認します
次の手順を実行してください
- logoutコマンドで root ユーザーからログアウトする。
- su - コマンドで、再度 root ユーザーに切り替える。
- root ユーザーのパスワードを入力する。
- root ユーザーに切り替わる
(実行結果)
[root@ip-×××-××-××-×× ~]# logout
[ec2-user@ip-×××-××-××-×× ~]$ su -
Password:
Last login: Thu Oct 6 15:21:20 UTC 2022 on pts/0
[root@ip-×××-××-××-×× ~]#
これでパスワードを設定できました
ちなみに root ユーザーに切り替える際に
- sudo su - のように sudo を使用する → 現在使用しているユーザーのパスワードを入力する
- su - のように sudo を使用しない → root ユーザーのパスワードを入力する
Discussion