Windows fournit un client IKEv2 que PowerShell pilote de bout en bout, donc un tunnel fonctionnel n'a besoin ni d'interface graphique ni de logiciel tiers. Presque tous les échecs viennent de trois endroits : où le certificat a atterri, comment les préfixes de route ont été écrits et ce que la méthode EAP choisie attend. Traitez-les dans cet ordre, car chacun est vérifiable avant que le suivant ne commence et une erreur plus tardive masquera une erreur antérieure.

Les tunnels à certificat machine existent pour démarrer avant que quiconque se connecte, c'est pourquoi l'identité doit normalement résider dans le magasin de l'ordinateur plutôt que dans celui d'un utilisateur.

D'abord le certificat, ensuite le tunnel

Deux importations comptent. L'identité du client va dans Cert:\LocalMachine\My via Import-PfxCertificate, et l'autorité de certification émettrice va dans Cert:\LocalMachine\Root via Import-Certificate. Un certificat feuille seul ne prouve aucune chaîne, donc sauter la seconde importation laisse la vérification sans rien sur quoi s'appuyer. Au-delà de la présence, la clé privée doit être attachée et le compte d'ordinateur doit être autorisé à la lire. Get-ChildItem Cert:\LocalMachine\My liste ce qui est arrivé ; comparez les empreintes plutôt que les sujets, car des sujets quasi identiques sont courants.

Vérifiez l'usage étendu de la clé avant de déployer. L'authentification du client est l'exigence habituelle pour une identité machine IKEv2, et l'autre côté doit faire confiance à l'autorité qui l'a signée. Une identité dans le magasin d'un utilisateur n'existe pas pour une connexion en contexte ordinateur.

Créez le profil et ses routes

Add-VpnConnection -Name "Office IKEv2" -ServerAddress vpn.example.com -TunnelType Ikev2 -EncryptionLevel Required -AuthenticationMethod MachineCertificate -AllUserConnection écrit le profil. Le commutateur -AllUserConnection le publie dans le carnet d'adresses global, ce qui convient à une machine partagée ou gérée comme service ; omettez-le pour un utilisateur unique. Quelle que soit l'adresse que vous passez, elle doit correspondre au nom DNS du certificat du serveur, sinon l'échec apparaît une fois le tunnel déjà monté. Les préfixes sont ensuite ajoutés un par un avec Add-VpnConnectionRoute, et seulement ceux dont la conception a réellement besoin.

IPv6 a une bizarrerie : Windows refuse ::/0 comme route VPN, donc ::/1 et 8000::/1 couvrent ensemble le même espace d'adresses. Router un préfixe n'accorde rien non plus sur le pare-feu distant, donc la liste des préfixes et la politique du pare-feu restent des documents distincts.

Les identifiants appartiennent à la méthode d'authentification

Un profil à certificat machine n'a besoin d'aucun secret utilisateur, alors qu'un profil EAP-MSCHAPv2 en a besoin. Pour le second cas, le module VPNCredentialsHelper fournit Set-VpnConnectionUsernamePassword, et il veut du texte brut : $cred.Password est un SecureString, donc déballez-le d'abord avec GetNetworkCredential().Password. Installez le module partout où la commande s'exécute, pas seulement sur le poste où il a été rédigé. EAP-TLS ou une méthode personnalisée n'utilisent pas du tout cette cmdlet ; ils prennent à la place un XML de configuration EAP.

rasdial "Office IKEv2" monte la connexion depuis un shell, ce qui est le moyen le plus rapide de voir le résultat au premier plan plutôt que dans un journal d'événements.

Ce qu'un tunnel connecté ne prouve pas

L'état connecté couvre l'échange IKE et l'étape d'authentification, et rien au-delà. Le comportement DNS, le chemin vers un hôte privé et le pare-feu distant restent tous non prouvés. Travaillez vers l'extérieur : l'adaptateur de tunnel, puis une recherche de route pour une adresse privée, puis un service que vous êtes autorisé à utiliser. La première observation qui échoue désigne la couche à examiner.

Lorsque vous modifiez un profil, supprimez le précédent avec Remove-VpnConnection -Name "Office IKEv2" -Force avant de le recréer ; sinon des paramètres et des routes obsolètes subsistent après l'édition. S'il ne se connecte toujours pas, comparez l'empreinte consignée dans le profil à celle présente dans le magasin, car Windows peut conserver une référence à une identité depuis remplacée sous un sujet inchangé.

Gardez l'empreinte, la méthode EAP et la liste des routes à côté du profil. Ensemble, elles expliquent l'essentiel de ce qui échoue ensuite.

Articles similaires