iptables e configuração OpenVPN

0

Eu tenho as seguintes regras iptables :

-A INPUT -i eth0 -p udp -m udp --dport 1194 -m state --state NEW -j ACCEPT
-A INPUT -i tun+ -j ACCEPT
-A INPUT -j DROP
-A FORWARD -i tun+ -j ACCEPT
-A FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o tun+ -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 1194 -j ACCEPT

Eu tenho um problema com eles. Se houver um -m state --state NEW , não consigo me conectar ao OpenVPN. Se eu mudar a primeira regra deles para:

-A INPUT -i eth0 -p udp -m udp --dport 1194 -j ACCEPT

Eu posso conectar e usar o OpenVPN livremente.

Por que o -m state --state NEW funciona assim?

    
por m0nhawk 07.12.2015 / 13:45

1 resposta

2

A extensão de estado diferencia os seguintes estados de uma conexão: NEW , ESTABLISHED , RELATED , INVALID e mais três outros que raramente são usados. Um pacote é apenas NEW se, informalmente falando, o servidor e o cliente não tiverem se comunicado de alguma forma. Depois disso, um pacote geralmente pertence a uma conexão ESTABLISHED ou é RELATED a um.

Isso significa que você precisará aceitar pacotes com o estado ESTABLISHED e RELATED . Atualmente, somente o primeiro pacote é aceito e os posteriores são descartados silenciosamente. Use o seguinte para corrigir sua configuração:

iptables -I INPUT 1 -m state --state ESTABLISHED,RELATED -j ACCEPT
    
por 07.12.2015 / 15:23