El síntoma se malinterpreta con facilidad: vpnc arranca, pide la contraseña del grupo y luego se queda en un paso de negociación hasta que informa de que no hay respuesta del destino. Nada en la salida menciona el producto de la pasarela, y la cuenta funciona desde el navegador, así que la conclusión obvia es una contraseña incorrecta o un puerto bloqueado. En la mayoría de estos casos la pasarela no es en absoluto un par de IPsec, así que el intercambio nunca llega a probar las credenciales. Merece la pena probar ese patrón antes de cambiar cualquier otra cosa en el perfil.

Identifique el producto antes de editar otro campo del perfil.

El fallo parece credenciales incorrectas

vpnc empieza enviando IKE a UDP 500 y, si se ofrece atravesar NAT, a UDP 4500. Una pasarela que termina SSL en lugar de IPsec no responde a ninguna de las dos, así que el cliente reintenta y acaba rindiéndose con un error genérico. Si la misma cuenta funciona a través de un portal de navegador que carga una pequeña aplicación auxiliar, es una señal fuerte de que el túnel se basa en SSL y de que el cliente hace la pregunta equivocada.

Un intento fallido aquí no dice nada sobre la cuenta de usuario, porque nunca se presentó ninguna credencial a la pasarela.

Compruebe qué protocolo ofrece la pasarela

Dos minutos de sondeo separan un par de IPsec de un portal SSL. Ejecútelos desde la misma red que usará el cliente y lea qué puertos responden, no cuáles aparecen en un documento. Guarde el resultado, porque esos mismos puertos deciden qué cliente debería soportar el propietario de la pasarela. Sondee desde la red del cliente y no desde un equipo junto a la pasarela.

nc -zvu gw.example.com 500
nc -zvu gw.example.com 4500
nc -zvt gw.example.com 443
curl -sI https://gw.example.com/ | head -5
openssl s_client -connect gw.example.com:443 -servername gw.example.com </dev/null | head -20

Un 443 abierto con una redirección a una página de inicio de sesión y silencio en 500 y 4500 apunta a una SSL VPN. Los 500 y 4500 abiertos con un certificado servido en 443 sugieren una pasarela IPsec que también ejecuta un frontend web, que es el caso para el que se construyó vpnc.

El SSL Network Extender de Check Point y el cliente Aventail de Nortel están ambos en la segunda categoría, y ninguno acepta un secreto de grupo de IKEv1.

Qué puede y qué no puede expresar el perfil de vpnc

Bajo el capó, vpnc ejecuta IKEv1 contra una clave precompartida de grupo y luego envía las credenciales del usuario individual por XAuth. Todo en su archivo de configuración pertenece a ese intercambio: pasarela, nombre del grupo, secreto del grupo, nombre de usuario y contraseña de usuario. Esos campos describen un solo protocolo, y ninguna combinación de ellos puede hacer que el cliente hable otro.

Por eso ampliar la lista de cifrados o desactivar las comprobaciones de certificados nunca corrige esta clase de fallo. Esos cambios debilitan una negociación a la que la pasarela no está escuchando.

Elegir el cliente que encaja con la pasarela

Para una pasarela Check Point, use el paquete SNX compilado para esa versión de la pasarela, que el proveedor publica junto con su documentación de acceso remoto. Las compilaciones SNX antiguas fallan a menudo en las distribuciones actuales porque esperan bibliotecas de 32-bit que ya no están instaladas, y parchear un paquete abandonado suele ser peor que ejecutar el cliente compatible en una plataforma compatible.

Los clientes Aventail perdieron el soporte hace mucho tiempo. Donde una pasarela así sigue en servicio, las opciones realistas son el portal de navegador si la organización lo habilita, o el cliente compatible del proveedor en un sistema operativo compatible.

Pregunte al propietario de la pasarela por el producto y la versión, por el cliente que soportan en Linux y por si existe algún perfil IPsec. Si lo hay, solicite el identificador de grupo y el secreto de grupo como elementos separados, porque no son la contraseña del usuario y un par intercambiado es la otra causa habitual de un túnel fallido. Cuando una conexión por fin funciona, anote qué protocolo se negoció para que la siguiente persona parta de un hecho en lugar de repetir la misma suposición.

Artículos relacionados