Qual é a melhor maneira de criar um túnel remoto?

3

Eu tenho 3 servidores Linux:

  • 10.0.0.0/24 - (10.0.0.10) Servidor Linux dentro da minha LAN.
  • 20.0.0.0/24 - (20.0.0.10) servidor Linux com servidor HTTP Apache
  • 50.50.50.50/32 - Servidor no Amazon AWS que vê as LANs 10.xe 20.x.

10.x não pode ver 20.xe 20.x não pode ver 10.x
Qual é a melhor maneira (e como posso fazê-lo) para se 50.50.50.50 servidor na AWS para criar um túnel de 10.x para 20.x

20.0.0.10 executa o servidor HTTPd na LAN "DMZ". Preciso ver 20.0.0.10:80 dos meus servidores 10.0.0.0/24.
As duas redes 10.xe 20.x estão no mesmo firewall / roteador Cisco ASA, mas não posso rotear devido a problemas de licença, portanto, quero ignorar isso pelo servidor externo que pode ver a rede 20.x. Eu quero ser capaz de ir para 50.50.50.50:80 de 10.x servidores e ver 20.0.0.10:80 conteúdo.

    
por gabi 05.05.2014 / 09:32

1 resposta

0

Você descreve casos bem diferentes em sua pergunta. Se você quiser alcançar somente 20.x: 80 via 50.50.50.50:80, então você pode configurar o encaminhamento de porta em 50.50.50.50 com iptables :

target_ip="20.1.2.3"
source_ip="50.50.50.50"
iptables -t nat -A PREROUTING -s 10.0.0.0/8 -p tcp --dport 80 -j DNAT --to-destination 20.1.2.3
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -d "$target_ip" -p tcp --dport 80 -j SNAT --to-source "$source_ip"
iptables -A FORWARD -s 10.0.0.0/8 -d "$target_ip" -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -d 10.0.0.0/8 -s "$target_ip" -p tcp --sport 80 -j ACCEPT
echo 1 >/proc/sys/net/ipv4/ip_forward

Se houver um túnel entre 20.0.0.0/8 e 50.50.50.50, você provavelmente terá que definir $source_ip para o endereço IP da interface do túnel.

    
por 05.05.2014 / 10:43