Compartilhamento de rede OpenVPN

2

Por algumas horas, eu já estou tentando configurar uma rede virtual privada entre dois locais físicos (Local A, 192.168.1.0/24) e (Local B, 192.168.2.0/24). Eu sou forçado a usar um túnel em vez de uma rede em ponte. 192.168.4.0/24 é a rede VPN. A conexão entre os dois locais funciona bem, o servidor tem 192.168.4.1 e o cliente 192.168.4.6. Mas agora eu quero que o servidor acesse um servidor na rede do lado do cliente, cujo endereço é 192.168.1.44.

Como faço para obter isso com rotas e entradas iptable (presumivelmente NAT pós-saída?)?

    
por anonvpn 02.05.2011 / 13:20

1 resposta

1

Tente isso.

No servidor:

route add -net 192.168.1.0/24 gw 192.168.4.6

No cliente:

iptables -t nat -I POSTROUTING -s 192.168.4.1 -t 192.168.1.44 -j SNAT --to 192.168.4.1

Só isso provavelmente deve funcionar. Continue lendo se você quiser considerar outras opções.

Você deve ser capaz de fazer sem a regra iptables se o cliente for o gateway padrão da rede 192.168.1.0/24 se você adicionar essa rota no servidor de destino ou no gateway padrão:

route add -net 192.168.2.0/24 gw <IP_of_client_on_this_network>

Você também pode substituir net 192.168.1.0/24 com apenas 192.168.1.44 (etc.) se quiser que apenas esse servidor seja acessado - mas se você pretende filtrar, provavelmente deve adicionar uma regra de filtro separada no servidor e / ou cliente.

Se você já está filtrando o cliente (quero dizer, se você tiver regras FORWARD, veja iptables -nvL ) você tem que adicionar outra regra lá:

iptables -I FORWARD -i tun+ -s 192.168.4.1 -d 192.168.1.44 -j ACCEPT

Edit: deleted -i da regra POSTROUTING, isso foi um erro.

    
por 02.05.2011 / 13:23