Acceso LAN OpenVPN en Windows 10

Acceso LAN OpenVPN en Windows 10

Tengo una red doméstica simple (10.1.1.0/24), donde algunas máquinas con Windows 10 están conectadas a un enrutador inalámbrico y una de ellas ejecuta el servidor OpenVPN (por ejemplo, PC1).

Los clientes remotos pueden hacer ping a la PC1 (10.1.1.8), pero no a ningún otro dispositivo, aunque el servidor VPN y otros dispositivos estén en la misma subred. Bastante similar aesteguión. Intenté agregar 10.1.1.0 mask 255.255.255.0 10.1.1.1a la tabla de rutas junto con habilitar IPEnableRouteren el registro, pero no tuve suerte.

Soy nuevo en los trucos de VPN, así que siento que me estoy perdiendo algo aquí. ¿Alguna idea, amigos? (Excepto para Puente).

  • servidor.ovpn
port 1194
proto udp
dev tun
****ca/cert/key/dh/tls-auth omitted****
server 10.8.0.0 255.255.255.0
push "route 10.1.1.0 255.255.255.0"
ifconfig-pool-persist ipp.txt
client-to-client
keepalive 10 120
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
explicit-exit-notify 1
  • cliente.ovpn
dev tun
proto udp
remote myddns.com 443
resolv-retry infinite
nobind
comp-lzo
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
verb 3
****ca/cert/key/tls-auth omitted****
  • Tabla de rutas de PC1
    Interface List
 21...00 ff a0 50 2d 1b ......TAP-Windows Adapter V9
  7...ea 4e 06 6b 4f 39 ......Microsoft Wi-Fi Direct Virtual Adapter #13
 58...e8 4e 06 6b 4f 39 ......Microsoft Wi-Fi Direct Virtual Adapter #14
 14...e8 4e 06 6b 4f 39 ......Realtek RTL8192EU Wireless LAN 802.11n USB 2.0 Network Adapter
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0         10.1.1.1         10.1.1.8     45
         10.1.1.0    255.255.255.0         On-link          10.1.1.8    301
         10.1.1.8  255.255.255.255         On-link          10.1.1.8    301
       10.1.1.255  255.255.255.255         On-link          10.1.1.8    301
         10.8.0.0    255.255.255.0         10.8.0.2         10.8.0.1     25
         10.8.0.0  255.255.255.252         On-link          10.8.0.1    281
         10.8.0.1  255.255.255.255         On-link          10.8.0.1    281
         10.8.0.3  255.255.255.255         On-link          10.8.0.1    281
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link          10.8.0.1    281
        224.0.0.0        240.0.0.0         On-link          10.1.1.8    301
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link          10.8.0.1    281
  255.255.255.255  255.255.255.255         On-link          10.1.1.8    301
===========================================================================
  • Tabla de rutas de un Cliente
Interface List
  2...f8 a9 63 e0 26 bc ......Realtek PCIe GbE Family Controller
 20...00 ff d5 aa e2 9e ......TAP-Windows Adapter V9
 10...1e 0e c4 42 55 73 ......Microsoft Wi-Fi Direct Virtual Adapter
  4...2e 0e c4 42 55 73 ......Microsoft Wi-Fi Direct Virtual Adapter #2
  7...ec 0e c4 42 55 73 ......Qualcomm Atheros AR956x Wireless Network Adapter
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0   192.168.43.129   192.168.43.150     55
         10.1.1.0    255.255.255.0         10.8.0.5         10.8.0.6     25
         10.8.0.1  255.255.255.255         10.8.0.5         10.8.0.6     25
         10.8.0.4  255.255.255.252         On-link          10.8.0.6    281
         10.8.0.6  255.255.255.255         On-link          10.8.0.6    281
         10.8.0.7  255.255.255.255         On-link          10.8.0.6    281
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
     192.168.43.0    255.255.255.0         On-link    192.168.43.150    311
   192.168.43.150  255.255.255.255         On-link    192.168.43.150    311
   192.168.43.255  255.255.255.255         On-link    192.168.43.150    311
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link    192.168.43.150    311
        224.0.0.0        240.0.0.0         On-link          10.8.0.6    281
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link    192.168.43.150    311
  255.255.255.255  255.255.255.255         On-link          10.8.0.6    281
===========================================================================

Un poquito de ayuda por favor!!

Respuesta1

Cómo escribir un artículo encomunidad.openvpn.netestados:

A continuación, debe configurar una ruta en la puerta de enlace LAN del lado del servidor para enrutar la subred del cliente VPN (10.8.0.0/24) al servidor OpenVPN (esto solo es necesario si elEl servidor OpenVPN y la puerta de enlace LAN son máquinas diferentes).

Creo que esta es la solución, pero desafortunadamente no puedo probarla porque mi puerta de enlace LAN (enrutador inalámbrico) no tiene funcionalidad para habilitar rutas estáticas del lado LAN.

Supongo que tengo que comprar un enrutador mejor, preferiblemente uno que venga con OpenVPN integrado. ;)

Respuesta2

