Instale OpenVPN Server en Windows Server y use AD (LDAP) Hacer verificación de cuenta

◎ SO del servidor: Windows Server 2019
◎ OpenVPN: OpenVPN 2.4.9 (Comunidad)
◎ Componente de verificación AD: Auth4OpenVPNv2.0
OS Client OS: De Windows 10

 

Debido a que el equipo de hardware VPN de la compañía es viejo,Encuesta reciente de soluciones VPN,Quiero comenzar con soluciones de código abierto primero,Al principio, pensé en OpenVPN, que fue probado hace cinco años.,Pero después de descargar el archivo de imagen de VM del sitio web oficial y completar la compilación,Descubrí que esta versión solo abre dos conexiones de cliente gratuitas,Suscríbete para más。Pensé que comencé a cargar,No es de extrañar que el servidor y el cliente (OpenVPN Connect) La interfaz del software se ha vuelto tan hermosa,Solía ​​recordar cambiar la configuración a través del bloc de notas。

Entonces encontré SoftEther VPN de Japón,Después de pasar un tiempo investigando y construyendo,Pensé que este set debería funcionar,Inesperadamente, cuando estaba haciendo la prueba,,Encontró un error de conexión SQL en SoftEther VPN,Y los internautas han informado el problema durante dos años.,El funcionario aún no ha corregido,Así que tuve que renunciar a regañadientes。 Cómo configurar SoftEther VPN,referirse a【Notas】 Configuración del servidor SoftEther VPN

Más tarde, busqué información de autorización relacionada con OpenVPN,Solo encontré la versión de Comunidad,Después de instalar la descarga,La pantalla de configuración del archivo de texto familiar aparece de nuevo,哈。A continuación se muestra el objetivo y el método de configuración para esta compilación:

【Apunta】
◎ El servidor usa el sistema Windows。
◎ Use AD como método de verificación de cuenta。
◎ El lado del cliente usa un segmento de red independiente,Y obtenga IP automáticamente。
Side El lado del cliente solo fluirá VPN para tráfico de segmento de red específico,Ir en línea (Internet) no lo hará。
◎ El cliente puede conectarse a otros segmentos de red dentro de la empresa。

 

◎ Primero,A Descargas de la comunidad OpenVPN Descargue la última versión de la página。

 

◎ Luego refiérase a la comunidad Easy_Windows_Guide,Configuración completa del servidor y el cliente,La siguiente configuración de teclas de captura。


 

[Trabajo preliminar]

◎ Marque usted mismo cuando instale “EasyRSA 2 Guiones de gestión de certificados” elemento。

◎ Ejecute cmd como "administrador del sistema",Y ejecute los siguientes comandos en orden:

  cd "C:\Program Files\OpenVPN\easy-rsa"  init-config  notepad vars.bat  

 

◎ Modificar la información del certificado predeterminado,Archivo después de modificación。

establecer KEY_COUNTRY = US
establecer KEY_PROVINCE = CA
set KEY_CITY = SanFrancisco
establecer KEY_ORG = OpenVPN
establecer [email protected]

 

◎ Ejecute los siguientes comandos en orden:

  vars  clean-all  

 

【Crear certificado y clave】
◎ Ejecute los siguientes comandos:

  build-ca  

 

◎ Ingrese la información del certificado:

Nombre del país (2 código de letra) [NOS]:
Nombre del estado o provincia (nombre completo) [CA]:
Nombre de la localidad (p.ej, ciudad) [San Francisco]:
Nombre de la Organización (p.ej, empresa) [OpenVPN]:
Nombre Unidad Organizacional (p.ej, sección) []:
Nombre común (p.ej, su nombre o el nombre de host de su servidor) []:
Dirección de correo electrónico [[email protected]]:

 

◎ Ejecute los siguientes comandos en orden:

  build-key-server server  build-key client  # Guide 上是建議用 client 端的電腦名稱,然後為每一台電腦產生一份憑證,  # 但因為我主要是要用 AD 驗證,所以我這邊是只產生一份名為 client 的憑證,然後讓所有電腦一起使用。  build-dh  "C:\Program Files\OpenVPN\bin\openvpn.exe" --genkey --secret "C:\Program Files\OpenVPN\easy-rsa\keys\ta.key"  

 

[Establecer archivo de configuración del servidor]

◎ Ejecute los siguientes comandos:

  copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"  notepad "C:\Program Files\OpenVPN\easy-rsa\keys\server.ovpn"  

 

◎ Encuentra el siguiente texto。

ca ca.crt
cert server.crt
clave server.key

dh dh2048.pem

 

◎ Reemplazar con:

ese “C:\\Archivos de programa \ OpenVPN \ config \ ca.crt”
cert “C:\\Archivos de programa \ OpenVPN \ config \ server.crt”
llave “C:\\Archivos de programa \ OpenVPN \ config \ server.key”

