Solución de problemas de VPN abierta

Solución de problemas de VPN abierta

Estoy intentando configurar una conexión VPN de sitio a sitio entre dos de nuestras oficinas. Los servidores VPN que estoy usando son 2 "Edgerouter lite" y el software de túnel que estoy usando es OpenVPN.

Así está la configuración en este momento:

-

R1:
LAN subnet: 192.168.2.0/24
LAN port: 192.168.2.1

WAN port: X.X.X.X

-

R2:
LAN subnet: 10.10.0.0/24
LAN port: 10.10.0.34

WAN port: Y.Y.Y.Y

-

R1 Open VPN config:
 openvpn vtun0 {
     local-address 192.168.2.1 {
     }
     local-port 1194
     mode site-to-site
     openvpn-option --comp-lzo
     openvpn-option --float
     openvpn-option "--ping 10"
     openvpn-option "--ping-restart 20"
     openvpn-option --ping-timer-rem
     openvpn-option --persist-tun
     openvpn-option --persist-key
     openvpn-option "--user nobody"
     openvpn-option "--group nogroup"
     remote-address 10.10.0.39
     remote-host X.X.X.X
     remote-port 1194
     shared-secret-key-file /config/auth/secret
 }

-

R2 Open VPN config:
 openvpn vtun0 {
     local-address 10.10.0.39 {
     }
     local-port 1194
     mode site-to-site
     openvpn-option --comp-lzo
     openvpn-option --float
     openvpn-option "--ping 10"
     openvpn-option "--ping-restart 20"
     openvpn-option --ping-timer-rem
     openvpn-option --persist-tun
     openvpn-option --persist-key
     openvpn-option "--user nobody"
     openvpn-option "--group nogroup"
     remote-address 192.168.2.1
     remote-host Y.Y.Y.Y
     remote-port 1194
     shared-secret-key-file /config/auth/secret
 }

-

show openvpn status site-to-site on R1

OpenVPN client status on vtun0 []

Remote CN       Remote IP       Tunnel IP       TX byte RX byte Connected Since
--------------- --------------- --------------- ------- ------- ------------------------
None (PSK)      Y.Y.Y.Y   10.10.0.39        51.6K   51.0K N/A

-

show openvpn status site-to-site on R2

OpenVPN client status on vtun0 []

Remote CN       Remote IP       Tunnel IP       TX byte RX byte Connected Since
--------------- --------------- --------------- ------- ------- ------------------------
None (PSK)      X.X.X.X   192.168.2.1       85.3K   84.5K N/A

-

Routing table R1:
IP              Next hop    INT     TYPE
0.0.0.0/0       X.X.X.XGW   eth1    static
127.0.0.0/8                 lo      connected
192.168.2.0/24              eth0    connected
X.X.X.X/X                   eth1    connected
10.10.0.0/24                vtun0   static
10.10.0.39/32               vtun0   connected

-

Routing table R2:
IP              Next hop    INT     TYPE
0.0.0.0/0       Y.Y.Y.YGW   eth0    static
127.0.0.0/8                 lo      connected
10.10.0.0/24                eth1    connected
Y.Y.Y.Y/Y                   eth0    connected   
192.168.2.0/24              vtun0   static
192.168.2.1/32              vtun0   connected   

Desde un host en la LAN 192.168.2.0 (en R1) puedo hacer ping a 10.10.0.34 (IP del puerto LAN en R2) pero no puedo hacer ping a 10.10.0.4 (un host en la LAN R2).

¿Hay algún problema en mi configuración?

Respuesta1

Esto suele tener que ver con el enrutamiento. Si puede pasar de un punto final OpenVPN a otro, debería estar bastante cerca de tener una configuración que funcione, pero:

  • Asegúrese de que el reenvío de IP esté habilitado si hay una LAN a la que se debe acceder más allá de un punto final en particular.

  • Los clientes en el lado remoto de una conexión no saben cómo regresar al otro lado de la conexión. Esto es cierto en ambos sentidos del túnel.

Puede solucionar este problema utilizando las declaraciones iroutey pushen el openvpn.confde su elección. Si está uniendo dos redes x.x.x.xy y.y.y.y, luego, en el lado del servidor (digamos x.x.x.x), puede hacer esto:

  • push "route net mask"o push "route x.x.x.x 255.255.255.0"por ejemplo. Esto entrega a los clientes remotos y.y.y.yla ruta correcta de regreso a x.x.x.xtravés del túnel.

  • Si el lado del servidor ( x.x.x.x) necesita poder ver estaciones más allá de la puerta de enlace OpenVPN en y.y.y.y, también debe utilizar la iroutedeclaración. Colóquelo iroute y.y.y.y 255.255.255.0en el lado del servidor para que esto suceda. Básicamente, esto le permite a OpenVPN saber qué cliente es responsable de una subred en particular.

    • iroutelas declaraciones deben ir al ccd(directorio de configuración del cliente, creo). Por lo general, esto estaría en archivos llamados /etc/openvpn/ccd/<client name>.

Creo que esto debería ponerte en marcha. Además, eche un vistazo a la excelente documentación de OpenVPN:como este bit en LAN. ¡Espero que funcione para usted!

información relacionada