
Así que aquí está el trato. Tengo una instancia de openvpn en un puerto 443. Necesito que también esté en el puerto 993, la misma instancia, la misma red virtual. Openvpn realmente no puede hacer eso, pero Linux viene con iptables, por lo que aplicamos una regla que traduce un puerto a otro:
-A PREROUTING -i eth0 -p tcp --dst x.x.x.23 --dport 993 -j REDIRECT --to-port 443
Simplemente toma paquetes de un puerto y los arroja a otro en alguna IP. Lo probé en SSH y funciona. Entonces problema resuelto ¿no?
Equivocado. Cuando inicio una configuración OpenVPN con el puerto cambiado a 993, aparece lo siguiente:
WARNING: Bad encapsulated packet length from peer (15464), which must be > 0 and <= 1560 -- please ensure that --tun-mtu or --link-mtu is equal on both peers -- this condition could also indicate a possible active attack on the TCP link -- [Attempting restart...]
Entonces, está bien. Aumento --link-mtu en el cliente y todavía no se conecta, ahora sin ninguna explicación. ¿Lo que está mal? ¿Y cómo lo soluciono?