web-dev-qa-db-ja.com

パスワードを変更してもsudosuがパスワードを要求しない

私はawsのubuntuインスタンスを持っています。 sshログインを取得した後、Sudo suコマンドでrootパスワードに変更することができました。セキュリティ上の理由から、rootパスワードを変更したいと思いました。だから私はフォローしようとします:

root@email:/home/ubuntu# Sudo passwd root
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
root@email:/home/ubuntu# 

Sudo suしようとするとパスワードを変更した後、パスワードを要求されません

ubuntu@email:~$ Sudo su
root@email:/home/ubuntu# 

一方、suだけを試すと、次のプロンプトが表示されます。

ubuntu@email:~$ su
Password: 

Sudo suのセキュリティを実装する方法やパスワードを設定する方法は?

以下はsudoers(visudo)の詳細です

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group Sudo to execute any command
%Sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
1
kadamb

sudoersファイルのこの行

#includedir /etc/sudoers.d

/etc/sudoers.d/ディレクトリの他のファイルを含めるようにします。行がコメントアウトされているように見えるかもしれませんが、そうではありません。ディレクティブは#includedirで、先頭に#が付いています。これらのインクルードされたファイルの1つは、おそらく問題の原因となるNOPASSWDのルールを設定します。

何かを変更する前に、通常のユーザーが有効な空でないパスワードを持っていることを確認してください。から この答え

Sudoは、パスワードがない場合でもパスワードを要求し、空のパスワードを受け入れません。

疑わしい場合は、passwdを呼び出して、通常のユーザーに新しいパスワードを設定してください。

このコマンドは、検査する必要のあるファイルを教えてくれます。

Sudo grep -r NOPASSWD /etc/sudoers.d/

求める行は次のようになります。

ubuntu ALL=(ALL) NOPASSWD:ALL

コメントアウトします(# ubuntu ALL=...)。比較 この答え

4