Réinitialiser « krbtgt »

Le compte « krbtgt » dans Active Directory est un compte du domaine particulier qui est désactivé par défaut. Le mot de passe de ce compte est utilisé pour générer les tickets pour l'authentification Kerberos. Il ne faut donc surtout pas le supprimer. Néanmoins son mot de passe est lié à la sécurité et en plus il ne change jamais. Ce compte conserve par défaut les 2 derniers mots de passe dans son historique, donc si vous le modifiez les tickets générés avec l'ancien mot de passe restent valide, les nouveaux tickets utilisant le nouveau mot de passe.

La durée maximale par défaut d'un ticket kerberos est de 10 heures. La modification du mot de passe n'est pas une opération complexe mais elle demande un respect strict de certaines règles, sinon vous risquez d'invalidité tous les tickets en cours et donc de perturber votre environnement en fonctionnement. Lorsque vous modifier le mot de passe de ce compte il est important qu'il soit répliqué sur l'ensemble des contrôleurs de domaines avant d'être modifié une deuxième fois (il faut la modifier deux fois pour que l'ancien mot de passe ne puisse plus être utilisé dans des attaques).

Le script suivant vous permet de réinitialiser régulièrement le mot de passe et effectue les contrôles nécessaires en amont.

https://gallery.technet.microsoft.com/Reset-the-krbtgt-account-581a9e51/view/Discussions

Le script dispose de 3 modes :

  • 1 : mode d'information qui effectue juste des contrôles
  • 2 : mode simulation qui teste sans modifier le mot de passe
  • 3 : mode réinitialisation.

Le script n'étant pas signé vous devez d'abord autoriser l'exécution du script, par exemple avec la commande :

Set-execution policy unrestricted

 

Vous pouvez ensuite exécuter le script, en exécutant d'abord le mode « 1 ».

Si vous êtes sur une version française de Windows vous risquez de rencontrer des erreurs sur le test de connectivité RPC et sur le test de réplication.

En effet, la valeur vérifie le texte renvoyé par la version anglaise du produit.

 

Si vous effectuez manuellement le test  « rpcping », vous verrez qu'une réponse correcte ne contient pas le mot « completed ».

Vous devez modifier la ligne 62 en remplaçant « completed » par « *appels effectu‚s en* ».

If ($RpcPingResult -like "*appels effectu‚s en*") {Return (New-Object -TypeName PSObject -Property @{'Success'=$true; 'Message'="$Hostname - RPC connectivity successful."})}

Ainsi que la ligne 84 : « Successfully replicated object* » en « a ‚t‚ correctement r‚pliqu »

If ($RepAdminResult -like "*a ‚t‚ correctement r‚pliqu*") {Return (New-Object -TypeName PSObject -Property @{'Success'=$true; 'Message'="$ObjectDN - Successfully replicated from $SourceDC to $TargetDC."})}

 

Une fois cette modification effectuée votre script devrait fonctionner.

Réalisez l'étape 1 et vérifiez qu'il n'y a pas d'erreur.

Sur l'étape 2, vous allez devoir confirmer votre test avec « y »

Si tout est OK, vous pouvez utiliser l'étape 3 qui va réinitialiser le mot de passe.

Un avertissement vous informe que le mot de passe va être réinitialisé et un contrôle vérifiera la réplication avec les autres DC.

Il est possible de consulter le résultat de chaque étape dans le fichier log, créé au même emplacement que le script.

Enfin si vous essayez de modifier le mot de passe deux fois de suite, vous aurez un message d'erreur vous indiquant qu'il y a encore des tickets Kerberos avec l'ancien mot de passe. Vous devez attendre au moins 10 heures avant de procéder à une autre modification, afin de ne pas perturber l'activité.

 

Je vous conseille de lire la documentation fournit avec le script avant de modifier le mot de passe de ce compte.

Tags: 

Theme: 

Systeme: 

Ajouter un commentaire

Bloc brute

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
CAPTCHA
Cette question empêche les soumissions de spam automatisées. Merci de votre compréhension
Image CAPTCHA
Enter the characters shown in the image.