Usando o iptables para fazer um roteador VPN

2

Estou tentando fazer uma conexão VPN com um site VPN de terceiros e, em seguida, encaminhar o tráfego de meus computadores internos (ssh e ping por agora) para o site VPN usando o IPTables.

Terceiro < - > (tun0 / eth0) Linux VPN Box (eth1) < - > Windows7TestBox

Estou rodando no CentOS 6.3 Linux e tenho duas conexões de rede eth0- > public eth1- > private. Estou executando o vpnc-0.5.3-4 que está se conectando atualmente ao meu destino.

Quando me conecto, sou capaz de fazer ping no IPAddresses de destino, mas isso é o máximo que posso conseguir.

ping -I tun0 10.1.33.26 # success
ping -I eth0 10.1.33.26 # fail
ping -I eth1 10.1.33.26 # fail

Eu tenho minha caixa de teste de rede privada do Windows 7 configurada para ter a rede eth1 (privada) do meu servidor VPN como seu gateway e pode fazer o ping dele bem. Eu preciso de IPTables para enviar o tráfego do Windows 7 para fora do túnel VPN.

Eu tentei por alguns dias muitas configurações IPTables diferentes deste site e de outros, ou os outros exemplos são muito simples ou muito complicados. A única coisa que esse servidor está fazendo é conectar-se à VPN e encaminhar todo o tráfego.

Assim, podemos "liberar" tudo e começar do zero aqui. É uma lousa em branco.

#!/bin/bash

ipt="/sbin/iptables"

# Zero out all counters

$ipt -Z
$ipt -t nat -Z
$ipt -t mangle -Z

# Flush all active rules, delete all chains

$ipt -F
$ipt -X
$ipt -t nat -F
$ipt -t nat -X
$ipt -t mangle -F
$ipt -t mangle -X
$ipt -P INPUT ACCEPT
$ipt -P FORWARD ACCEPT
$ipt -P OUTPUT ACCEPT
$ipt -t nat -A POSTROUTING -o tun0 -j MASQUERADE
$ipt -A FORWARD -i eth1 -o eth0 -j ACCEPT
$ipt -A FORWARD -i eth0 -o eth1 -j ACCEPT
$ipt -A FORWARD -i eth0 -o tun0 -j ACCEPT
$ipt -A FORWARD -i tun0 -o eth0 -j ACCEPT

Novamente, fiz muitas variações das regras acima e de muitas outras regras de outros posts, mas não consegui avançar. Parece uma tarefa tão simples e, no entanto ...

    
por lost_in_the_sauce 11.09.2012 / 17:11

0 respostas