Eu tenho um arquivo de script em uma máquina do servidor Debian que usa / sbin / iptables para banir ips que estão tentando entrar no meu sistema. Eu tinha o script como uma entrada crontab mas percebi que não estava funcionando como esperado porque precisava ser um usuário root.
Sempre que executo o script como sudo myscript, o script funciona conforme o esperado. Se eu não usar o sudo, isso me dá:
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
Se eu digitar "id", obtenho:
uid=1000(username) gid=33(www-data) groups=33(www-data),0(root),27(sudo),1001(developers)
e grupos
www-data sudo developers
Então parece que o usuário está dentro do grupo sudo, no entanto ele não tem acesso ao comando iptables, ou seja, se eu digitar como "username" iptalbes ele me diz que o comando não foi encontrado.
Além disso, eu estava lendo sobre o / etc / sudoers que você pode dar acesso a usuários específicos. Eu mudei de 440 para 740 os direitos de permissão e eu descomentei
# Allow members of group sudo to execute any command
sudo ALL=(ALL:ALL) ALL
Agora, toda vez que eu digito sudo, qualquer comando que recebo
username is not in the sudoers file. This incident will be reported.
Alguma ajuda seria apreciada ..
Obrigado