gpt4 book ai didi

bash - CENTOS apache ALL=(root) NOPASSWD :/path/to/shell. sh 不工作

转载 作者:行者123 更新时间:2023-12-04 19:39:54 26 4
gpt4 key购买 nike

我正在尝试通过 IPtables 管理来做一个 Web 界面。
我创建了一个文件,其名称为 测试.php

$output = shell_exec('bash /usr/bin/iptables.sh 2>&1');
echo $output;
我给了/usr/bin/iptables.sh NOPASSWD 所以我可以通过 apache 使用 sudo 执行文件,而无需使用密码
sudo iptables -L
sudoers 文件:
apache ALL=(root) NOPASSWD: /usr/bin/iptables.sh
但我仍然收到以下错误:

We trust you have received the usual lecture from the local SystemAdministrator. It usually boils down to these three things: #1)Respect the privacy of others. #2) Think before you type. #3) Withgreat power comes great responsibility. sudo: a terminal is requiredto read the password; either use the -S option to read from standardinput or configure an askpass helper{"mode":"full","isActive":false}


但是,如果我使用
apache ALL=(root) NOPASSWD: ALL
一切正常。
我仔细检查了我的目录并使用了确切的路径
[root@CentOS bin]# readlink -f iptables.sh
/usr/bin/iptables.sh
这里 super 无能,有人可以帮我指路吗? :'(

最佳答案

这已经解决了。
如果有人有同样的问题,答案就在这里
https://serverfault.com/questions/1070602/centos-apache-all-root-nopasswd-path-to-shell-sh-is-not-working/

bash is redundant


只需删除 bash 并像这样运行
$output = shell_exec('/usr/bin/iptables.sh 2>&1');

关于bash - CENTOS apache ALL=(root) NOPASSWD :/path/to/shell. sh 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68519762/

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