Habilita iptables em uma interface

14

Eu quero que o iptables filtre apenas uma interface, eth0, que está voltada para a WAN. Como isso pode ser feito? E eu quero manter as portas ftp e ssh abertas em eth0.

    
por nixnotwin 08.03.2011 / 18:00

4 respostas

21

Portanto, para todas as interfaces, exceto uma, você deseja aceitar todo o tráfego e, na eth0, você deseja eliminar todo o tráfego de entrada, exceto ftp e ssh.

Primeiro, poderíamos definir uma política de aceitação de todo o tráfego por padrão.

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

Em seguida, poderemos redefinir suas regras de firewall.

iptables -F

Agora, poderíamos dizer que queremos permitir o tráfego de entrada na eth0 que faz parte de uma conexão que já permitimos.

iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

Além disso, queremos permitir conexões ssh de entrada em eth0.

iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT

Mas qualquer outra coisa recebida na eth0 deve ser descartada.

iptables -A INPUT -i eth0 -j DROP

Para um pouco mais de profundidade, veja esta entrada do wiki do CentOS .

O FTP é mais complicado do que o ssh, já que ele pode usar uma porta aleatória, então veja esta pergunta anterior .

    
por 08.03.2011 / 18:27
7

Algo como isso deve fazer o trabalho:

iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
    
por 08.03.2011 / 18:14
4

É muito simples quando você faz uma regra iptables , então você precisa especificar a interface. A opção para especificar a placa LAN na qual iptables deve funcionar é -i

As regras a seguir podem dar um bom exemplo

iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -i eth0 -j REJECT --reject-with tcp-reset 

Última regra é rejeitar qualquer outro pacote que não corresponda às 2 primeiras regras. Todas as regras em iptables são executadas na ordem dada, então a regra para rejeitar pacotes é sempre a última.

    
por 08.03.2011 / 18:15
3

A opção para especificar uma interface na regra do iptables é -i , por exemplo: -i eth0 .

    
por 27.11.2012 / 21:55

Tags