Eu tenho um IPsec Gateway para um cliente, e o túnel VPN está ativo, o problema é que eles não permitem que eu use meu endereço privado porque ele é usado por outra VPN que eles usam. Nosso gateway é uma instância do EC2 hospedada no Amazon Cloud com IP Elastic público:
Meu lado gw: 10.0.3.22 - > IP elástico: 1.1.1.1 - > Seu IPsec gw 2.2.2.2
Eu tenho que conectar a um servidor 3.3.3.3 por trás do seu IPsec gw, e quando eu tento pacotes não voltam:
$ telnet 3.3.3.3 443 (the only opened port)
10.0.3.22 > 2.2.2.2 (ESP traffic, seq=0x1)
10.0.3.22 > 2.2.2.2 (ESP traffic, seq=0x2)
... until timeout
O cliente pode confirmar que o túnel da VPN está ativo e ele vê o tráfego em seus registros, mas é descartado antes de atingir o 3.3.3.3 pelo seu firewall. Eles aceitarão 1.1.1.1 apenas como fonte. Então eu tenho que esconder meu IP privado 10.0.3.22 com um NAT para 1.1.1.1.
Isso é possível usando o iptables? Eu tentei fazer SNAT e DNAT, mas não funciona:
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.1.1.1
sudo iptables -t nat -A PREROUTING -i eth0 -j DNAT --to 10.0.3.22
Tags networking amazon-ec2 iptables ipsec nat