Close Menu
BlackHatFrance

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    Facebook X (Twitter) Instagram
    lundi, mai 19
    Facebook X (Twitter) Instagram YouTube Pinterest LinkedIn Discord RSS
    BlackHatFranceBlackHatFrance
    • Accueil
    • Crypto
    • Seo
    • Technologie

      Ces stratégies ralentissent le réchauffement tout en permettant aux gens de prospérer sur une planète saine

      12 novembre 2024

      vite, cet écran PC gamer de 23,8″ 180 Hz est à 79 € seulement !

      12 novembre 2024

      Steam oblige les éditeurs à mentionner la présence de solutions anti-triche

      12 novembre 2024

      Un site recense les caméras de lecture des plaques d’immatriculat …

      12 novembre 2024

      Découverte majeure d’une tunique royale et d’objets qui auraient appartenu à Alexandre le Grand !

      12 novembre 2024
    • Vidéos

      La Crise de la Masculinité (société ANTI HOMMES…)

      12 mai 2025

      ESSAIE ÇA PENDANT 21 JOURS (Le secret du succès)

      28 avril 2025

      CE DISCOURS A OUVERT LES YEUX À PLUS DE 39 MILLIONS DE PERSONNES

      2 avril 2025

      9 ERREURS QUE LES PAUVRES FONT ET QUE LES RICHES NE FONT PAS

      14 mars 2025

      TOUTES LES TECHNIQUES DE MANIPULATION INTERDITES EN 13 MINUTES

      4 mars 2025
    • Boutique
    • Consulting
      1. Crypto
      2. View All

      Comment avoir des abonnés sur X / Twitter : la formule gagnante

      14 mai 2025

      La Crise de la Masculinité (société ANTI HOMMES…)

      12 mai 2025

      Zoho Desk : avis, avantages, prix

      7 mai 2025

      Les 15 meilleures plateformes eCommerce (gratuites et payantes)

      30 avril 2025

      Comment avoir des abonnés sur X / Twitter : la formule gagnante

      14 mai 2025

      La Crise de la Masculinité (société ANTI HOMMES…)

      12 mai 2025

      Zoho Desk : avis, avantages, prix

      7 mai 2025

      Les 15 meilleures plateformes eCommerce (gratuites et payantes)

      30 avril 2025
    BlackHatFrance
    Accueil » Technologie » Gérer les ordinateurs inactifs dans l’Active Directory ?
    Gérer les ordinateurs inactifs dans l’Active Directory ?
    Technologie

    Gérer les ordinateurs inactifs dans l’Active Directory ?

    XiuBy Xiu22 septembre 2024Aucun commentaire9 Mins Read
    Share
    Facebook Twitter LinkedIn Pinterest

    I. Présentation

    L’Active Directory est un annuaire vivant et il est en quelque sorte le reflet de l’activité de l’entreprise et du cycle de vie des machines. Un nouvel arrivant peut être synonyme de l’achat d’une nouvelle machine, tandis qu’un départ peut être synonyme de la mise au placard d’une machine. Sans compter le renouvellement du parc informatique qui aura aussi des conséquences sur les objets présents dans l’annuaire Active Directory.

    Publicité
    Demo

    Ce constat implique de suivre l’activité des machines et de réserver un traitement spécifique à celles qui ne sont plus utilisées, voire même qui ne sont plus la propriété de l’entreprise. Autrement dit, il est essentiel de traquer les ordinateurs inactifs, car ils peuvent représenter un risque pour la sécurité du SI (un objet actif a des permissions auprès des services AD).

    Cette action d’identification des ordinateurs inactifs et de nettoyage peut être menée à l’aide de PowerShell, et notamment le cmdlet « Search-ADAccount« , évoqué dans ce chapitre de notre cours « Administrer l’Active Directory avec PowerShell » :

    Ce cmdlet a un nombre de paramètres limités et il implique d’avoir une bonne maitrise de PowerShell afin de pouvoir être utilisé dans un script de nettoyage de l’Active Directory. La bonne nouvelle, c’est que ce travail peut être facilité grâce à un module PowerShell nommé « CleanupMonster« .

    CleanupMonster va pouvoir analyser votre annuaire Active Directory pour identifier les ordinateurs inactifs, selon différents critères. Vous pouvez l’utiliser seulement à des fins de reporting, mais aussi pour qu’il nettoie l’Active Directory de façon automatique. CleanupMonster peut désactiver les comptes des ordinateurs inactifs (et éventuellement les déplacer dans une OU), mais aussi les supprimer de l’annuaire AD. À chaque fois, il est possible de définir des critères différents pour ces trois actions (désactiver / déplacer / supprimer), ou d’en activer une mais pas l’autre.

    Gérer les ordinateurs inactifs dans l’Active Directory ?
    CleanupMonster – Exemple d’exécution en mode interactif

    Vous pouvez envisager un scénario comme celui-ci (le nombre de jours est ajustable à souhait) :

    • Désactiver un ordinateur après 60 jours d’inactivité
    • Déplacer un ordinateur dans une OU spécifique après 90 jours d’inactivité
    • Supprimer un ordinateur après 120 jours d’inactivité

    Pour information, il s’agit d’un module créé par la société Evotec, au même titre que l’excellent GPOZaurr pour l’analyse de GPO et d’autres modules comme PSWriteHTML.

    II. Installation de CleanupMonster

    Commençons par l’installation du module à partir d’une console PowerShell :

    Install-Module -Name CleanupMonster -Force -Verbose

    Une fois que c’est fait, vous pouvez vous pencher sur son utilisation. Ce module contient une seule commande nommée « Invoke-ADComputersCleanup » et, d’après la documentation, il n’est pas nécessaire d’exécuter la commande en tant qu’administrateur. Par défaut, le domaine Active Directory autorise un utilisateur standard à lire les attributs LastLogonDate et LastPasswordSet.

    Par la suite, le module peut être mis à jour via la commande suivante :

    Update-Module -Name CleanupMonster

    Voici le lien vers ce projet sur GitHub :

    Voyons maintenant quelques exemples d’utilisation de ce module.

    III. Utilisation de CleanupMonster

    A. Identifier les ordinateurs inactifs

    La première chose à faire, c’est d’exécuter la commande « Invoke-ADComputersCleanup » en mode audit, afin de générer un rapport uniquement. Autrement dit, aucune modification ne sera effectuée dans votre annuaire.

    Invoke-ADComputersCleanup -WhatIf -ReportOnly -Disable -Delete -ShowHTML

    Par défaut, l’outil identifie les machines dont les attributs « LastLogonDate » (dernière date de connexion) et « LastPasswordSet » (date de la dernière modification du mot de passe) n’ont pas été mis à jour depuis 180 jours (soit 6 mois).

    Une fois l’analyse terminée, un rapport HTML s’ouvre de façon automatique (-ShowHTML). Il contient quelques graphes, avec le nombre de machines à désactiver et le nombre de machines à supprimer, selon les critères actuels. Il y a aussi une liste de tous les ordinateurs, avec un statut.

    Voici comment identifier les ordinateurs inactifs à désactiver (utile si vous n’envisagez pas de les supprimer) :

    Invoke-ADComputersCleanup -WhatIfDisable -ReportOnly -Disable -ShowHTML

    Le paramètre « -WhatIf » sert à simuler l’exécution de la commande (ce qui est l’usage habituel du -WhatIf en PowerShell). Il y a différents paramètres avec le mot clé « WhatIf« , ce qui peut permettre de réellement désactiver les ordinateurs inactifs et d’être en mode « audit » pour la suppression. De plus, le paramètre « -ReportOnly » indique de façon explicite que la commande va seulement générer un rapport sans toucher aux objets ordinateurs.

    B. Désactiver et déplacer les ordinateurs inactifs

    Si vous n’envisagez pas de supprimer les ordinateurs inactifs, mais simplement de les désactiver et les déplacer dans une OU spécifique de l’AD, voici la commande à exécuter :

    Invoke-ADComputersCleanup -Disable -DisableAndMove -ShowHTML -DisableMoveTargetOrganizationalUnit "OU=Archivage,DC=it-connect,DC=local"

    La commande ci-dessus va désactiver les comptes ordinateurs inactifs puis les déplacer dans l’OU « OU=Archivage,DC=it-connect,DC=local » (dans cet ordre). Il est essentiel de spécifier ensemble « -Disable -DisableAndMove » car « -DisableAndMove » n’est pas un mode à proprement parler.

    Si vous souhaitez simplement désactiver les comptes sans les déplacer, utilisez cette syntaxe :

    Invoke-ADComputersCleanup -Disable -ShowHTML

    Retenez qu’il y a trois modes différents : désactiver (Disable), déplacer (Move) et supprimer (Delete). Quand un mode est spécifié, cela signifie qu’il est activé : par exemple, « -Disable » pour activer la désactivation des machines. Ces modes peuvent fonctionner ensemble et chaque mode contient ses propres paramètres dont le nom débute par le mot clé principal du mode (Disable / Move / Delete).

    C. Exclure certaines machines de l’analyse

    Il peut s’avérer utile d’exclure certains systèmes ou certaines machines de l’analyse de CleanupMonster, et ainsi s’assurer qu’ils ne seront pas affectés par le traitement. D’après mes tests, l’outil exclue automatiquement les contrôleurs de domaine, ce qui est une bonne chose.

    Pour exclure les machines dont le système d’exploitation est Windows Server (toutes les versions) afin de ne pas les désactiver, vous devez spécifier le paramètre « -DisableExcludeSystems« . Ensuite, précisez le système en tant que valeur, tout en sachant que vous pouvez spécifier le caractère wildcard (« * ») car ce filtre s’appuie sur un « -Like« . De plus, il y a le paramètre « -DeleteExcludeSystems » pour les exclusions sur la suppression.

    Invoke-ADComputersCleanup -WhatIfDisable -ReportOnly -Disable -ShowHTML -DisableExcludeSystems "Windows Server*"

    Mon annuaire Active Directory contient un objet ordinateur nommé « AZUREADSSOACC$« , présent dans l’AD car la fonctionnalité SSO de Microsoft Entra ID est activée par l’intermédiaire de Entra Connect. Le problème, c’est que CleanupMonster m’indique qu’il va désactiver ce compte. D’où l’intérêt d’exécuter l’outil en mode audit afin de déclarer d’éventuelles exceptions avant qu’il passe réellement à l’action.

    Dans ce cas, il convient d’ajouter le paramètre « -Exclusions » qui accepte une ou plusieurs valeurs, afin d’exclure cette machine. Il est aussi possible de jouer sur le paramètre « -Filter » pour injecter un filtre directement dans la commande « Get-ADComputer« .

    Invoke-ADComputersCleanup -Disable -DisableAndMove -ShowHTML -DisableExcludeSystems "Windows Server*" -Exclusions "AZUREADSSOACC$"

    Nous obtenons bien le résultat escompté :

    D. L’exécution dans une tâche planifiée

    CleanupMonster est exécutable en mode interactif, comme nous venons de le faire, mais aussi par l’intermédiaire d’un script PowerShell qui sera exécuté dans une tâche planifiée.

    Ce sera l’occasion de configurer l’outil selon vos besoins, en jouant sur les différents paramètres. Pour rappel, par défaut, CleanupMonster considère qu’un ordinateur est inactif quand il ne s’est pas connecté depuis 180 jours, mais ceci est ajustable avec les paramètres « DisableLastLogonDateMoreThan » et « DisablePasswordLastSetMoreThan« .

    Voici un exemple de script récupéré à partir du GitHub du projet et destiné à l’exécution dans une tâche planifiée. Il s’appuie sur une hash table de paramètres.

    # Run the script
    $Configuration = @{
        Disable                        = $true
        DisableNoServicePrincipalName  = $null
        DisableIsEnabled               = $true
        DisableLastLogonDateMoreThan   = 90
        DisablePasswordLastSetMoreThan = 90
        DisableExcludeSystems          = @(
            # 'Windows Server*'
        )
        DisableIncludeSystems          = @()
        DisableLimit                   = 2 # 0 means unlimited, ignored for reports
        DisableModifyDescription       = $false
        DisableModifyAdminDescription  = $true
    
        Delete                         = $true
        DeleteIsEnabled                = $false
        DeleteNoServicePrincipalName   = $null
        DeleteLastLogonDateMoreThan    = 180
        DeletePasswordLastSetMoreThan  = 180
        DeleteListProcessedMoreThan    = 90 # 90 days since computer was added to list
        DeleteExcludeSystems           = @(
            # 'Windows Server*'
        )
        DeleteIncludeSystems           = @(
    
        )
        DeleteLimit                    = 2 # 0 means unlimited, ignored for reports
    
        Exclusions                     = @(
            '*OU=Domain Controllers*'
            '*OU=Servers,OU=Production*'
            'EVOMONSTER$'
            'EVOMONSTER.AD.EVOTEC.XYZ'
        )
    
        Filter                         = '*'
        WhatIfDisable                  = $true
        WhatIfDelete                   = $true
        LogPath                        = "$PSScriptRoot\Logs\DeleteComputers_$((Get-Date).ToString('yyyy-MM-dd_HH_mm_ss')).log"
        DataStorePath                  = "$PSScriptRoot\DeleteComputers_ListProcessed.xml"
        ReportPath                     = "$PSScriptRoot\Reports\DeleteComputers_$((Get-Date).ToString('yyyy-MM-dd_HH_mm_ss')).html"
        ShowHTML                       = $true
    }
    
    # Exécution de la tâche
    $Output = Invoke-ADComputersCleanup @Configuration
    $Output

    Ensuite, enregistrez ce script et exécutez-le en tant qu’action dans une tâche planifiée Windows.

    powershell.exe -File "C:\chemin\vers\script\CleanupMonster.ps1"

    E. Les paramètres supplémentaires

    CleanupMonster contient de très nombreux paramètres et il est très flexible. De ce fait, ce tutoriel ne pourra pas couvrir tous les scénarios.

    Voici quelques commandes pour vous aider :

    # Obtenir une aide complète
    Get-Help Invoke-ADComputerCleanup -Full
    
    # Obtenir une liste d'exemples :
    Get-Help Invoke-ADComputerCleanup -Examples
    
    # Obtenir de l'aide sur un paramètre spécifique :
    Get-Help Invoke-ADComputerCleanup -Parameter Delete

    J’attire votre attention sur le fait que CleanupMonster peut se connecter à Azure et Intune pour consulter l’activité récente d’une machine. En effet, un ordinateur ne s’est pas connecté récemment à l’annuaire AD, mais peut-être qu’il s’est synchronisé à Intune (dans le cas où vous utilisez ce MDM). Ceci implique d’utiliser en complément le module PowerShell GraphEssentials pour établir une connexion au tenant et l’interroger.

    Il y a plusieurs paramètres pour effectuer cette vérification, notamment ces deux-là :

    .PARAMETER DisableLastSeenAzureMoreThan
        Disable computer only if it Last Seen in Azure is more than the specified number of days.
        Please note that you need to make connection to Azure using Connect-MgGraph with proper permissions first.
        Additionally you will need GraphEssentials PowerShell Module installed.
    
    .PARAMETER DisableLastSeenIntuneMoreThan
        Disable computer only if it Last Seen in Intune is more than the specified number of days.
        Please note that you need to make connection to Intune using Connect-MgGraph with proper permissions first.
        Additionally you will need GraphEssentials PowerShell Module installed.

    Vous pouvez aussi consulter cette page pour avoir la liste et la description des paramètres.

    IV. Conclusion

    Désormais, vous disposez d’un outil flexible et aboutit pour effectuer un suivi des ordinateurs inactifs dans votre annuaire Active Directory ! L’exécution par tâche planifiée est un plus afin d’automatiser cette action de maintenance indispensable.

    Note : si vous rencontrez des erreurs avec le mode interactif, il est recommandé de passer plutôt par un script PS1 et de tester avec le paramètre « -DontWriteToEventLog« . Veillez à maintenir à jour le module CleanupMonster mais aussi PSEventViewer et PSWriteHTML.

    Qu’en pensez-vous ?

    author avatarauthor avatar

    Ingénieur système et réseau, cofondateur d’IT-Connect et Microsoft MVP « Cloud and Datacenter Management ». Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

    Source link

    Publicité
    Follow on X (Twitter) Follow on Google News Follow on LinkedIn Follow on RSS
    Share. Facebook Twitter Pinterest LinkedIn Tumblr WhatsApp Email
    Previous ArticleEn images, une éruption bien curieuse sur le Kilauea
    Next Article qu’est-ce que cela change et pourquoi vous n’y avez pas (encore) accès ?

    Articles similaires

    Ces stratégies ralentissent le réchauffement tout en permettant aux gens de prospérer sur une planète saine

    12 novembre 2024

    vite, cet écran PC gamer de 23,8″ 180 Hz est à 79 € seulement !

    12 novembre 2024

    Steam oblige les éditeurs à mentionner la présence de solutions anti-triche

    12 novembre 2024
    Leave A Reply Cancel Reply

    Stay In Touch
    • Facebook
    • Twitter
    • LinkedIn
    Offre partagé

    Pack Canal+ Ciné Series (Netflix, Disney+, Apple TV+, Max, OCS, Paramount+)

    By Xiu23 septembre 2024

    Comment avoir des abonnés sur X / Twitter : la formule gagnante

    By Xiu14 mai 2025

    Tu veux faire connaître tes produits / services mais tu galères à attirer les bons…

    Zoho Desk : avis, avantages, prix

    By Xiu7 mai 2025

    Gérer un service client de manière efficace, ce n’est pas toujours simple. Entre les emails…

    Les 15 meilleures plateformes eCommerce (gratuites et payantes)

    By Xiu30 avril 2025

    Tu veux lancer ta boutique en ligne en [year], mais tu ne sais pas quelle…

    Linkavista : la plateforme de netlinking montante

    By Xiu30 avril 2025

    Linkavista est une plateforme de netlinking française lancée fin 2024 par des SEO pour des…

    A propos
    A propos

    Votre Source d'Actualités Tech, Fintech et Crypto

    Découvrez nos contenus sélectionnés pour vous informer et vous inspirer sur les dernières tendances technologiques, les innovations fintech, et l'univers de la crypto-monnaie ! Ce blog est conçu pour mettre en valeur les sujets les plus actuels et pertinents. Pour plus de ressources et d'articles, visitez notre page principale.

    Collaborez avec Nous !

    Nous recherchons activement de nouveaux partenariats et collaborations.

    Contactez-nous :
    Email : blackhatfrance@icloud.com

    Facebook X (Twitter) YouTube LinkedIn Discord RSS
    Nos choix

    Comment avoir des abonnés sur X / Twitter : la formule gagnante

    14 mai 2025

    La Crise de la Masculinité (société ANTI HOMMES…)

    12 mai 2025

    Zoho Desk : avis, avantages, prix

    7 mai 2025
    Catégories
    • Actualités (599)
    • Crypto (1)
    • Featured (11)
    • Featured Videos (377)
    • Innovation (12)
    • Nouvelle Caledonie (1 964)
    • SEO (76)
    • Technologie (2 014)
    • Top Posts (10)
    • Uncategorized (183)
    • Vidéos (557)
    • Accueil
    • Conditions Générales d’Utilisation
    • Disclaimer
    • Politique de cookies
    • Déclaration de confidentialité
    © 2025 ThemeSphere. Designed by ThemeSphere.

    Type above and press Enter to search. Press Esc to cancel.

    Gérez votre confidentialité

    To provide the best experiences, we and our partners use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us and our partners to process personal data such as browsing behavior or unique IDs on this site and show (non-) personalized ads. Not consenting or withdrawing consent, may adversely affect certain features and functions.

    Click below to consent to the above or make granular choices. Your choices will be applied to this site only. You can change your settings at any time, including withdrawing your consent, by using the toggles on the Cookie Policy, or by clicking on the manage consent button at the bottom of the screen.

    Fonctionnel Always active
    Le stockage ou l’accès technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’utilisateur, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
    Préférences
    Le stockage ou l’accès technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou l’utilisateur.
    Statistiques
    Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques. Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
    Marketing
    Le stockage ou l’accès technique est nécessaire pour créer des profils d’utilisateurs afin d’envoyer des publicités, ou pour suivre l’utilisateur sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.
    Statistics

    Marketing

    Features
    Always active

    Always active
    Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
    Gérer les options
    {title} {title} {title}
    Ad Blocker Enabled!
    Ad Blocker Enabled!
    Our website is made possible by displaying online advertisements to our visitors. Please support us by disabling your Ad Blocker.