Solución de problemas de conexiones de AWS Client VPN con clientes basados en Linux
En las siguientes secciones, se incluye información sobre el registro y los problemas que pueden surgir al utilizar los clientes basados en Linux Asegúrese de que esté ejecutando la versión más reciente de estos clientes.
Temas
Registros de eventos del cliente proporcionado por AWS
El cliente proporcionado por AWS almacena los archivos de registro y los archivos de configuración en la siguiente ubicación del sistema:
/home/username/.config/AWSVPNClient/
El proceso daemon del cliente proporcionado por AWS almacena los archivos de registro en la siguiente ubicación del sistema:
/var/log/aws-vpn-client/
Por ejemplo, puede comprobar los siguientes archivos de registro para encontrar errores en los scripts de activación o desactivación del DNS que provoquen un error en la conexión:
/var/log/aws-vpn-client/configure-dns-up.log/var/log/aws-vpn-client/configure-dns-down.log
Las consultas de DNS van a un servidor de nombres predeterminado
Problema
En algunas circunstancias, después de establecer una conexión de VPN, las consultas de DNS seguirán dirigiéndose al servidor de nombres del sistema predeterminado, en lugar de hacerlo al servidor de nombres configurados para el punto de enlace de Client VPN.
Causa
El cliente interactúa con systemd-resolved, un servicio que está disponible en sistemas Linux, que sirve como pieza central de administración de DNS. Se utiliza para configurar servidores de DNS que se envían desde el punto de enlace de Client VPN. El problema se produce porque systemd-resolved no establece la máxima prioridad para los servidores de DNS que proporciona el punto de enlace de Client VPN. En su lugar, adjunta los servidores a la lista existente de servidores de DNS que se han configurado en el sistema local. En consecuencia, es posible que los servidores de DNS originales sigan teniendo la máxima prioridad y, por lo tanto, se utilicen para solucionar las consultas de DNS.
Solución
-
Agregue la siguiente directiva en la primera línea del archivo de configuración de OpenVPN para asegurarse de que todas las consultas de DNS se envían al túnel de VPN.
dhcp-option DOMAIN-ROUTE . -
Utilice el solucionador stub que proporciona systemd-resolved. Para hacer esto, haga un enlace simbólico de
/etc/resolv.confa/run/systemd/resolve/stub-resolv.confmediante la ejecución del siguiente comando en el sistema.sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf -
(Opcional) Si no desea que systemd-resolved realice las consultas de DNS por proxy y, en su lugar, desea que las consultas se envíen directamente a los servidores de nombres de DNS reales, haga un enlace simbólico de
/etc/resolv.confa/run/systemd/resolve/resolv.conf.sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.confEs posible que desee realizar este procedimiento para omitir la configuración systemd-resolved, como, por ejemplo, para el almacenamiento en caché de respuestas de DNS, la configuración de DNS por interfaz, la aplicación de DNSSec, etc. Esta opción es especialmente útil en el caso de que se necesite anular un registro de DNS público con un registro privado cuando está conectado a una VPN. Por ejemplo, puede disponer de un solucionador de DNS privado en su VPC privada con un registro para www.ejemplo.com, que se soluciona con una IP privada. Esta opción podría utilizarse para anular el registro público de www.example.com, que se soluciona con una IP pública.
OpenVPN (línea de comandos)
Problema
La conexión no funciona correctamente porque la resolución de DNS no funciona.
Causa
El servidor DNS no está configurado en el punto de enlace de Client VPN o el software cliente no lo respeta.
Solución
Siga los pasos siguientes para comprobar que el servidor DNS esté configurado y funcione correctamente.
-
Asegúrese de que haya una entrada de servidor DNS en los registros. En el ejemplo siguiente, el servidor DNS
192.168.0.2(configurado en el punto de enlace de Client VPN) se devuelve en la última línea.Mon Apr 15 21:26:55 2019 us=274574 SENT CONTROL [server]: 'PUSH_REQUEST' (status=1) WRRMon Apr 15 21:26:55 2019 us=276082 PUSH: Received control message: 'PUSH_REPLY,redirect-gateway def1 bypass-dhcp,dhcp-option DNS 192.168.0.2,route-gateway 10.0.0.97,topology subnet,ping 1,ping-restart 20,auth-token,ifconfig 10.0.0.98 255.255.255.224,peer-id 0Si no se ha especificado ningún servidor DNS, solicite al administrador de Client VPN que modifique el punto de enlace de Client VPN y no olvide especificar un servidor DNS (por ejemplo, el servidor DNS de la VPC) para el punto de enlace de Client VPN. Para obtener más información, consulte Puntos de enlace de Client VPN en la Guía del administrador de AWS Client VPN.
-
Asegúrese de que el paquete
resolvconfesté instalado; para ello, ejecute el siguiente comando.sudo apt list resolvconfLa salida debe devolver lo siguiente.
Listing... Done resolvconf/bionic-updates,now 1.79ubuntu10.18.04.3 all [installed]Si no está instalado, instálelo con el siguiente comando.
sudo apt install resolvconf -
Abra el archivo de configuración de Client VPN (el archivo.ovpn) en un editor de texto y agregue las siguientes líneas.
script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-confCompruebe los registros para comprobar que se haya invocado al script
resolvconf. Los registros deben contener una línea similar a la siguiente.Mon Apr 15 21:33:52 2019 us=795388 /etc/openvpn/update-resolv-conf tun0 1500 1552 10.0.0.98 255.255.255.224 init dhcp-option DNS 192.168.0.2
OpenVPN a través de Network Manager (GUI)
Problema
Cuando se utiliza el cliente OpenVPN de Network Manager, la conexión falla con el siguiente error.
Apr 15 17:11:07 OpenVPN 2.4.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Sep 5 2018
Apr 15 17:11:07 library versions: OpenSSL 1.1.0g 2 Nov 2017, LZO 2.08
Apr 15 17:11:07 RESOLVE: Cannot resolve host address: cvpn-endpoint-1234.prod.clientvpn.us-east-1.amazonaws.com:443 (Name or service not known)
Apr 15 17:11:07 RESOLVE: Cannot resolve host
Apr 15 17:11:07 Could not determine IPv4/IPv6 protocol
Causa
El indicador remote-random-hostname no se respeta y el cliente no puede establecer conexión mediante el paquete network-manager-gnome.
Solución
Consulte la solución del problema No se puede resolver el nombre de DNS del punto de enlace de Client VPN en la Guía del administrador de AWS Client VPN.