
Tengo una VM con una interfaz interna conectada a una LAN local. La máquina virtual tiene una conexión OpenVPN funcional con otro sitio. ¿Cómo reenvío todo el tráfico entrante en la interfaz local a través del túnel VPN con iptables? Estoy ejecutando una distribución de Ubuntu.
Respuesta1
Para poder realizar una VPN de sitio a sitio con la conexión existente, necesita tener rutas de enrutamiento a través de la VPN. Digamos que estás en el Sitio n.° 1 (todo es simétrico, independientemente de cuál actúa como servidor OpenVPN).
- Primero, debe asegurarse de que la VM con la conexión VPN (que podemos llamar "VPN#1") pueda alcanzar la subred remota. Esto se hace agregando una ruta usando la configuración OpenVPN
- Si "VPN#1" es el cliente OpenVPN, puede agregarlo en el servidor usando
push
la palabra clave o agregarlo localmente usandoroute
- Si "VPN#1" es el servidor OpenVPN, puede agregarlo usando
route
o usando una herramienta externa comoip
- Si "VPN#1" es el cliente OpenVPN, puede agregarlo en el servidor usando
- Luego, debe asegurarse de que tanto la "VPN#1" como el punto final remoto tengan habilitado el reenvío de IP (agregue
net.ipv4.ip_forward=1
y/etc/sysctl.conf
vuelva a cargar usandosysctl -p
) - Si VPN#1 es la puerta de enlace predeterminada, entonces ya está. Si no es así, necesitará agregar una ruta estática para la LAN remota en la puerta de enlace predeterminada o puede agregar una ruta estática en cada host de su LAN.
- Verifique el firewall en VPN#1: debe configurarse para permitir el tráfico entre las interfaces LAN y VPN (consulte
FORWARD
la cadena enfilter
la tabla usandoiptables
)
Si repite esto en el lado remoto, todo debería funcionar. Utilice ping
y traceroute
para depurar cualquier problema.
Respuesta2
OK, ya está funcionando. Puedo realizar RDP en el servidor al otro lado de mi LAN local. No puedo usar smb para acceder a los recursos compartidos administrativos en los servidores de Windows del otro lado. Estas son las reglas de la tabla de IP que utilicé:
/sbin/iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE /sbin/iptables -A FORWARD -i tun0 -o ens160 -m state --state RELACIONADO,ESTABLECIDO -j ACCEPT /sbin/iptables -A FORWARD -i ens160 -o tun0 -j ACEPTAR