es decir “C:\\Archivos de programa \ OpenVPN \ config \ dh2048.pem”

 

◎ Archivar y cerrar。

◎ Encuentra el siguiente texto,Y quite el punto y coma delante del comentario(;)。Como planeo hacer solo un cupón para que todos compartan,Esto puede hacer que diferentes clientes obtengan el mismo conjunto de IP,Así que activa esta configuración,Para que todos puedan obtener una IP diferente。

;duplicar-cn

 

【Establecer archivo de configuración del cliente】

◎ Ejecute los siguientes comandos:

  copy "C:\Program Files\OpenVPN\sample-config\client.ovpn" "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"  notepad "C:\Program Files\OpenVPN\easy-rsa\keys\client.ovpn"  

 

◎ Encuentra el siguiente texto。

ca ca.crt
cert server.crt
clave server.key

tls-auth ta.key 1

 

◎ Reemplazar con:

ese “C:\\Archivos de programa \ OpenVPN \ config \ ca.crt”
cert “C:\\Archivos de programa \ OpenVPN \ config \ client.crt”
llave “C:\\Archivos de programa \ OpenVPN \ config \ client.key”

tls-auth “C:\\Archivos de programa \ OpenVPN \ config \ ta.key” 1
# La guía no tiene esta sección,Esto es un error cuando ejecuto el cliente,Y modificado。

 

◎ Lo siguiente “mi-servidor-1” Modifíquelo a la dirección IP o FQDN real de OpenVPN。

remote my-server-1 1194

 

◎ Archivar y cerrar。

 

【Copiar certificado、Clave para el directorio correcto]

◎ Ejecute los siguientes comandos:

  robocopy "C:\Program Files\OpenVPN\easy-rsa\keys\" "C:\Program Files\OpenVPN\config\" ca.crt ta.key dh2048.pem server.crt server.key server.ovpn  

 

◎ en “C:\Archivos de programa OpenVPN easy-rsa keys ”,Copie los siguientes archivos:

ca.crt
ta.key
cliente.crt
cliente.key
cliente.ovpn

 

◎ publicado en la computadora del cliente “C:\Archivos de programa OpenVPN config ”
PS. El archivo de instalación del cliente es el mismo que el Servidor。

 

[Iniciar OpenVPN]

◎ Ejecute OpenVPN GUI como "administrador del sistema" en el servidor。Si no se ejecuta como "administrador del sistema", puede,Pero algunos registros pueden no tener permiso de escritura。También puede ir a "Servicio de Windows",El “OpenVPNService” Cambie el "Tipo de activación" a”automático”,Y haga clic derecho en "activar"。

◎ El lado del cliente ejecuta directamente la GUI de OpenVPN,Y haga clic derecho en el icono en la esquina inferior derecha y seleccione "Conectar"。El cliente también se puede instalar con una mejor interfaz, OpenVPN Connect,Y establecer el perfil (client.opvn) Arrastrar a la ventana。


 

Lo anterior es el contenido principal de enseñanza de Easy_Windows_Guide,Después de completar la configuración anterior,Puedes completar la conexión por certificado,Lo siguiente es ajustar la configuración al entorno que quiero:

◎ El cliente puede conectarse a otros segmentos de red dentro de la empresa。
◎ Use AD como método de verificación de cuenta。

 

[Permitir que el Cliente se conecte a otros segmentos de red dentro de la empresa]

Después de que se construya OpenVPN,El servidor predeterminado generará una tarjeta de red virtual,Su IP es 10.8.0.1,Y el cliente obtendrá 10.8.0.6,En este momento, el cliente va a hacer ping 10.8.0.1 Debe pasar。

Luego, necesitamos hacer ping a la tarjeta de red física del servidor (例 192.168.53.1) Lo descubriré,Además de agregar enrutamiento en este momento,tambiénActive la función "Conexión compartida a Internet"。Estoy atrapado aquí por mucho tiempo,Más tarde, finalmente fue en ViRb3 internautas "Cree un servidor Windows OpenVPN que represente el tráfico de Internet · GitHub"Este artículo encuentra la configuración clave" Conexión compartida a Internet "。

◎ Encuentra el ";ruta de empuje “192.168…"
◎ Según su formato,Agregue lo siguiente,Y archivo。

  push "route 192.168.53.0 255.255.255.0"  # 如果要讓 Client 連到企業內部的其他網段,  # 可以在這邊加入其他網段的資訊。  

 

◎ Ingrese la configuración de la tarjeta de interfaz,Encienda la tarjeta de red física (192.168.53.1 Éste) Función "Conexión compartida a Internet" (Comprobar”Permitir que otros usuarios de la red se conecten a través de la conexión a Internet de esta computadora”)。
PS. Encontré muchos artículos antes de saber cómo hacer esta acción,Atrapado aquí por mucho tiempo。

 

