sudo - ユーザーはパスワードを入力する必要がありません

sudo - ユーザーはパスワードを入力する必要がありません

CentOS 6.10 でサーバーをセットアップしていますが、sudo を使用してユーザーをセットアップすると、sudo がパスワードを要求しないことがわかりました。同じ (完全な) sudo 権限を持つ別のユーザーをセットアップすると、パスワードが要求されます。

ユーザーを明示的に設定し、同じ動作で wheel グループに追加することの両方を試しました。また、パスワード タイムアウトを 0 に設定しましたが、変更はありませんでした。

[root@noaspare ~]# su mysql 
bash-4.1$ ls -l ls: 
cannot open directory.: Permission denied 
bash-4.1$ sudo ls -l
[sudo] password for mysql: (Ctrl-C)
bash-4.1$ exit 

[root@noaspare ~]# su ssi 
[ssi@noaspare /root]$ ls 
ls: cannot open directory .: Permission denied 

[ssi@noaspare /root]$ sudo ls 
anaconda-ks.cfg  install.log  install.log.syslog  rpmbuild

ssi の sudo -l を実行すると次のようになります:

Matching Defaults entries for ssi on this host:
    requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE 
INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", 
env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME >    LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET 
 XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin,
timestamp_timeout=0


User ssi may run the following commands on this host:

Sudoers entry:
RunAsUsers: ALL
Commands:
ALL

この設定でパスワードが要求されない理由をご存知ですか? 2 人のユーザーの違いはシェルだけであることが分かりますが、それがなぜ重要なのかわかりません。

ユーザー固有の唯一の行は

ssi       ALL=(ALL)       ALL

答え1

問題が何であるかがわかったとき、解決策は単純かつ論理的であることがわかりました。ユーザーには何らかの理由でパスワードが定義されていませんでした (ただし、これは起こり得ることです)。ユーザーにパスワードを設定した後、sudo も期待どおりに機能しました。

関連情報