我已经看过了询问 Ubuntu却找不到我想要的答案。
基本上,我有一个管理面板对于我运行并最近刚刚安装的网站fail2ban
,由于 SSH 尝试失败而导致的新 IP 禁令导致我的平均收件箱数量急剧增加。
在我的管理面板上,我有各种计数器,我想包括 iptable 的规则。我可以自己解决这个问题,只是在某个步骤上遇到困难。
我如何允许命令:iptables -S
由 PHP 命令执行shell_exec
?或者任何可执行命令。
我尝试使用 sudoers 文件来包含对它的访问权限,但没有成功。
答案1
这是你的 sudoers 文件的内容吗?
www-data ALL=(ALL) NOPASSWD: /sbin/iptables
确保传递可执行文件的完整路径。
以下是 Python 代码:
#!/usr/bin/env python3
import subprocess as sp
sp.call(['sudo', '/sbin/iptables' , '-S'])
以下是在 PHP 中遇到类似问题的人:
https://serverfault.com/questions/554019/allow-www-data-to-execute-shell-script