Después de activar la función "Conexión compartida a Internet",La IP de la tarjeta de red virtual OpenVPN se cambiará a 192.168.137.1,Entonces, si queremos usar el valor predeterminado de OpenVPN 10.8.0.1,Necesidad de modificar el código de la máquina.。
◎ Ejecute regedit,到下列路徑:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters

 

◎ Cambie el valor de ScopeAddress a 10.8.0.1。

◎ Reinicie el servidor OpenVPN,Y deje que el cliente se vuelva a conectar。

[Use AD como método de verificación de la cuenta]

  首先,Gracias j. Ortega. Escrito por VBScript,Hagamos que sea fácil para OpenVPN pasar AD para verificación,Gracias gracias de nuevo gracias。En "Autenticación de Active Directory para OpenVPN para implementaciones de Windows – amigo4life2"Esta página tiene instrucciones de configuración muy detalladas,Pero por la edad,Así que sigue en Windows 2008、2012 Versión futura,Aún quedan algunas acciones por hacer,El siguiente es el método de configuración después de terminar:

◎ Descargar Auth4OpenVPNv2.0.zip,Y descomprima el contenido para “C:/Archivos de programa / OpenVPN / Config”

 

◎ Modificar Auth4OpenVPN.ini,Ingrese información sobre AD,Los ejemplos son los siguientes:

  Server = "192.168.53.20"  Domain = "abc"  DN = "dc=abc,dc=com,dc=tw"  Group = "(Group)OpenVPN"  Logging = "On"  

 

Proxima accion,Con J. Ortega. Ligeramente diferente en la página,Esto es iceh Foro de la comunidad OpenVPN Correcciones por problemas de seguridad en la nueva versión de Windows Server,Gracias iceh internautas。

◎ Abrir Bloc de notas,Pegue el siguiente:

  set LOCALAPPDATA=C:\Users\%USERNAME%\AppData\Local  set CommonProgramFiles=C:\Program Files\Common Files  set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files  set CommonProgramW6432=C:\Program Files\Common Files  C:\Windows\System32\cscript.exe "C:\Program Files\OpenVPN\config\Auth4OpenVPN.vbs"  exit %errorlevel%  

◎ Guarde el archivo en “C:\Archivos de programa OpenVPN config”,archivo llamado “Auth4OpenVPN-64bitWrapper.cmd”。

◎ Agregue las siguientes dos líneas de instrucciones a server.ovpn:

  script-security 3  auth-user-pass-verify Auth4OpenVPN-64bitWrapper.cmd via-env  

◎ Agregue las siguientes dos líneas de instrucciones a client.ovpn en el lado del Cliente:

  auth-user-pass  auth-retry interact  

◎ Entonces,El cliente se está conectando,La ventana de contraseña de la cuenta aparecerá para iniciar sesión。

 

【Información suplementaria】

◎ Auth4OpenVPN proporciona funciones de prueba,Se recomienda utilizar el siguiente comando para probar la conexión a AD y no hay problema,Hagamos acciones de seguimiento。

auth4openvpn.vbs <user> <password>

◎ Auth4OpenVPN dejará el resultado de la verificación en el registro de la aplicación de Windows,Si se configura de acuerdo con el método original de la página web,puede aparecer “Auth4OpenVPN: -2147221164, Categoría no registrada” Error Base 訊息,En este momento, de acuerdo con los internautas iceh proporcionados “Auth4OpenVPN-64bitWrapper.cmd” Método de reparación,Puede resolver el problema de los parámetros ambientales.。

◎ Si desea que el cliente pueda acceder a Internet a través de la red corporativa (Internet),Simplemente encuentre la siguiente cadena en el archivo server.ovpn,Y agregue la nota anterior(;)Sólo quítalo。

;push "redirect-gateway def1 bypass-dhcp"

◎ OpenVPN Connect al importar el archivo client.ovpn,Verificará si el certificado y los archivos clave están en el mismo directorio que el archivo client.ovpn,Si no hay error。Después de completar la importación,Cuando se conecta más tarde,OpenVPN Connect seguirá la configuración de client.ovpn para leer el certificado y los archivos clave en la ruta del comando;OpenVPN GUI no tiene este problema。

◎ Si desea verificar OpenVPN y la cuenta nativa de Windows,Puedes referirte a lo compartido por smiley22 SAMAuth4OpenVPN elemento。

◎ Todavía no adopté esta solución,Porque el continente tiene filtrado para OpenVPN,Entonces habrá algunos problemas extraños durante el proceso de conexión.。

 

【參考連結】

Deja tu comentario

Por favor, tenga en cuenta: La moderación de comentarios está habilitada y puede retrasar su comentario. No hay necesidad de volver a enviar su comentario.