Bootstrap ou GPO : deux chemins pour un profil VPN Windows
Un profil distribué par GPO ne peut pas être le seul moyen d’atteindre le partage qui le distribue. Séparez la première installation de la mise à jour courante et versionnez les deux ensemble.
Poussez un profil VPN depuis un partage de domaine et tout fonctionne, jusqu’au portable qui ne peut pas joindre le domaine. À ce moment-là, la livraison dépend de la connexion même que le profil est censé créer. La personne qui tient ce portable se trouve quelque part que le support ne voit pas. Traitez la première installation et la mise à jour courante comme deux chemins distincts au sein d’un même paquet, car les deux échouent de façons qui n’ont rien en commun.
La première installation est un problème différent
Deux événements comptent, et un seul se produit pendant que le réseau coopère. Le tableau les sépare selon ce qui est disponible, ce qui déclenche le travail et la manière dont cela échoue habituellement.
| First install | Routine update | |
|---|---|---|
| Network reachable | Something other than the VPN being installed | The domain or a management channel |
| Trigger | Enrollment, imaging, or a prepared package | A policy refresh or a management push |
| Usual failure | No route to the package at all | Duplicate profiles, or a change that silently does nothing |
Un artefact revu peut servir les deux chemins ; l’hypothèse sur la connectivité, elle, ne peut pas être partagée. Un script de démarrage masque cette hypothèse tant qu’il s’exécute sur un poste du réseau d’entreprise, et la révèle sur le terrain. Le script n’est pas défectueux, on lui demande simplement de s’exécuter là où personne ne l’a conçu pour fonctionner.
Ce que le paquet doit contenir
Décidez cinq choses avant de créer le paquet : quel mécanisme de profil Windows est pris en charge, si la portée est par utilisateur ou par appareil, quels certificats ou composants client sont des prérequis, ce que dit la définition du profil et quelle action l’applique. ProfileXML est la manière prise en charge d’exprimer les paramètres VPN, fournie via le CSP VPNv2, et le guide des options de profil de Microsoft répertorie ce qu’il peut contenir. Tout ce qui sort de cette liste est une décision prise à la volée.
Les paramètres d’un script auxiliaire appartiennent à ce script. Des noms comme xmlFilePath ou AllUserConnection sont les choix d’un auteur et non une norme que tout installateur respecte ; les copier dans un autre script donne une commande qui semble correcte et ne fait rien.
Gardez le script et la définition sous une même version, et auditez leur provenance ainsi que leurs permissions. Un script de démarrage privilégié qui se trouve être lisible depuis SYSVOL n’a toujours pas été revu, et une distribution par stratégie n’est pas une revue.
Obtenir la première connexion
La première installation se fait tant que l’appareil reste joignable autrement : un réseau approuvé, un canal de gestion existant ou un workflow d’enrôlement prévu pour cela. Les certificats et les prérequis de confiance de la méthode d’authentification choisie appartiennent au même paquet, car rien ne peut être récupéré à travers un tunnel qui n’existe pas encore. Demandez lequel de ces trois canaux est réel pour cet utilisateur avant que quiconque promette une date. Un canal qui n’existe que sur le papier devient un appel depuis le terrain.
Écrivez ce que le technicien ou l’utilisateur fait réellement à ce moment-là. Si la réponse est que l’informatique se connecte à distance pour aider, alors le chemin de première installation dépend discrètement d’un second outil d’accès distant que quelqu’un doit aussi fournir et maintenir.
Les mises à jour exigent un état connu
Une fois la machine sur le domaine, le processus ordinaire de domaine ou de gestion des appareils peut prendre le relais. C’est sur la portée que les erreurs s’insinuent, car un script de démarrage s’exécute dans le contexte machine, tandis qu’une action d’ouverture de session utilisateur et une action de gestion d’appareil peuvent différer tant par la portée que par les permissions.
Une entrée de connexion tous utilisateurs n’est pas un tunnel d’appareil pré-ouverture de session, quoi qu’en suggèrent les noms. Les tunnels d’appareil ont leurs propres exigences de plateforme, de protocole et d’identifiants, et lire ces exigences est le seul moyen de savoir si un tunnel pré-ouverture de session est possible ici. Un tunnel utilisateur qui démarre à la connexion offre une garantie différente.
Rendez le chemin de mise à jour répétable : trouver le profil déjà géré, conserver les préférences utilisateur voulues, appliquer une définition compatible et rapporter un résultat clair. Créer un profil neuf à chaque actualisation de stratégie, c’est ainsi qu’une machine finit avec cinq entrées et un utilisateur qui choisit la mauvaise.
La trace qui le rend maintenable
Trois réponses ont leur place dans la transmission : comment un appareil nouvellement émis obtient sa première connexion, qui est autorisé à modifier le paquet et comment un administrateur sort d’un changement incompatible. Une fois ces points écrits, le déploiement ne dépend plus de quelqu’un qui dispose déjà de l’accès à provisionner.
Rangez cette trace à côté de la version du paquet et mettez à jour les deux dans le même changement. Sinon, la personne suivante reconstruit le chemin de bootstrap à partir d’un ticket clos il y a un an.