我在 debian 服务器计算机上有一个脚本文件,它使用 /sbin/iptables 来禁止尝试进入我的系统的 ip。我将脚本作为 crontab 条目,但我意识到它没有按预期工作,因为它需要成为 root 用户。
每当我以 sudo myscript 运行脚本时,脚本都会按预期工作。如果我不使用 sudo 它会给我:
iptables v1.4.21: can't initialize iptables table `filter': Permission denied (you must be root)
Perhaps iptables or your kernel needs to be upgraded
如果我输入“id”我会得到:
uid=1000(username) gid=33(www-data) groups=33(www-data),0(root),27(sudo),1001(developers)
和团体
www-data sudo developers
因此,该用户似乎位于 sudo 组内,但它无权访问 iptables 命令,即如果我输入“用户名”iptalbes,它会告诉我找不到命令。
此外,我正在阅读有关 /etc/sudoers 的内容,您可以授予特定用户访问权限。我已将权限从 440 更改为 740,并且取消注释
# Allow members of group sudo to execute any command
sudo ALL=(ALL:ALL) ALL
现在每次我输入 sudo 无论我得到什么命令
username is not in the sudoers file. This incident will be reported.
一些帮助将不胜感激..
谢谢