Los certificados están instalados, las claves privadas están presentes y el túnel sigue fallando la autenticación. Una máquina con varios certificados puede entregar a la VPN un candidato que nadie pretendía, y el cliente no tiene forma de saber cuál aceptaría la puerta de enlace. Borrar los demás es una política de selección con consecuencias para cada servicio del equipo. Reduzca en cambio el conjunto admisible y luego confirme qué certificado se ofreció realmente.

Varios certificados, uno ofrecido

Los perfiles VPN nativos de Windows con autenticación de certificado de máquina exponen dos filtros que restringen los candidatos: un filtro de emisor y un filtro de uso extendido de la clave. Reducen el conjunto del que el cliente puede elegir. No reparan un certificado inadecuado y no garantizan que el servidor acepte lo que quede. Esa frontera merece constar en el registro de cambios, porque el siguiente lector asumirá que el filtro decidió más de lo que decidió.

El fallo que atienden es estrecho y concreto. Un certificado válido de la autoridad equivocada, o uno emitido para un propósito que la puerta de enlace no acepta, se elige antes que el previsto, lo que produce un fallo de autenticación junto a un almacén sano. Dos filtros lo convierten en un conjunto lo bastante pequeño para razonar sobre él, y el resto de esta página los aplica en orden.

Inspeccione el almacén antes de editar el perfil

Enumere los candidatos y sus propiedades en el almacén que el perfil usa realmente. Nada aquí exporta una clave privada, y ningún certificado tiene que salir del equipo:

Get-VpnConnection -Name 'Office' | Select-Object Name, TunnelType, AuthenticationMethod
Get-ChildItem Cert:\LocalMachine\My | Select-Object Subject, Issuer, Thumbprint, NotAfter, HasPrivateKey, EnhancedKeyUsageList

Lea la salida para las propiedades de las que depende la decisión: una clave privada utilizable, una ventana de validez aceptable, el emisor previsto y los propósitos de la extensión. Un certificado puede estar presente, correctamente inscrito e inútil para esta conexión al mismo tiempo. La columna de la huella es con la que comparará más adelante, así que conserve la salida.

Confirme el perfil y su ámbito antes de editar, porque un certificado de máquina en LocalMachine, un certificado EAP-TLS de usuario y un almacén de claves privadas propio de una aplicación son tres contextos distintos. Use el ámbito de todos los usuarios y un contexto administrativo cuando el perfil administrado viva allí. Crear un segundo perfil con un nombre parecido oculta qué configuración usa realmente la conexión.

El filtro de emisor quiere un objeto

El parámetro de emisor espera un objeto de certificado, no un nombre para mostrar ni una cadena de huella desnuda. Proporcione el certificado de la autoridad aprobada desde una ruta que haya revisado, en el almacén al que pertenece:

$issuerPath = Read-Host 'Certificate-provider path for the approved issuer CA'
$issuer = Get-Item -LiteralPath $issuerPath
Set-VpnConnection -Name 'Office' -MachineCertificateIssuerFilter $issuer

No sustituya el certificado hoja del propio cliente, otra autoridad con un sujeto parecido ni una raíz recién generada solo porque el tipo del parámetro lo acepte. Dos autoridades pueden compartir una cadena de sujeto, y por eso el objeto importa más que el texto. La referencia de cmdlets de Microsoft documenta ambos tipos de entrada, y vale la pena leerla antes de la primera edición y no después del intento fallido.

El filtro de uso quiere una cadena OID

El parámetro de uso extendido de la clave acepta cadenas OID, y el propósito de autenticación de cliente es 1.3.6.1.5.5.7.3.2. Aplicarlo restringe los candidatos a los certificados que llevan ese propósito, que es lo que quiere un despliegue de autenticación de cliente:

Set-VpnConnection -Name 'Office' -MachineCertificateEKUFilter '1.3.6.1.5.5.7.3.2'

El valor es una matriz, así que un despliegue que necesita varios propósitos los pasa como lista. Lo que el filtro no puede hacer es añadir un propósito a un certificado: es una expresión de selección evaluada contra extensiones firmadas, y ningún filtro las reescribe, así que un certificado al que le falta el propósito tiene que volver a pasar por el registro.

Mantenga la configuración EAP de certificados de usuario separada del filtrado de certificados de máquina, porque viven en lugares distintos y un cambio en uno rara vez explica un fallo en el otro. Compruebe también si el dominio o la administración de dispositivos es dueño del perfil, porque una edición local puede ser sustituida en el siguiente refresco de directivas sin que nadie toque el equipo.

Demuestre qué certificado ofreció el cliente

Establezca una conexión nueva y lea las evidencias de autenticación de cliente y servidor para la identidad que pretendía. Cuando más de un certificado satisface los filtros, el resultado es un conjunto más pequeño y no una hoja fijada, así que el siguiente intento puede elegir otro miembro. Anote la huella que aparece en esas evidencias y compárela con la que registró del almacén.

Un comando correcto no es una autenticación correcta. El resultado que merece registrarse es el certificado previsto autenticándose bajo la directiva administrada mientras cada certificado no relacionado sigue disponible para los servicios que dependen de él. Si el fallo sobrevive a ambos filtros, el siguiente lugar donde mirar son los candidatos restantes y no el perfil entero.

Artículos relacionados