antobar
(usa Fedora)
Enviado em 03/10/2009 - 23:30h
Viva!
Já passei por isso, e a falta de tempo para resolver a situação obrigou-me a recuar.
Entretanto ontem, finalmente, encontrei quase por acaso uma forma de contornar, e colocar a funcionar.
Este tipo de situação acontece muito quando temos um Firewall/Router Linux e se pretende usar VPN de um M$ WinServer 200x que está dentro da rede, para autenticar quem está de fora.
Quanto ao script do iptables, reparei no seguinte:
"#iptables -t nat -I PREROUTING -p 47 --dport 1723 -j DNAT --to-destination 192.168.0.156:1723
#iptables -t nat -I PREROUTING -p gre --dport 1723 -j DNAT --to-destination 192.168.0.156:1723"
Protocolo 47 é o Gre. Será necessário estar activo, mas não pode incluir a porta! o --dport necessita de ter associado por exemplo o protocolo tcp ou udp.
Inclusive cheguei a encontrar esta resposta, que aparentemente resolveu a situação lá do outro:
assume for simplicity: iptables -P FORWARD ACCEPT
echo ">>>--- setup nat VPN"
iptables -t nat -A PREROUTING -i <Public-IFace> -p gre -d <VPN-Public-IP> -j DNAT --to-destination <VPN-DMZ-IP>
iptables -t nat -A PREROUTING -i <Public-IFace> -p tcp --sport 1024:65535 -d <VPN-Public-IP> --dport 1723 -j DNAT --to-destination <VPN-DMZ-IP>
Tem também que ter carregado:
modprobe ip_nat_pptp
E poderá também que ter no INPUT, a aceitação à porta 1723:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p 47 -j ACCEPT
Nota: Pode parecer básico, mas às vezes esquecemos, quando se está a fazer testes e tem-se as regras iptables a funcionar, estes "-A" devem ser substituídos por "-I"
Tudo isto, é para implementações de servidor VPN PPTP! Se usar L2TP,IPsec, ou outros métodos, as regras da Firewall serão drasticamente diferentes!
Agora, a forma como eu ULTRAPASSEI este problema:
PPTPproxy:
http://www.mgix.com/pptpproxy/
e introduzindo esta simple regra:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1723 -j ACCEPT
Nota: poderá necessitar do modprobe que descreve em cima, uma vez que deixei-o carregado, contudo e como poderá ver na documentação do PPTPproxy, Não deve e não pode estar a redireccionar GRE/1723 para que o PPTPproxy funcione correctamente.
Quanto a mim, a próxima vez que me meter neste assunto será para erradicar definitivamente o Servidor VPN M$, e passar a usar OpenVPN (ou outro free) directamente na FW/Router, mas usando a autenticação do AD.