![抱歉,用户 {USER_1} 不允许在 {SERVER} 上以 root 身份执行“/bin/su {USER_2}”](https://linux22.com/image/191018/%E6%8A%B1%E6%AD%89%EF%BC%8C%E7%94%A8%E6%88%B7%20%7BUSER_1%7D%20%E4%B8%8D%E5%85%81%E8%AE%B8%E5%9C%A8%20%7BSERVER%7D%20%E4%B8%8A%E4%BB%A5%20root%20%E8%BA%AB%E4%BB%BD%E6%89%A7%E8%A1%8C%E2%80%9C%2Fbin%2Fsu%20%7BUSER_2%7D%E2%80%9D.png)
我的命令sudo /bin/su USER_2
失败而sudo /bin/su - USER_2
成功。
抱歉,不允许用户 USER_1 在 SERVER 上以 root 身份执行“/bin/su USER_2”。
检查时sudo -l
:
USER_1@SERVER:~:$ sudo -l
Matching Defaults entries for USER_1 on SERVER:
syslog=auth, log_year, logfile=/var/log/sudo.log, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES
LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
User USER_1 may run the following commands on SERVER:
(ALL) NOPASSWD: ALL, !/usr/bin/sudoedit, !/usr/sbin/visudo, !/sbin/sulogin, !/sbin/sushell, !/bin/su, !/bin/su -, /bin/su [-] *, !/bin/su - *root, !/bin/su root, !/sbin/insmod, !/sbin/rmmod, !/sbin/depmod, !/sbin/modprobe, !/sbin/shutdown,
!/sbin/poweroff, !/usr/bin/reboot, !/usr/bin/consolehelper, !/usr/bin/halt, !/sbin/init
看来USER_1有运行权限!/bin/su, !/bin/su -
,/bin/su [-] *
。
(这是什么!
意思?:not
)
它应该允许/bin/su USER
和/bin/su - USER
。
为什么会sudo su USER_2
失败?