Tenho o OpenVPN rodando em uma máquina Linux. O servidor VPN possui um endereço IP público (xxxx) e os clientes VPN recebem endereços no dispositivo "tun" em 10.8.0.0\24. Eu tenho uma regra IPTables para mascarar NAT 10.8.0.0\24 no endereço IP público.
Para colocar o servidor VPN em execução, tive que ativar o encaminhamento de IP (então defini net.ipv4.conf.default.forwarding=1).
... Em outras palavras, é exatamente o que o tutorial do OpenVPN diz para fazer, sem truques sofisticados.
Tudo isso funciona, mas estou preocupado com a parte de ativação do encaminhamento. EUpensara máquina agora encaminhará pacotes de qualquer endereço IP para qualquer endereço IP, o que não parece adequado. Por ter um IP acessível publicamente, isso é particularmente ruim.
Há alguma sugestão de regra de firewall para restringir o comportamento indesejado de encaminhamento? Acho que qualquer resposta será uma ou mais regras IPTables na cadeia FORWARD, mas é aqui que fiquei preso.
obrigado!
Responder1
Se você usar essas regras para encaminhar tabela, tudo bem.
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 10.8.0.0/24 -j ACCEPT
-A FORWARD -j REJECT
Você pode colocar as regras no arquivo /etc/sysconfig/iptables e reiniciar o firewall. Para teste de linha de comando, primeiro faça
iptables -F
para remover a rejeição padrão de encaminhamento de tráfego e adicionar 'iptables' antes de cada uma das três regras acima.
Responder2
Aqui está um subconjunto do que configurei no meu gateway openvpn:
iptables -A FORWARD -i tun0 -o tun0 -j ACCEPT # vpn to vpn
iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT # vpn to ethernet
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT # ethernet to vpn
Observe que este é apenas um subconjunto; o resto da regra faz coisas NAT padrão.