Les clients connectés via un réseau privé virtuel (VPN) ne renouvellent pas automatiquement leurs certificats

Supposons le scénario suivant :

  • Les ordinateurs clients obtiennent automatiquement des certificats d'une autorité de certification intégrée à Active Directory (Enterprise Certification Authority).
  • Les certificats expirés sont automatiquement renouvelés lorsque les clients se trouvent sur le réseau interne.
  • Toutefois, les certificats expirés ne sont pas renouvelés automatiquement lorsque les clients sont connectés via un réseau privé virtuel (VPN).
  • Cela peut avoir pour conséquence que les clients ne renouvellent pas leur certificat à temps avant son expiration et ne peuvent plus se connecter au VPN.

Arrière-plan

Une description détaillée du fonctionnement de la demande de certificat manuelle et automatique auprès d'une autorité de certification intégrée à Active Directory est disponible dans l'article „Bases de la demande manuelle et automatique de certificats via Lightweight Directory Access Protocol (LDAP) et Remote Procedure Call / Distributed Common Object Model (RPC/DCOM)„ .

Dans la configuration standard, tous les membres du domaine répliquent automatiquement l'objet Public Key Services de la structure globale Active Directory via le processus d'auto-inscription. Les déclencheurs sont les suivants :

  • à l'ouverture de session de l'utilisateur (sur les ordinateurs, lorsque le compte de l'ordinateur se connecte, c'est-à-dire au démarrage du système)
  • Par minuterie toutes les 8 heures.
  • Lors d'une mise à jour de la stratégie de groupe, à condition qu'il y ait eu un changement.

Si ce processus est lancé et que le paramètre correspondant pour la demande et le renouvellement automatiques de certificats est activé, les déclencheurs ci-dessus déclenchent également la demande et le renouvellement de certificats.

Si un client est connecté via VPN, il peut arriver qu'aucun des déclencheurs ne s'applique :

  • Lors de la connexion de l'utilisateur, c'est-à-dire lorsque le compte informatique se connecte, c'est-à-dire au démarrage du système, la connexion VPN n'est souvent pas encore établie, de sorte que le client n'a pas accès au réseau.
  • La minuterie toutes les 8 heures n'est souvent pas adaptée, car la connexion VPN n'est généralement pas maintenue aussi longtemps.
  • Lors d'une mise à jour des stratégies de groupe, à condition qu'il y ait eu une modification – ce qui n'est souvent pas le cas, car le déclencheur ne s'applique qu'en cas de modification des stratégies de groupe.

Si aucun de ces déclencheurs ne s'applique, le processus d'inscription automatique ne sera jamais déclenché (du moins tant que le client est connecté au réseau) et les certificats clients risquent d'expirer.

Solution : configurer une tâche planifiée avec un déclencheur supplémentaire

Connaissez-vous TameMyCerts? TameMyCerts est un add-on pour l'autorité de certification Microsoft (Active Directory Certificate Services). Il étend la fonction de l'autorité de certification et permet de Application de la réglementationIl s'agit d'un logiciel de gestion des certificats qui permet d'automatiser l'émission de certificats en toute sécurité. TameMyCerts est unique dans l'écosystème Microsoft, a déjà fait ses preuves dans d'innombrables entreprises du monde entier et est disponible sous une licence libre. Il peut téléchargé via GitHub et être utilisé gratuitement. Une maintenance professionnelle est également proposée.

La solution consiste à configurer une stratégie de groupe qui crée un autre déclencheur pour le processus d'inscription automatique via les préférences de stratégie de groupe (GPP). Par exemple, si le client VPN enregistre un événement lorsque la connexion VPN est établie, cet événement peut servir de déclencheur.

Tout d'abord, un nouvel objet de stratégie de groupe est créé via la console de gestion des stratégies de groupe (gpmc.msc).

On lui donne un nom évocateur.

L'objet de stratégie de groupe est ensuite modifié.

Sous „ Computer Configuration “ – „ Preferences “ – „ Control Panel Settings “ – „ Scheduled Tasks “, cliquez avec le bouton droit de la souris pour créer une nouvelle tâche planifiée pour „ At least Windows 7 “.

Dans l'onglet „ Général “, l'action est définie sur „ Créer “ et un nom significatif est attribué à la tâche.

Dans les „ Security Options “, cliquez sur „ Change User or Group… “.

Entrez „ SYSTEM “ comme nom d'objet et cliquez sur „ Check Names “.

Sélectionnez ensuite l'objet „ SYSTEM “ et confirmez en cliquant sur „ OK “.

De retour dans les „ Security Options “, sélectionnez „ Run whether user is logged on or not “ et „ run with highest privileges “.

Dans l'onglet „ Triggers “, cliquez sur „ New… “.

La configuration d'un déclencheur basé sur les journaux d'événements du client VPN intégré à Windows est décrite ci-dessous. Pour votre propre environnement, vous devez déterminer si le client VPN utilisé génère des événements et à quoi ceux-ci ressemblent. S'il n'est pas possible d'intercepter un événement, un déclencheur temporisé, par exemple toutes les heures, serait également une option valable. Cependant, la mise à jour ne doit pas être trop fréquente, car cela génère une certaine charge réseau qui augmente avec le nombre de clients connectés.

Dans le champ de sélection supérieur, le déclencheur est réglé sur „ On an event “. Dans les paramètres, sélectionnez „ Custom “, puis cliquez sur „ New Event Filter “.

Dans la boîte de dialogue suivante, vous pouvez soit créer un filtre d'événements à partir des options disponibles, soit définir votre propre filtre à l'aide de l'onglet „ XML “.

Voici un exemple du client VPN interne à Windows qui a établi une connexion nommée „ ADCS Labor VPN “.

<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[System[(Level=4 or Level=0) and (EventID=20225)]] and *[EventData[Data='ADCS Labor VPN']]</Select>
</Query>
</QueryList>

Une très bonne alternative fiable consiste à utiliser la connexion au réseau interne comme déclencheur.

Cette information peut être trouvée dans l'événement n° 10000 de la source NetworkProfile (dans le journal des événements Microsoft-Windows-NetworkProfile/Operational). Il faut également filtrer pour vérifier qu'une connexion au domaine a été détectée (catégorie 2).

<QueryList>
<Query Id="0" Path="Microsoft-Windows-NetworkProfile/Operational">
<Select Path="Microsoft-Windows-NetworkProfile/Operational">*[System[(EventID=10000)]] and *[EventData[(Data[@Name="Category"] = "2")]]</Select>
</Query>
</QueryList>

Il est important d'intégrer un petit délai dans les paramètres du déclencheur, car lors de l'établissement de la connexion VPN, cela peut prendre quelques secondes avant que la connexion puisse être réellement utilisée. Un délai de 30 secondes à une minute devrait être optimal.

Dans l'onglet „ Actions “, cliquez sur „ New… “.

Cliquez ensuite sur „ Parcourir… “.

Le dossier „ C:\Windows\System32\ “ est sélectionné et, après la certutil.exe recherché.

L'argument „ -pulse “ est ajouté à la commande.

Dans l'onglet „ Settings “, sélectionnez „ Allow task to be run on demand “.

La stratégie de groupe peut désormais être liée aux ordinateurs clients.

Si le domaine fonctionne avec les paramètres par défaut, les clients doivent appliquer la nouvelle stratégie de groupe après 90 minutes. Ensuite, le processus d'inscription automatique doit être déclenché à chaque connexion VPN.

Liens complémentaires :

Les commentaires sont fermés.

fr_FRFrançais