1 votos

Las conexiones UDP OpenVPN se agotan

Así que tengo un servidor virtual configurado en amazon, que voy a llamar a OSERV, para ejecutar openvpn en 3 diferentes puertos. Todos los servidores OpenVPN actúan como puertas de enlace de enrutamiento. 2 de los servidores que se ejecutan a través de TCP gran trabajo, pero mi servidor UDP, mientras que es capaz de hacer conexiones locales, siempre el tiempo de espera para ip externas. Voy a llamarlo UDPSERV.

Así que cuando me ssh a través de UDPSERV a OSERV, funciona bien. Pero cuando trato de ssh (o hacer cualquier otro tipo de actividad) en cualquier otro lugar a través de UDPSERV, los tiempos de conexión. Voy a llamar a un servidor externo que estoy probando como EXSERV. Me han mirado el registro a nivel de verbosidad 6, y veo que los paquetes enviados y recibidos al intentar hacer la conexión a EXSERV. Por lo que sé que funciona. Tengo también corrió wireshark en la máquina cliente, y ver el envío y recepción de paquetes bien también cuando SSHing a EXSERV.

ssh root@ESERV -o ConnectTimeout=60
Connection reset by ESERV port 22

Aunque curiosamente, cuando yo vea el registro al realizar la actividad a través de UDPSERV a OSERV, no parece mostrar.

Me han confirmado la MTU no es un problema. Curiosamente, de hecho, me pueden empujar >4000 bytes a través de la MTU. Hice el intento de establecer para 500 en un punto.

Así que creo que eso es todo lo que puedo decir de la instalación de esta pregunta. Si alguien me puede ayudar a averiguar por qué esto no funciona, realmente lo apreciaría. Por debajo de este son todas mis configuraciones.

[Editar] Oh, sí. Hice un netcat a través de UDPSERV de mi cliente para EXSERV y funcionó bien.

Todos los 3 de los openvpn servidor configuraciones tienen la siguiente configuración:

dev tun
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
keepalive 10 120
comp-lzo
persist-key
persist-tun

Diferentes ajustes:
Serv1:

port 80
proto tcp
server 10.8.0.0 255.255.255.0

Serv2:

port 443
proto tcp
server 10.8.1.0 255.255.255.0

UDPSERV:

port 123
proto udp
server 10.8.2.0 255.255.255.0

El amazon de la configuración de seguridad tiene las siguientes prestaciones:
Entrante ACEPTAR: TCP22, TCP80, TCP443, UDP123
Saliente ACEPTAR: Todo

La siguiente es mi iptables instalación:

#Clear everything out
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X

#All connections
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

#Serv1
iptables -I FORWARD -i tun0 -o eth0 -s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -s 10.8.0.0/24 -j MASQUERADE

#Serv2
iptables -I FORWARD -i tun1 -o eth0 -s 10.8.1.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -s 10.8.1.0/24 -j MASQUERADE

#UDPSERV
iptables -I FORWARD -i tun2 -o eth0 -s 10.8.2.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -s 10.8.2.0/24 -j MASQUERADE

También he probado con los siguientes ajustes para UDPSERV:

iptables -A INPUT -i eth0 -m state --state NEW -p udp --dport 123 -j ACCEPT
iptables -I FORWARD -i tun2 -j ACCEPT
iptables -I FORWARD -i tun2 -o eth0  -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -s 10.8.2.0/24 -j MASQUERADE

El siguiente es el registro de openvpn en el nivel de verbosidad 6. El cliente conectado desde 45.16.1.12 . Luego he conectado a la OSERV ssh. Luego he intentado conectar con EXSERV SSH que se agotó después de 30-ish segundos. OpenVPN registro . Por favor, hágamelo saber si usted tiene problemas para descargar el archivo y voy a probar un servicio diferente.

1voto

Dakusan Puntos 106

Entonces resulta que el problema es que me estaba ejecutando en el puerto udp 123 (el puerto ntpd). Supongo que algún enrutador debe tener una codificación especial para ese puerto que solo permita paquetes pequeños, o algo así. Es hora de encontrar un puerto udp común diferente para ejecutar.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: