初期アカウントがパスワード無しでsudo出来るのが気持ち悪いという貴方へ

記事タイトルとURLをコピーする

毎日暑いですね、アイス珈琲を飲まずにはいられない小室です。皆さん、夏バテはしていませんか。

今日は暑いので、時々遭遇するぞわっとする事象を解決したいと思います。

みなさんが大好きなAmazonLinuxをはじめEC2を起動すると割り当てられる初期アカウント(例えばec2-user, ubuntu等)はsudoするのにパスワードなしで昇格出来ます。

[ec2-user@ip-10-99-46-145 ~]$ yum update<br />
Loaded plugins: priorities, security, update-motd, upgrade-helper<br />
You need to be root to perform this command.<br />
[ec2-user@ip-10-99-46-145 ~]$ sudo yum update<br />
Loaded plugins: priorities, security, update-motd, upgrade-helper<br />
amzn-main &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| 2.1 kB &nbsp; &nbsp; 00:00 &nbsp; &nbsp;&nbsp;<br />
amzn-updates &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | 2.3 kB &nbsp; &nbsp; 00:00 &nbsp; &nbsp;&nbsp;<br />
Setting up Update Process<br />
Resolving Dependencies<br />
略〜

 

それが気持ち悪いと思ったりしませんか。えぇ、私は最初ぞわっとしました。恐ろしいですね。

さてそのような場合は該当アカウントにパスワードをつけて、sudoする際はパスワードプロンプトを出しましょう。

[ec2-user@ip-10-99-46-145 ~]$ sudo passwd ec2-user
ユーザー ec2-user のパスワードを変更。
新しいパスワード: #パスワード入力
新しいパスワードを再入力してください: #同じパスワード入力
passwd: 全ての認証トークンが正しく更新できました。

その後/etc/sudoers.d/cloud-initファイルを編集します。

[ec2-user@ip-10-99-46-145 ~]$ sudo visudo -f /etc/sudoers.d/cloud-init



#ec2-user ALL = NOPASSWD: ALL<br />
ec2-user&nbsp;ALL=(ALL) ALL

ここでは必ずvisudoを使いましょう。必ず使ってよかったと思うはずです。変更後もし反映していないようでしたら以下の方法でリロードするとよいかと思います。

[ec2-user@ip-10-99-46-145 ~]$&nbsp;sudo service sudo restart

これで起動中のインスタンス内でsudoをするときはパスワードを求められると思います。

[ec2-user@ip-10-99-46-145 ~]$ sudo yum update



We trust you have received the usual lecture from the local System<br />
Administrator. It usually boils down to these three things:



&nbsp; &nbsp; #1) Respect the privacy of others.<br />
&nbsp; &nbsp; #2) Think before you type.<br />
&nbsp; &nbsp; #3) With great power comes great responsibility.



[sudo] password for ec2-user: &nbsp;<span style="color:#0000CD;">#設定したパスワードを入力</span><br />
Loaded plugins: priorities, security, update-motd, upgrade-helper<br />
Setting up Update Process<br />
Resolving Dependencies<br />
略〜

ちなみにこの設定しても、ブート時のUser Data(root権限ありの処理含む)を実行には影響を及ぼしません(もちろん起動後にSSHした後のsudo実行の時にはパスワードは求められますが)

またパスワード設定→sudoers設定変更、反映の順番で実行しないと、昇格が出来なくなりますので気をつけましょう。