Esta es una guía paso a paso sobre cómo configurar un servidor VPN abierto en sistemas operativos Windows Server 2008/2012 y conectar clientes a la red privada virtual creada.
Open VPN es una implementación abierta de la tecnología VPN, la Red Privada Virtual, que está diseñada para crear redes privadas virtuales entre grupos de nodos geográficamente distantes sobre un canal de transmisión de datos abierto (Internet). Open VPN es adecuado para tareas como la conexión de red remota segura a un servidor sin abrir el acceso a Internet, como si se conectara a un host en su red local. La seguridad de la conexión se logra mediante cifrado SSL abierto.
- ¿Cómo funciona?
- Instalación de Open VPN en el servidor
- Generación de claves (PKI) del centro de certificación, servidor, cliente; Algoritmo Diffie-Hellman
- Abra la configuración del servidor VPN
- Configuración de cliente VPN abierta
- Verifique las reglas del Firewall de Windows
- Comprobar conexiones OpenVPN
¿Cómo funciona?
Cuando se complete la configuración de VPN abierta, el servidor podrá aceptar conexiones de red externas protegidas por SSL al adaptador de red virtual creado al inicio del servicio VPN (tun / tap) sin afectar las reglas de procesamiento de tráfico de otras interfaces (adaptador de Internet externo, etc.).). Puede configurar Open VPN para uso compartido de clientes en un adaptador de red específico de los presentes en el servidor. En la segunda parte de la instrucción, se considera este túnel del tráfico de Internet de los usuarios. Con este método de reenvío, el host que maneja las conexiones VPN también realizará la función de un servidor proxy (Proxy), para unificar las reglas de la actividad de red de los usuarios y enrutar el tráfico de Internet del cliente en su propio nombre.
Instalación de Open VPN en el servidor
Descargue e instale la versión de Open VPN que coincida con su sistema operativo. Ejecutar el instalador; asegúrese de que todas las funciones estén seleccionadas para la instalación en el tercer paso del asistente de instalación.
Tenga en cuenta que en esta instrucción los comandos adicionales se basan en el hecho de que Open VPN está instalado en el directorio predeterminado «C: \ Archivos de programa \ OpenVPN».
Permitimos agregar un TOQUE de adaptador de red virtual en respuesta a la solicitud correspondiente y esperar hasta que se complete la instalación (puede tardar varios minutos).
Generación de claves (PKI) del centro de certificación, servidor, cliente; Algoritmo Diffie-Hellman
Para administrar los pares clave / certificado de todos los nodos de la red privada que se están creando, use la utilidad easy-rsa, que funciona a través de la línea de comandos, por analogía con la consola Linux. Para trabajar con él, abra, ejecute la línea de comandos (atajo de teclado Win + R, luego escriba cmd y presione Entrar)
Archivos de configuración.
Ejecutando configuración de inicio.bat script generará un nuevo vars.archivo bat en nuestro directorio easy-rsa, este archivo contendrá nuestra configuración:
cd "C:\Program Files\OpenVPN\easy-rsa"init-config.bat
Así que ahora necesitamos abrir el siguiente directorio usando el explorador de Windows: C:\Archivos de programa \ OpenVPN \ easy-rsa
Ahora, usando el bloc de notas (u otro editor de texto) edite el archivo por lotes llamado vars.bat, necesitamos configurar algunas variables
Cambiar la siguiente configuración (más cerca de la parte inferior del archivo) para cumplir con sus requisitos:
set KEY_COUNTRY=USset KEY_PROVINCE=CAset KEY_CITY=SanFranciscoset KEY_ORG=OpenVPNset [email protected] KEY_CN=changemeset KEY_NAME=changeme
Nota: si el valor de la variable contiene un espacio, escríbalo entre comillas.
A continuación, debe guardar los cambios en el archivo y, a continuación, usar el Símbolo del sistema, ejecutar los siguientes comandos:
cd "C:\Program Files\OpenVPN\easy-rsa"vars.batclean-all.bat
Generación de claves de servidor y Centro de certificación
Procedamos a la creación de la clave / certificado de la autoridad de certificación. Ejecutar el script:
build-ca.bat
En respuesta a las indicaciones que aparecen, simplemente puede presionar Enter. La única excepción es el campo KEY_CN (Nombre común); asegúrese de especificar un nombre único e insertar el mismo nombre en el campo Nombre:
Del mismo modo, generamos un certificado de servidor. Aquí el valor de los campos Nombre común y Nombre es SERVIDOR:
.\build-key-server.bat server
Nota: el argumento server es el nombre del archivo futuro.
Ahora se preguntará a todas las claves generadas si deben firmar el certificado generado (Firmar el certificado) en nombre de la entidad de certificación. Respuesta y (sí).
Generar claves y certificados de cliente
Para cada cliente VPN, debe generar un certificado SSL separado.
Hay una opción en la configuración de Open VPN, habilitando que puede usar un certificado para varios clientes (consulte el servidor.archivo ovpn- > «dublicate-cn»), pero no se recomienda desde el punto de vista de la seguridad. Los certificados se pueden generar en el futuro, a medida que se conectan nuevos clientes. Por lo tanto, ahora crearemos solo uno para client1:
Ejecute los siguientes comandos para generar claves de cliente:
cd \cd "C:\Program Files\OpenVPN\easy-rsa".\build-key.bat client1
Nota: el argumento client1 es el nombre del archivo futuro.
En el campo Nombre común, especifique el nombre del cliente (en nuestro caso client1).
Parámetros Diffie Hellman
Para completar la configuración de cifrado, debe ejecutar el script de generación de parámetros Diffie-Hellman:
.\build-dh.bat
Mostrar información sobre la creación de parámetros se ve así:
Transferir claves / certificados generados
Los certificados generados se encuentran en el directorio C: \ Archivos de programa \ OpenVPN \ easy-rsa \ claves. Copie los archivos enumerados a continuación en el directorio C:\Archivos de programa \ OpenVPN \ configuración:
- ca.crt
- dh2048.pem / dh1048.servidor pem
- .servidor crt
- .clave
Abra la configuración del servidor VPN
Procedamos a la configuración del servidor VPN directamente, use nuestro archivo de configuración con el servidor de nombres.ovpn y colóquelo en el directorio C: \ Archivos de programa \ OpenVPN \ config.
copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\config"copy "C:\Program Files\OpenVPN\sample-config\client.ovpn" "C:\Program Files\OpenVPN\config"
Abra el archivo; encuentre la ruta de acceso a las claves (consulte a continuación). Compruebe las rutas de acceso a la ca de certificados copiados anteriormente.crt, dh1024.pem / dh2048.pem, servidor.llave, servidor.crt y, si es necesario, cambio:
port 1194proto udpdev tunserver 10.8.0.0 255.255.255.0ca "C:\Program Files\OpenVPN\config\ca.crt"cert "C:\Program Files\OpenVPN\config\server.crt"key "C:\Program Files\OpenVPN\config\server.key"dh "C:\Program Files\OpenVPN\config\dh2048.pem"push "redirect-gateway def1"push "dhcp-option DNS 8.8.8.8"keepalive 10 120comp-lzopersist-keypersist-tunverb 3
Guarde el archivo.
Ahora necesita permitir el reenvío de tráfico entre adaptadores. Siga estos pasos: Panel de control- > Red e Internet – > Centro de Redes y recursos compartidos – > Cambiar la configuración del adaptador. Elija un adaptador que mire a Internet externo (el adaptador TAP es responsable de la conexión VPN). En nuestro ejemplo, esto es Ethernet 2.
Haga doble clic en las propiedades del adaptador y vaya a la pestaña Acceso, marque todas las casillas de verificación. Guarda los cambios.
A continuación, debe habilitar la dirección IP.
Usando la búsqueda de Windows, localice el REGEDIT.aplicación exe.
En el árbol, busque el directorio HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters . En la parte derecha de la ventana, busque la variable IPEnableRouter, haga doble clic en la ventana de edición de valores y cámbiela a 1, lo que permite el direccionamiento en el VPS.
Ejecución automática Abrir VPN
Configure inmediatamente el servicio Open VPN para que se ejecute automáticamente al iniciar el sistema.
Abra los servicios de Windows. Busque en la lista Abrir VPN – > haga clic con el botón derecho-> Propiedades- > Inicio: Automático
Esto completa la configuración básica del servidor de red privada virtual. Busque el archivo C: \ Archivos de programa \ OpenVPN \ config \ servidor.ovpn – > haga clic con el botón derecho-> «Iniciar OpenVPN en esta configuración» para iniciar el servidor de red privada virtual y el archivo de configuración que preparamos.
Configuración de cliente VPN abierta
Las aplicaciones de cliente VPN abiertas están disponibles para todos los sistemas operativos populares: Windows / Linux / iOS / Android. Para macOS, se utiliza el cliente Tunnelblick. Todas estas aplicaciones funcionan con los mismos archivos de configuración. Solo son posibles algunas diferencias de varias opciones. Puede aprender sobre ellos examinando la documentación de su cliente VPN abierto. En esta guía, veremos cómo conectar un cliente de Windows utilizando el mismo paquete de distribución del programa que instalamos en el servidor. Cuando se utilizan aplicaciones para otros sistemas operativos, la lógica de configuración es similar.
- Instale la versión actual de Open VPN en el equipo cliente.
- Copie en el directorio C: \ Archivos de programa \ OpenVPN \ config los archivos de certificados de cliente creados anteriormente en el servidor (2 certificados con el .extensión crt y la llave con el .extensión de clave) y utilice nuestro cliente.archivo de configuración del cliente ovpn. Después de copiar en el dispositivo del usuario, el último archivo se elimina del servidor o se transfiere de la carpeta de configuración para evitar confusiones en el futuro.
- Abra el cliente.archivo ovpn. Busque la línea remota my-server-1 1194 y especifique la dirección ip o el nombre de dominio del servidor vpn en ella:
remote <ip-address> 1194</ip-address>
Por ejemplo:
remote 83.166.241.155 1194
- Encuentre formas de obtener certificados. Especifique en él las rutas de acceso a la ca.crt, cliente1.llave, cliente 1.certificados crt copiados anteriormente, como en el ejemplo siguiente:
# See the server config file for more# description. It's best to use# a separate .crt/.key file pair# for each client. A single ca# file can be used for all clients.ca "C:\Program Files\OpenVPN\config\ca.crt"cert "C:\Program Files\OpenVPN\config\client1.crt"key "C:\Program Files\OpenVPN\config\client1.key"# This file should be kept secret
- Guarda el archivo. Configuración del cliente completa.
Verifique las reglas del Firewall de Windows
¡Atención! Para el correcto funcionamiento del servicio OpenVPN, es necesario que los puertos correspondientes se abran en el servidor (por defecto UDP 1194). Compruebe la regla pertinente en su firewall: Firewall de Windows o software antivirus de terceros.
Comprobar conexiones OpenVPN
Iniciar el servidor Open VPN, para ello, vaya al directorio C: \ Archivos de programa \ OpenVPN \ config y seleccione el archivo de configuración del servidor (tenemos servidor.ovpn – > haga clic con el botón derecho-> «Iniciar OpenVPN en este archivo de configuración»).
Inicie el cliente, para hacer esto, vaya al directorio C: \ Archivos de programa \ OpenVPN \ config y seleccione el archivo de configuración del cliente(tenemos cliente.ovpn – > haga clic con el botón derecho-> «Iniciar VPN abierta en este archivo de configuración»).
La pantalla muestra la ventana de estado de la conexión. En unos segundos se minimizará a la bandeja. El indicador verde del acceso directo VPN Abierto en el área de notificación indica que la conexión se ha realizado correctamente.
Compruebe la accesibilidad desde el dispositivo cliente del servidor OpenVPN utilizando su dirección de red privada interna:
- Pulse las teclas Win + R y escriba cmd en la ventana que aparece para abrir la línea de comandos.
- Ejecutar el comando ping a la dirección de nuestro servidor en una red privada virtual (10.8.0.1):
ping 10.8.0.1
Si la VPN está configurada correctamente, se iniciará el intercambio de paquetes con el servidor.
- Con la ayuda de la utilidad tracert, comprobaremos en qué ruta van los paquetes del cliente. En la consola, escriba el siguiente comando:
A partir del resultado de la utilidad, vemos que los paquetes se envían primero al servidor VPN y solo luego a la red externa.
Ahora tiene una red privada virtual lista para trabajar que le permite realizar conexiones de red seguras entre sus clientes y el servidor utilizando puntos de conexión a Internet abiertos y geográficamente distantes.