sudo - 一个用户不需要输入密码

sudo - 一个用户不需要输入密码

我们正在使用 centos 6.10 设置服务器,当使用 sudo 设置用户时,我们发现 sudo 从不要求输入密码。设置具有相同(完整)sudo 权限的另一个用户,会要求输入密码。

我尝试过明确设置用户并将其添加到具有相同行为的轮组中。我还将密码超时设置为 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

知道为什么此配置不要求输入密码吗?我能看到这两个用户之间的唯一区别是他们的外壳,但我不明白为什么这很重要。

唯一特定于用户的行是

ssi       ALL=(ALL)       ALL

答案1

事实证明,当我们刚刚发现问题所在时,解决方案非常简单且合乎逻辑:用户在某种程度上没有定义密码(但这可能会发生)。为用户设置密码后,sudo 也按预期工作。

相关内容