For the complete documentation index, see llms.txt. This page is also available as Markdown.

MFA basada en certificados en Fortigate

Objetivo

Requerir un certificado de usuario válido para los usuarios de SSL-VPN en un grupo AD específico.

Prerrequisitos

  • Ya ha desplegado certificados a sus usuarios a través de ADCS. Si no, siga Implementación de certificados de usuario dentro de Active Directory.

  • Ha configurado la autenticación LDAP basada en su Active Directory.

Si administra FortiGate a través de FortiManager, los pasos y las ubicaciones pueden diferir. Consulte a un ingeniero sobre el flujo de FortiManager.

1

Exporte el certificado de su CA raíz de ADCS (solo clave pública)

Exporte el público certificado de su CA raíz de ADCS desde cualquier estación de trabajo del dominio.

Encuéntrelo en Certificados - Usuario actual → Entidades de certificación raíz de confianza.

Exporte como un .cer / certificado Base-64 (sin clave privada).

2

Importe la CA raíz en FortiGate

Importe su certificado raíz de CA en Sistema → Certificados → Crear/Importar → Certificado CA.

Para mayor claridad, recomendamos cambiar el nombre del certificado importado (de forma predeterminada llamado Ca_Cert_X, donde X es un número) a un nombre más significativo. Para ello, abra la interfaz de línea de comandos de FortiGate e introduzca los siguientes comandos:

config vpn certificate ca
renombre Ca_Cert_X a ADCS_Cert

Entonces el certificado debería aparecer con su nuevo nombre.

3

Cree un par de usuario (PKI) que vincule el certificado a LDAP

Harás referencia a este par de usuario desde tu regla de autenticación SSL-VPN.

Reemplace:

  • ADCS_Cert con el nombre de su CA importada (el cambio de nombre anterior).

  • <LDAP_SERVER_NAME> con el nombre del objeto del servidor LDAP de FortiGate en Usuario y autenticación → Servidores LDAP.

config user peer
    edit pki01
        set ca ADCS_Cert
        set ldap-server <LDAP_SERVER_NAME>
        set ldap-mode principal-name
    next
end
config user peer
    edit pki01
        set ca ADCS_Cert
        set mfa-mode subject-identity
        set mfa-server <LDAP_SERVER_NAME>
    next
end
4

Cree un grupo de AD para usuarios de certificados

Para facilitar la implementación de MFA entre sus empleados, recomendamos crear un nuevo grupo de Active Directory. Esto le permitirá migrar gradualmente a los usuarios del grupo "VPN sin certificado" al grupo "VPN con certificado". Cree este nuevo grupo en su dominio de Active Directory utilizando la herramienta "Usuarios y equipos de Active Directory" . En el ejemplo siguiente, lo llamamos "NOMADE_CERT":

5

Cree el grupo de usuarios de FortiGate asignado al grupo de AD

Cree un nuevo Grupo de usuarios en Usuario y autenticación → Grupos de usuarios.

Establezca:

  • Servidor remoto = su objeto LDAP

  • Nombre del grupo = NOMADE_CERT (o el grupo de AD que haya elegido)

6

Asigne el grupo de usuarios a su portal SSL-VPN

En Configuración de SSL-VPN, asigne el nuevo grupo al portal que desee.

Abra de nuevo la CLI de FortiGate e introduzca el siguiente comando:

conf vpn ssl settings
conf authentication-rule
show

Entonces debería mostrarse la lista de asignaciones existentes, como en el siguiente ejemplo:

Ahora debe identificar la asignación recién creada. En este ejemplo, es el número 4, asociado al grupo NOMADE_CERT.

Introduzca los siguientes comandos (reemplace 4 con su ID de asignación):

edit 4
set client-cert enable
set user-peer pki01
end
show

Entonces debería ver la lista actualizada de asignaciones:

Los usuarios del dominio AD que pertenecen a NOMADE_CERT ahora deben presentar un certificado de usuario válido para conectarse.

7

Prueba desde FortiClient

En una estación de trabajo unida al dominio, actualice el perfil VPN de FortiClient:

Seleccione el certificado asociado a su usuario (aquí "stoik_test") en el "Certificado de cliente" campo:

Solución de problemas de autenticación

Los siguientes comandos le permitirán ver registros de depuración para LDAP y los procesos de autenticación en general (los comandos deben introducirse en la CLI de FortiGate y la sesión debe permanecer abierta):

diagnose debug enable
diagnose debug application fnbamd -1
diagnose debug application authd -1
diagnose debug application ldap -1

Si los comandos anteriores no ayudan a identificar el problema (información incorrecta en el certificado, servidor LDAP inaccesible, etc.), puede ser útil habilitar el registro de depuración de SSL VPN:

diagnose debug app sslvpn -1
diagnose vpn ssl debug-filter src-addr4 XXX.XXX.XXX.XXX

Para limitar la cantidad de registros mostrados, reemplace XXX.XXX.XXX.XXX arriba por la dirección IP de origen que inicia la conexión VPN.

Una vez finalizada la depuración, debe desactivar el modo de depuración:

Tenga en cuenta que este procedimiento puede ser algo complejo, ya que requiere estar conectado simultáneamente a FortiGate y poder iniciar FortiClient. No dude en contactar con nuestros expertos si es necesario.

¿Te fue útil?