Faz -o e -i faz sentido quando o host de destino já está conectado à interface especificada?

1
iptables -A FORWARD -s 192.168.20.7 -d 10.10.48.3 -p tcp --dport 25 -o eth1 -j ACCEPT
iptables -A FORWARD -s 10.10.48.3 -d 192.168.20.7 -p tcp --sport 25 -i eth1 -j ACCEPT

Ajustando o firewall da minha organização, encontrei essas duas linhas que me confundiram. A interface eth1 está conectada à rede 10.10.xx, então ... faz sentido colocar -o eth1 e -i eth1 se isso já estiver implícito nos -d 10.10.48.3 e -s 10.10.48.3 , respectivamente?

    
por yzT 16.09.2014 / 12:14

1 resposta

1

Com base na página de manual de iptables , eu estaria inclinado a concordar com sua avaliação também.

   [!] -i, --in-interface name
        Name of an interface via which a packet was received (only for 
        packets entering the INPUT, FORWARD and PREROUTING chains).  When 
        the "!" argument is used before the interface name, the sense is 
        inverted.  If the interface name ends in  a  "+",  then  any  
        interface which begins with this name will match.  If this option
        is omitted, any interface name will match.

   [!] -o, --out-interface name
        Name of an interface via which a packet is going to be sent (for 
        packets entering the FORWARD, OUTPUT and POSTROUTING chains).  When
        the "!" argument is used before the interface name, the sense is 
        inverted.  If the interface name ends in a "+", then any  interface
        which begins with this name will match.  If this option is omitted, 
        any interface name will match.

A última sentença nessas descrições é realmente o único ponto de preocupação. Se houver outras interfaces na caixa, o tráfego poderá ser permitido por essa regra para utilizá-lo, com as opções -o ou -i omitidas. Isto é tudo assumindo que o roteamento e tal é configurado para permitir que isso aconteça.

    
por 16.09.2014 / 14:20