gpt4 book ai didi

linux - 为特定命令添加 NOPASSWD

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:28:32 28 4
gpt4 key购买 nike

我知道,还有很多其他帖子与此问题相关。但是,这不是继续进行的安全方法。我最初添加了 Defaults:apache !requiretty 并设置了由网络用户运行的 script.sh 文件路径,这个 script.sh调用另一个应作为 root 用户运行的命令。然后我像这样添加了 NOPASSWD

apache ALL = (ALL) NOPASSWD:/home/app/admin/tomcat.sh start

报错如下

sudo: >>> /etc/sudoers: syntax error near line 120 <<< sudo: parse error in /etc/sudoers near line 120 sudo: no valid sudoers sources found, quitting sudo: unable to initialize policy plugin

然后,我直接添加了应该作为 root 用户运行的命令。它变成了

apache ALL = (ALL) NOPASSWD:/bin/su root -c /usr/share/apache-tomcat-7.0.61/bin/startup.sh

我还尝试更改命令,例如:

apache ALL = (ALL) NOPASSWD:/usr/share/apache-tomcat-7.0.61/bin/shutdown.sh

仍然是相同的(以上)错误。尽管 apache ALL=(ALL) NOPASSWD: ALL 运行良好。但存在安全问题。

那么,我如何授予用户以 root 用户身份运行特定命令的权限?

最佳答案

您的第一行似乎运行良好,我试过了没问题,您确定第 120 行是您要添加的行吗?在 vi 上使用命令“se: nu”检查问题是否出在之前或之后的另一行,如果它不起作用,请发布所有 sudoers 文件?

关于linux - 为特定命令添加 NOPASSWD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30818039/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com