This topic created in 2835 days ago, the information mentioned may be changed or developed.
我发现当用户这个指定命令 sudo 不需要输入密码时,其他命令就不能 sudo 了,报错:
Sorry, user xxxx is not allowed to execute 'sudo 命令' as root on xxx.
除非设置所用命令不需要输入密码。
那如何设置用户 sudo 指定命令不需要密码,而其他命令需要输入密码?
16 replies • 2018-09-17 15:51:27 +08:00
 |
|
1
singerll Sep 16, 2018 via Android
没看太明白,sudo 都不用密码了,其他命令为什么还需要密码。。。
|
 |
|
3
AngelCriss Sep 16, 2018 via Android 1
你仔细看看 sudo 的权限就会发现这是个 setuid 程序,只不过加了密码验证而已。 所以,你可以自己写一个,不需要密码验证即可。 当然你也可以创建一个组,将某个用户加入这个组,在 sudo 的配置目录新建配置,写入"%yourgoup ALL=(ALL) NOPASSWD: ALL"即可
|
 |
|
4
kaiser1992 Sep 16, 2018
%yourgoup ALL=(ALL) NOPASSWD: ALL 是设置所有命令 sudo 都不需要密码, 但当设置指定命令不需要密码如 %yourgoup ALL=(ALL) NOPASSWD: a 命令 ,现在只想 sudo a 命令不需要输入,其他命令仍希望 sudo 输入密码应该怎么设置呢?
|
 |
|
5
humansjl Sep 16, 2018
sudo 可以指定命令啊,指定了就可以免密,没有的话 sudo 时就要密码,或者没有 sudo 的权限
|
 |
|
6
wml Sep 16, 2018
指定单独命令免密,其他命令 sudo 报错 not allowed to execute as root
|
 |
|
7
wml Sep 16, 2018
能否让其他命令 sudo 输入密码执行呢?
|
 |
|
8
pcmid Sep 17, 2018 via Android
|
 |
|
9
yemenchun1 Sep 17, 2018 via iPhone
哈哈,遇到过这个问题,你改下 sudoer 的内容,对于需要免密执行的命令程序加入 sudoer 里面就行了,比如 systemctl suspend 之类的
|
 |
|
10
yemenchun1 Sep 17, 2018 via iPhone
其实我没看懂你的问题,只看懂了最后一句
|
 |
|
11
msg7086 Sep 17, 2018 5
test ALL=(ALL) ALL test ALL=(ALL) NOPASSWD:/bin/ls
test@debian-ws:/root/test$ sudo ls 01 test@debian-ws:/root/test$ sudo vim [sudo] password for test: test@debian-ws:/root/test$
看到你的帖子我就猜到大部分人猜不出你想问什么。
|
 |
|
12
rrfeng Sep 17, 2018 via Android
哈哈哈这个知识点真的是许多人不知道
|
 |
|
13
rock6y Sep 17, 2018 via Android
有很多发行版 Linux 都是直接在 Shadow 文件里去掉 x root 就不用输入密码了
|
 |
|
15
visitantzj Sep 17, 2018
哈哈,昨天刚百度过这问题……
ssh 远程运行需要提权的脚本时候挺有用的
|
 |
|
16
wml Sep 17, 2018
|