VPN IPSec avec Microsoft NPS et MFA - Je perd la tête

Je configure un VPN d’accès à distance Fortigate (IPSec) utilisant Microsoft Network Policy Server (NPS RADIUS) et MFA.

Le VPN est correctement configuré et Forticlient (gratuit) se connecte sans problème en utilisant les comptes d’utilisateur locaux de Fortigate.

NPS et RADIUS semblent être configurés correctement. Un test de connexion utilisateur depuis l’interface GUI de Fortigate ou avec la CLI diag test authserv radius "FG RADIUS Server" pap [email protected] mYpAsSwOrD réussit. Il réussit avec MFA activé et désactivé. Parfait.

Mais Forticlient (gratuit) utilisant les identifiants NPS refuse de se connecter ! Il indique parfois “Wrong Credentials” (mauvaises identifiants), mais la plupart du temps il échoue silencieusement et se ferme.

Le débogage sur Fortigate avec diagnose debug application fnbamd 255 montre

fnbamd_auth_handle_radius_result-->Result for radius svr 'FG RADIUS Server' 192.168.1.99(1) is 0

ce qui indique une authentification réussie même si le FortiClient échoue.

Toute aide est grandement appréciée.

Édition : Il s’avère que le Fortigate n’envoyait pas le NAS-IP, mais uniquement lorsqu’il authentifiait depuis le FortiClient. Il envoyait le NAS-IP lors de l’authentification depuis la CLI de Fortigate. La solution consistait à activer “Include in every user group” dans la configuration utilisateur RADIUS.

config user radius
    edit "FG RADIUS Server"
        set server "192.168.1.99"
        set secret shhhhhhhhhhh
        set timeout 60
        set all-usergroup enable
        set nas-ip 192.168.1.1
        set auth-type pap
    next
end

Cela ressemble à l’ip par défaut pour l’accès admin quand vous démarrez un nouveau Fortigate.
Est-ce cette ip configurée comme votre radius ou essayez-vous de vous y connecter avec ?
En CLI, vous pouvez définir une interface source et une ip source pour le trafic radius. Peut-être que le problème vient de là.
Par défaut, c’est réglé en automatique et Fortigate utilise l’interface avec l’ip configurée comme source.

Je ne suis pas sûr si cela pourrait être cela, mais avez-vous augmenté le délai d’attente d’authentification sur le FortiGate ? À environ 30 secondes.

Vous l’avez déjà résolu, mais voici un conseil non sollicité :

set all-usergroup enable

Supprimez cela, et ne l’utilisez plus jamais. Cette option fait que ce serveur RADIUS appartient à TOUS les groupes configurés sur le FortiGate, même ceux qui ne sont pas RADIUS. Personne n’en a besoin, jamais. (c’est juste une option de débogage étrange, principalement).

Je commencerais par regarder dans le journal d’événements du serveur NPS.

Registre d’événements → Vues personnalisées → Rôles du serveur → Politiques de réseau et services d’accès

S’il n’y a pas de journaux générés au moment de la tentative de connexion, il pourrait y avoir un problème de communication RADIUS entre Fortigate et NPS. Vous pouvez configurer Wireshark sur le serveur NPS et capturer le trafic du Fortigate pour vérifier si vous recevez les messages radius.

Quelle méthode MFA utilisez-vous ? N’oubliez pas que toutes les méthodes ne sont pas supportées par NPS. Authenticator et code de token le sont.

De plus, savez-vous si MFA fonctionne correctement sur ce serveur NPS avec d’autres applications ?

L’adresse IP est la bonne IP du serveur NPS. De plus, il n’y a pas d’IP conflictuelle sur le Fortigate.

Fortigate envoie la bonne IP source. set nas "x.x.x.x" est configuré sous la configuration du serveur FG RADIUS.

NPS semble authentifier avec succès.

Alors, comment puis-je résoudre mon problème initial sans ça ?