Temos 2 servidores: server1, server2 Meu pc é client1 Temos servidor VPN rodando em server1 com IP 1.2.3.4 (apenas exemplo) Queremos esconder alguns serviços por trás da VPN, incluindo o sshd e o servidor vnc
Parte da configuração da vpn:
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "remote-gateway vpn_server_ip"
push "dhcp-option DNS 8.8.8.8"
Parte da configuração do iptables:
PRIVATE=10.8.0.0/24
sudo iptables -t nat -A POSTROUTING -s $PRIVATE -o eno1 -j MASQUERADE
O que está funcionando: Se eu estiver conectado a VPN Eu sou capaz de se conectar ao server2 com ssh (digamos que o IP 1.2.3.5) e na última mensagem de login do SSH eu posso ver o endereço do servidor VPN em vez do meu ip.
ssh server2
resultará:
Last login: Tue Aug 2 15:55:46 2016 from server1
Mas quando eu estou me conectando ao nosso server1, que é o único que executa a VPN, eu ainda tenho o meu IP (eu também o habilitei no firewall):
ssh server1
saída:
Last login: Tue Aug 2 15:57:38 2016 from client1
Eu quero o IP 1.2.3.4 do servidor em vez do IP do client1. Então eu posso aceitar apenas pacotes do server1 em nosso firewall. Isso agora está funcionando para server2, mas não no server1 porque POSTROUTING afeta apenas os pacotes de saída.
Tags networking vpn routing