iptables -I INPUT ! -i lo -p tcp --dport 80 -j DROP
Quando o tráfego vai da sua máquina para a sua máquina, sempre tem a interface de entrada "lo". Não importa o endereço IP src ou dst.
Como eu uso o iptables para rejeitar todo o tráfego para a porta localhost 80, mas permitir aquele que vem da máquina local?
Aqui está minha solução atual que parece não bloquear o tráfego. o ip, o ip da maquina local. Se eu não colocar a segunda linha, todo o tráfego é bloqueado, e com isso habilitado, todo o tráfego é aceito!
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 10.80.225.83 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j LOG --log-prefix "TCP LOGDROP: "
Só para ter certeza:
10.80.225.83
é o ip do servidor web, onde eu quero poder acessar 127.0.0.1:80 10.80.225.83
rejeite quaisquer conexões na porta 80, outras que foram originadas de localhost. iptables -I INPUT ! -i lo -p tcp --dport 80 -j DROP
Quando o tráfego vai da sua máquina para a sua máquina, sempre tem a interface de entrada "lo". Não importa o endereço IP src ou dst.
Você poderia fornecer todo o conteúdo de /etc/sysconfig/iptables
, se possível? (atualizarei minha resposta, se aplicável, assim que a informação for disponibilizada)
Como tenho que trabalhar no pressuposto de que não existe uma regra de DROP padrão, você precisa:
iptables -A INPUT -p tcp --dport 80 -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 10.80.225.83 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j LOG --log-prefix "TCP LOGDROP: "
iptables -A ENTRADA -p tcp --dportar 80 -j DROP
Tags iptables