Re: [OT] VPN ikec - postrouting iptables
On Sunday, October 14, 2018 11:37:49 PM -03 Debian Forever wrote:
> Buenas, recientemente he montado un servidor bajo debian el cual lo
> quiero para montar una VPN usando el software ikec.
>
> Lo tengo todo montado, conecta sin problemas y llego a los hosts
> internos a través de la conexión VPN tap0 sin problemas.
>
> # ifconfig
>
> tap0 Link encap:Ethernet direcciónHW aa:7f:94:15:7d:cc
> Direc. inet:192.168.0.230 Difus.:192.168.0.230
> Másc:255.255.255.255 Dirección inet6: fe80::a87f:94ff:fe15:7dcc/64
> Alcance:Enlace ACTIVO DIFUSIÓN FUNCIONANDO MTU:1380 Métrica:1
> Paquetes RX:0 errores:0 perdidos:0 overruns:0 frame:0
> Paquetes TX:0 errores:0 perdidos:0 overruns:0 carrier:0
> colisiones:0 long.colaTX:1000
> Bytes RX:0 (0.0 B) TX bytes:0 (0.0 B)
>
> La máquina linux donde he montado la VPN tiene la ip 192.168.1.33/24
>
> Mi máquina linux debian desktop tiene la 192.168.1.34
>
> Ahora pasaría al siguiente punto, que es poder acceder a los hosts
> internos desde otra máquina linux, por ejemplo la mia desktop. Para
> ello de forma rápida, me he puesto la ruta necesaria:
>
> route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.33
>
> Y el tráfico, ya se enruta correctamente.
>
> Faltaría activar ip forward en el servidor:
>
> # sysctl -p
> net.ipv4.ip_forward = 1
>
> Y finalmente, como siempre he hecho para conexiones openvpn, meter una
> regla iptables postrouting en el servidor de esta forma:
>
> iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o tap0 -j MASQUERADE
>
> Pero no funciona, el tráfico lo enruta bien desde mi máquina hacia la
> máquina linux al hacer un traceroute e intentar llegar a un host
> interno pero no obtengo respuesta... Siempre he usado este método para
> otras conexiones VPN como por ejemplo openpvn o vpnc.
>
> Hay algo que se me escapa al ser una conexión de tipo de adaptador tap0?
>
> Gracias de antemano.
Buenas
realmente no necesitas "masquerear" los paquete de salida...
tenes que asegurarte solamente que salgan ..
esta bien el ip_forward y el ruteo para que salga por el tap0
es decir si tu desk es la 1.34 y quiere acceder a la red .0.x
hiciste todo bien...ahora lo que supongo que esta pasando(sin pruebas)
es que no vuelven los paquetes..porque la red .0.X no sabe como llegar
a tu desk(1.34)...por lo que a mi a simple vista me parece que falta la
regla de vuelta..
esto facilmente lo podes analizar con tcpdump..para ver si llegan los
paquete y donde se queda...por ejemplo en le servidor podes poner
tcpdump -i tap0 -n
algo asi de sencillo y hacer un ping de tu desk a una ip .0.x
y deberias ver lso paquetes saliendo por tap0..
ahora tenes que poner uno tcpdump en la otra punta y ver si llegan
al host .0.x .. y a la inversa...proba haciendo traceroute
desde la red .0.x a tu desk a ver que pasa..
si adjuntas tcpdump's y traceroute's bien detallados
y rutas de los hosts en cuestiion seria mas facil de saber
que estaria pasando..
saludos..
Matias.
Reply to: