Acceso https y ssh a OpenVPN desde Windows

Acceso https y ssh a OpenVPN desde Windows

Recientemente instalé OpenVPN en un servidor web CentOS 7 remoto. Puedo conectarme a él desde un devbox local de CentOS 7 escribiendo openvpn --config /path/to/client.ovpn. Una vez realizada la conexión, puedo acceder sshal servidor a través de la VPN escribiendo y puedo ver las aplicaciones web alojadas en Apache en el servidor remoto a través de la VPN escribiendo en un navegador web. ssh [email protected]https : / / 10.8.0.1Entonces, ¿cómo puedo mis usuarios finales no técnicos realizar las mismas conexiones https desde Windows?

Descargué e instalé elCliente SecurePoint OpenVPN para Windows. Luego pude crear una configuración para el servidor, incluidos enlaces a los archivos .crt y .key y definiciones de otros parámetros que se definieron en el client.ovpnarchivo en Linux. Luego, el cliente SecurePoint me obligó a usar un nombre de usuario y una contraseña para una cuenta del sistema operativo en el servidor remoto (quizás para mejor), pero no me permite conectarme a las aplicaciones web que se ejecutan en el servidor. Específicamente, escribir https : / / 10.8.0.1en un navegador web da como resultado "Esta página no se puede mostrar", aunque mi devbox de Linux permite que el contenido se entregue desde el servidor a través de VPN al cliente como se describe en el párrafo anterior. ¿Qué estoy haciendo mal? ¿Y cómo puedo hacer que esto funcione?

EDITAR

Según el consejo de @garethTheRed, escribí sudo firewall-cmd --list-all --zone=internaly obtuve los siguientes resultados:

internal (active)
  interfaces: tun0
  sources:
  services: dhcpv6-client https ipp-client mdns samba-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:
        rule family="ipv4" source NOT address="10.8.1.1" service name="ssh" reject  

Luego hice clic en "conectar" en la GUI de SecurePoint y, después de que dijera que se había establecido la conexión con el servidor, abrí cmd.exe, escribí ping 10.8.0.1y obtuve los siguientes resultados:

Pinging 10.8.0.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.

Ping statistics for 10.8.0.1:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

Al desmarcar la opción usuario/autenticación se eliminó el requisito de inicio de sesión de nombre de usuario/contraseña.

Tenga en cuenta que, cuando SecurePoint está conectado, todos los demás accesos a Internet a través del navegador parecen bloqueados porque se rechazan todas las solicitudes de páginas. Además, la VPN aparece en la lista de redes wifi de Windows como "Red no identificada" sin "acceso a Internet". Cuando me desconecto de la VPN mediante SecurePoint, la "Red no identificada" desaparece. Puedes ver cómo se ve cuando la conexión VPN está activahaciendo clic en este enlace

¿Qué más puedo probar?

Respuesta1

Confirme que su firewall en el servidor CentOS ( internalzona si es donde tun0se encuentra el dispositivo) esté httpsdisponible como servicio.

Debería poder hacer ping al servidor 10.8.0.1desde la máquina con Windows. Si esto funciona, entonces su VPN está funcionando y probablemente sea el firewall del servidor CentOS el que lo está bloqueando.

Si el ping no funciona, entonces tendrá problemas subyacentes más profundos que resolver antes de examinar sus httpspáginas.

En el caso de este último, publique el resultado de ejecución ìpconfig /ally route printen la máquina con Windows.

Cliente oficial OpenVPN

Como experimento, también puede instalarlo openvpnen la máquina con Windows y ejecutarlo de manera similar a como lo hizo en el cliente CentOS usando archivos de configuración similares. Puede dar una pista de lo que está sucediendo:

Descargue el cliente OpenVPN para Windows desdeaquí, luego instálelo. Hacia el final de la instalación, debería ver una casilla de verificación que ofrece iniciar el cliente. Asegúrese de que el cliente NO esté iniciado.

Copie su *.ovpnarchivo de la máquina CentOS (la que funcionó anteriormente) a la máquina con Windows. Si está transfiriendo el archivo, puede encontrarse con el problema de los terminadores de línea Unix/DOS. El dos2unixpaquete tiene un conversor llamado unix2dosque convierte los archivos al formato DOS por usted.

Abra notepadcomo administrador (haga clic derecho y elija "Ejecutar como administrador") y edite el *.ovpnarchivo cambiando las rutas a la clave y dos certificados, recordando usar dos barras invertidas en las rutas (por ejemplo C:\\Users\\Bloggs\\key.pem, ). Guarde este archivo en C:\Program Files\OpenVPN\config.

Inicie el cliente OpenVPN desde el menú Inicio haciendo clic derecho sobre él y eligiendo "Ejecutar como administrador" (esto sólo es necesario la primera vez que lo ejecuta). Si lo anterior ha funcionado, debería poder hacer clic derecho en el icono de la barra de tareas y conectarse. Si no hay ninguna opción de conexión, verifique lo anterior.

Después de uno o tres segundos, aparecerá una ventana emergente que le informará que se ha conectado. Prueba tu httpspágina web.

Configuración básica compatible con Windows

Como prueba, haga una copia de seguridad de la configuración actual de su servidor e intente lo siguiente:

port 1194
proto udp
dev tun
ca /etc/pki/openvpn/cacerts/CA.crt
cert /etc/pki/openvpn/public/OpenVPN_Server.crt
key /etc/pki/openvpn/private/OpenVPN_Server.pem  # This file should be kept secret
dh /etc/pki/openvpn/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3

Funciona en mi servidor con clientes Linux y Windows (tanto OpenVPN como SecurePoint). No proporcionará la funcionalidad que necesita para su servidor, pero puede ayudarle a encontrar dónde está el problema. Por supuesto, es posible que deba ajustar las rutas de los archivos.

Como referencia, aquí está el *.ovpnarchivo que utilicé:

client
dev tun
proto udp
remote <IP or FQDN of server> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
verb 3
ca C:\\Users\\gareth\\ca.crt
cert C:\\Users\\gareth\\client.pem
key C:\\Users\\gareth\\key.crt

Para el cliente SecurePoint, dejé todo por defecto excepto la Auth user/passcasilla de verificación, que desmarqué y (por supuesto) la clave y los certificados.

información relacionada