ja dei essas permissoes e continua nao inderindo os comando no shell do ubuntu as regras nao aparecem
ja dei essas permissoes e continua nao inderindo os comando no shell do ubuntu as regras nao aparecem
Agora estive aqui a ver a copia do teu ficheiro /etc/sudoers e esta uma confusão ali, e aminha pergunta é para que precisas de dar permissão ao jefferson, nobody, apache, precisas mesmo daqueles comandos todos ali para serem executados atravez de um pagina web ??????
Fizeste alguma copia de segurança do /etc/sudoers, pois é importante se não sabes o que fazes manteres sempre um copia do ficheiro qq problema, podes sempre restaurar o ficheiro original
se não tiveres um copia de segunça e caso pretende apenas dar a permissão de executar o iptables ao utilizador do apache (www-data): mantem apenas o necessario no ficheiro /etc/sudoers, para evitar complicações
Não tira o # da linha (%sudo ALL=NOPASSWD: ALL) "NÃO COMPENSA DISTRUIR A ARVORE TODA PARA QUEBRA UM GALHO"
====FICHEIRO /etc/sudoers apenas como o essencial para executar iptables pelo (apache/php)===
# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL) ALL
www-data ALL=NOPASSWD:/usr/sbin/iptables, /usr/sbin/iptables-save, /usr/sbin/iptables-restore
# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
Conseguese executar na shell com sucesso o que aparece na pagina web ?
Por exemplo
sudo /usr/sbin/iptables -t filter -A FORWARD -p udp -s 192.168.0.1 --dport 80 -j REJECT