EC2インスタンス作成時にはec2-userやrootはパスワードが設定されていません。
なので、パスワードなしにrootに昇格できたり、sudo が使えるのですが、
セキュリティ的によろしくないので、設定していきます
ec2-user のパスワードを設定する
ec2-userでEC2インスタンスにssh接続しましょう
できたら、下記のように表示されます
1 2 3 4 5 6 7 8 |
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回入力します
1 |
sudo passwd ec2-user |
(実行結果)
※パスワードを入力してもウインドウに表示されませんので、ご注意ください
1 2 3 4 5 |
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 に関しては下記をご参考ください
sudoの権限を設定するvisudoコマンド【Linuxコマンド集】
visudoはsudoersファイルを安全に編集するコマンドだ。Linuxでは例えばユーザーの追加や削除やプロセスの管理など、管理者以外が操作するとシステム運用にリスクを伴う。そのため、Linuxシステムにとって重要なコマンドは、rootのような管理者だけが実行できるが、一部ユーザーでは、実行したいコマンドの前にsud...
下記コマンドを実行すると、ファイルを編集できるようになります
1 |
[ec2-user@ip-×××-××-××-×× ~]$ sudo visudo -f /etc/sudoers.d/cloud-init |
以下の手順でファイルを編集していきます
- i を押し、INSERTモードにする。(下に–INSERT—-)と表示されます
- ec2-user ALL = (ALL) ALL と入力する。
- Esc を押し、INSERTモードから抜ける
- :wq! と入力し、Enter を押し、ファイルを保存する。
パスワードが設定できているか確認しよう
下記コマンドを使用して、root ユーザーに切り替えましょう
入力するパスワードは先ほど設定したものです
1 |
sudo su - |
(実行結果)
1 2 3 4 5 6 7 8 9 10 11 12 |
[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 はいりません
(実行結果)
1 2 3 4 5 |
[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 ユーザーに切り替わる
(実行結果)
1 2 3 4 5 |
[root@ip-×××-××-××-×× ~]# logout [ec2-user@ip-×××-××-××-×× ~]$ su - Password: Last login: Thu Oct 6 15:21:20 UTC 2022 on pts/0 [root@ip-×××-××-××-×× ~]# |
これでパスワードを設定できました
コメント