Su problema es que a la configuración del servidor le faltan las opciones correctas para el enrutamiento de acceso a LAN, por lo que siempre recomiendo tomarse el tiempo para leer el

  • OpenVPNCómo(~15 minutos)
  • OpenVPNPágina de manual(~45 minutos)

  • openvpn-server.conf

    # Pushed Routes #
    #---------------------------------------------------
      push                'dhcp-option    DNS 10.1.1.1'
      push                'dhcp-option    WINS 10.1.1.1'
    
      client-to-client    '1'
        # Each OS deals with parameters differently, so the 1 may need to be specified
    
    • ¿Dónde 10.1.1.1/24está el servidor DNS y DHCP detrás de la VPN a la que desea acceder?

  • Además, AES-256-CBCno es necesario, ya AES-128-CBCque actualmente no se puede descifrar y seguirá siéndolo durante varios años... todo lo que está haciendo es ralentizar enormemente el rendimiento sin mejoras de seguridad.
    • Una mejor opción, si le preocupa, sería cambiar los rekeyvalores de tiempo y tamaño.


Para su información general:

Muchos simplemente usan las configuraciones genéricas que se encuentran en línea; sin embargo, el mayor beneficio y la mejor seguridad provienen del ajuste de las configuraciones.

  • Ejemplo de configuración optimizada

    #
    
            ##::[[---  OpenVPN Server Config  ---]]::##
    
    #===========================================================
                  ##----- VPN Admin Server -----##
    #===========================================================
    
      # Protocol #
    #-----------------------------------------------------------
      dev                     'tun0'
      topology                'subnet'
      proto                   'udp'
      port                    '61194'
    
      # Routes #
    #-----------------------------------------------------------
      server                  '10.32.2.0 255.255.255.248'
      ifconfig                '10.32.2.1 255.255.255.248'
    
      # Client Config #
    #-----------------------------------------------------------
      ccd-exclusive           '1'
      ifconfig-pool-persist   '/etc/openvpn/clients/vpn/ipp.txt'
      client-config-dir       '/etc/openvpn/clients/vpn'
    
      # Pushed Routes #
    #-----------------------------------------------------------
      push                    'route 192.168.2.0 255.255.255.240'
      push                    'dhcp-option  DNS 192.168.2.1'
      push                    'dhcp-option  WINS 192.168.2.1'
      push                    'dhcp-option  DNS 208.67.222.222'
      push                    'dhcp-option  DNS 208.67.220.220'
      push                    'dhcp-option  NTP 129.6.15.30'
    
      # Encryption #
    #-----------------------------------------------------------
      # Diffie-Hellmann:
      dh                      '/etc/ssl/openvpn/dh2048.pem'
    
      # PKCS12:
      pkcs12                  '/etc/ssl/openvpn/vpn-server.p12'
    
      # SSL:
      cipher                  'AES-128-CBC'
      auth                    'SHA512'
      tls-crypt               '/etc/ssl/openvpn/tls-crypt.psk'
    
      # TLS:
      tls-version-min         '1.2'
      tls-cipher              'TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256:TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256:TLS-DHE-RSA-WITH-AES-128-CBC-SHA256:TLS-ECDH-RSA-WITH-AES-128-GCM-SHA256:!aNULL:!eNULL:!LOW:!3DES:!MD5:!SHA:!EXP:!PSK:!SRP:!DSS:!RC4:!kRSA'
    
      # Logging #
    #-----------------------------------------------------------
      log                     '/tmp/vpn-server.log'
      status                  '/tmp/vpn-server-status.log'
      verb                    '4'
    
      # Connection Options #
    #-----------------------------------------------------------
      keepalive               '10 120'
      compress                'lz4'
    
      # Connection Reliability #
    #-----------------------------------------------------------
      client-to-client        '1'
      persist-key             '1'
      persist-tun             '1'
    
      # Connection Speed #
    #-----------------------------------------------------------
      sndbuf                  '393216'
      rcvbuf                  '393216'
      fragment                '0'
      mssfix                  '0'
      tun-mtu                 '48000'
    
      # Pushed Buffers #
    #-----------------------------------------------------------
      push                    'sndbuf 393216'
      push                    'rcvbuf 393216'
    
      # Permissions #
    #-----------------------------------------------------------
      user                    'nobody'
      group                   'nogroup'
    

Respuesta3

Quizás puedas probar el siguiente cmdlet de PowerShell (no mezclar con el símbolo del sistema):

New-NetNat -Name "VpnMasq" -InternalIPInterfaceAddressPrefix "10.8.0.0/24"

lo que aparentemente habilitaría NAT (sobrecarga) para paquetes del prefijo de origen especificado.

Es posible que sólo esté disponible en Windows 10 Pro/Enterprise como Hyper-V, para el que sirve principalmente.

Si no ayuda simplemente:

Remove-NetNat -Name "VpnMasq"

Pero antes de eso, debes asegurarte de que puedes hacer ping (o, más bien, llegar) desde el servidor a los clientes a través del túnel. No estoy familiarizado con cómo net30funciona (la topología predeterminada de OpenVPN), y la subnettopología podría ser más simple y adaptarse más a su caso de uso de todos modos. Entonces agrega la línea:

topology subnet

antes de la serverlínea. Entonces la IP del cliente de ambos lados del POV debería ser la misma.

Tenga en cuenta que con la subnettopología utilizada, el hecho de que los clientes puedan comunicarse entre sí (aunque no con la LAN de cada uno) depende de si el servidor permite que los paquetes del túnel se reenvíen al túnel cuando client-to-clientno se usa en la configuración del servidor.

información relacionada