Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-content/plugins/portfolio-slideshow/portfolio-slideshow.php:65) in /var/www/html/wp-includes/feed-rss2.php on line 8
Windows – Les mémos d'un admin système https://blog-sysadmin.archives.slashroot.fr Sat, 29 Jul 2017 07:31:37 +0000 fr-FR hourly 1 https://wordpress.org/?v=4.8.23 [Powershell] Récupérer la date de dernière connexion https://blog-sysadmin.archives.slashroot.fr/?p=1395 https://blog-sysadmin.archives.slashroot.fr/?p=1395#comments Sat, 15 Jul 2017 08:59:31 +0000 http://blog.slashroot.fr/?p=1395 # # Get-Lastlogon # # Auteur : Johan # Contact : johan@slashroot.fr # Date : 24/03/14 # Version : 1.0 # Description : Récupère la date de dernière connexion d'un utilisateur ou d'un ordinateur # Commentaire : Le lastlogon n'etant pas replique entre les DCs, le script recupere les valeurs de chaque DC puis selectionne la plus recente # Requis : Module ActiveDirectory # On importe le module ActiveDirectory Import-Module ActiveDirectory -ErrorAction SilentlyContinue # Si le module est bien présent if ($? -eq 'true') { # On lance la boucle pour chaque demande (utilisateur/ordinateur) do { # On lance la boucle pour la séléction du type (utilisateur ou ordinateur) afin de prendre en compte les fautes de frappe $i=0 while ($i -eq 0) { # Mise en forme de l'affichage echo "`nAfficher la date de derniere connexion d'un :`n" echo "1 - Utilisateur" echo "2 - Ordinateur`n" # Demande du type $choix = Read-host "Choix" echo "" # Demande du login utilisateur ou nom de machine puis test de l'existence du compte # Si l'utilisateur existe, on continue le script, sinon, on recommence le script switch ($choix){ 1 {$name = Read-host "Login de l'utilisateur "; echo "" ; if ((Get-ADUser -Filter {sAMAccountName -eq $name}) -ne $null) { $i=1 } else { echo "L'utilisateur n'existe pas !`n" }; break} 2 {$name = Read-host "Nom de la machine "; echo "" ; if ((Get-ADComputer -Filter {name -eq $name}) -ne $null) { $i=1 } else { echo "L'ordinateur n'existe pas !`n" }; break} default {"Mauvais choix !`n"; break} } } # On récupère la liste de tous les DC du domaine $liste_DC = (Get-ADDomainController -Filter *).HostName # On fixe les variables $lastLogon = 0 $logonDC = $null # Pour chaque DC du domaine foreach ($dc in $liste_DC) { # On formule la requête selon le type et on récupère la valeur switch ($choix){ 1 {$res = Get-ADUser $name -Properties LastLogon -Server $dc ; break} 2 {$res = Get-ADComputer $name -Properties LastLogon -Server $dc ; break} } # Si le lastlogon est plus récent, on prend la valeur et le nom du DC if ($lastLogon -lt $res.LastLogon) { $lastLogon = $res.LastLogon $logonDc = $dc } } # On converti le lastlogon au format date $lastLogon = [DateTime]::FromFileTime($lastLogon) # On affichage le lastlogon et le DC correspondant echo "Derniere connexion : $lastlogon" echo "Serveur : $logonDC`n" # On propose de relancer le script pour un autre compte $quit = Read-Host “On continue ? (O/n)” } until (($quit -eq “n”) -or ($quit -eq “N”)) } else { # Si le module est absent, on abandonne le script echo "Il faut le module ActiveDirectory !" } ]]> https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=1395 3 [Powershell] Lister les postes inactifs https://blog-sysadmin.archives.slashroot.fr/?p=1387 https://blog-sysadmin.archives.slashroot.fr/?p=1387#respond Fri, 14 Jul 2017 08:57:11 +0000 http://blog.slashroot.fr/?p=1387 # # Get-Inactive-Computers # # Auteur : Johan # Contact : johan@slashroot.fr # Date : 03/12/15 # Version : 1.0 # Description : Ce script récupère tous les postes présents dans la l'AD et dresse la liste des postes ne s'étants pas connectés depuis X mois # Commentaire : Le résultat est envoyé par email # Requis : Module ActiveDirectory # # Variables # # Base de recherche $base="OU=postes,DC=slashroot,DC=fr" # Seuil d'inactivité (en mois) $seuil="6" # Parametres de messagerie $expediteur = "bob@slashroot.fr" $destinataire = "admin@slashroot.fr" $serveur = "mx.slashroot.fr" # On filtre le résultat selon l'OS (on ne prend pas en compte les Linux) $os_filter="W*" # Date d'il y a X mois $date_seuil=$(Get-Date).addMonths(-$seuil) $resultat="" # # Au boulot # # On importe le module ActiveDirectory Import-Module ActiveDirectory -ErrorAction SilentlyContinue # Si le module est bien présent if ($? -eq 'true') { # Requête LDAP pour récupérer tous les postes Windows $strCategory = “computer” $objDomain = New-Object System.DirectoryServices.DirectoryEntry(“LDAP://$base”) $objSearcher = New-Object System.DirectoryServices.DirectorySearcher($objDomain,”(&(objectCategory=$strCategory)(operatingSystem=$os_filter))”,@(‘name’)) $liste=$objSearcher.FindAll() | %{$_.properties.name} | sort # Liste de tous les DC du domaine $liste_DC = (Get-ADDomainController -Filter *).HostName # Pour chaque poste on récupère son lastlogon sur chaque DC afin de trouver le plus récent foreach ($poste in $liste) { # On fixe les variables $lastLogon = 0 $logonDC = $null # Pour chaque DC du domaine foreach ($dc in $liste_DC) { $res = Get-ADComputer $poste -Properties LastLogon -Server $dc # Si le lastlogon est plus récent, on prend la valeur et le nom du DC if ($lastLogon -lt $res.LastLogon) { $lastLogon = $res.LastLogon $logonDc = $dc } } # On converti le lastlogon au format date $lastLogon = [DateTime]::FromFileTime($lastLogon) # Si le lastlogon est plus vieux que le seuil fixé, on ajoute le poste à la liste (en ne gardant que la date JJ/MM/YYYY) if ($lastLogon -lt $date_seuil) { $resultat+="$poste - $lastLogon `r" } } # Si on a des postes problematiques if ( $resultat -ne "" ) { # On envoi le résultant par email $objet = "[Active Directory] Postes inactifs" $texte = "Bonjour,`r`rVoici la liste des postes ne s'étant pas connectés au domaine depuis plus de $seuil mois :`r`r$resultat`rCordialement`r--`rBob" $message = new-object System.Net.Mail.MailMessage $expediteur, $destinataire, $objet, $texte $SMTPclient = new-object System.Net.Mail.SmtpClient $serveur $SMTPclient.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials $SMTPclient.Send($message) } } else { # Si le module est absent, on abandonne le script echo "Il faut le module ActiveDirectory !" } ]]> https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=1387 0 [Active Directory] Déployer des imprimantes par GPO https://blog-sysadmin.archives.slashroot.fr/?p=804 https://blog-sysadmin.archives.slashroot.fr/?p=804#respond Mon, 15 Jul 2013 07:38:41 +0000 http://blog.slashroot.fr/?p=804 Nous supposons un serveur d’impression en 2008 R2 avec des clients Seven.

Création de la GPO :

Se rendre dans « Configuration utilisateur » -> « Préférences » -> « Paramètres du Panneau de configuration » -> « Imprimantes » :

Effectuer un clic droit « Nouveau » -> « Imprimante partagée »

Choisir mettre à jour (permet d’installer l’imprimante quand elle n’est pas présente et modifie sa configuration si un changement au niveau du serveur d’impression est effectuée).

Cocher le ciblage au niveau de l’élément puis dans l’éditeur de cible, cliquer sur « Nouvel élément » puis choisir la condition de déploiement (dans mon cas, l’appartenance de l’utilisateur à un groupe global). Il est possible de spécifier plusieurs conditions avec les opérateurs logiques ET et OU.

L’imprimante est maintenant configurée. Il ne reste plus qu’à faire de même pour les autres imprimantes.

Le ciblage le plus efficace dépend bien entendu de votre infrastructure. Avec le nombre impressionnant de critères de ciblage disponible, je pense que tout est facilement réalisable.

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=804 0
[Active Directory] Rôles FSMO https://blog-sysadmin.archives.slashroot.fr/?p=1134 https://blog-sysadmin.archives.slashroot.fr/?p=1134#comments Thu, 11 Jul 2013 08:54:43 +0000 http://blog.slashroot.fr/?p=1134 Dans un environnement de domaine Windows Server, les contrôleurs de domaine contiennent une réplique de la base de données Active Directory. Ce système de réplication est dit multi maitre car chaque contrôleur de domaine a la possibilité de modifier cette base de données et de transmettre ces modifications aux autres contrôleurs de domaine afin que tous possèdent la même base de données Active Directory.

Bien que Microsoft ait implémenté dans ses systèmes un certain nombre de règles pour éviter les conflits de réplication dans Active Directory, certaines mises à jour sont trop importantes pour être résolues avec ces règles, comme par exemple la modification du schéma Active Directory. C’est pourquoi Microsoft a créé depuis Windows 2000 Server les Flexible Single Master Operation (FSMO). Ce sont en fait des rôles attribués à différent serveurs de manière à ce que seuls certains serveurs permettent de modifier des aspects internes à Active Directory.

Il existe donc depuis Windows 2000 cinq rôles FSMO. Ces 5 rôles sont nécessaires au bon fonctionnement des différents domaines et forêts de l’infrastructure. Chacun de ces rôles ne peut être hébergé que par des contrôleurs de domaine et non par des serveurs membres. Ils ont également des étendues différentes et des domaines de réplication différents.

On distingue parmi les 5 rôles:

  • Maître d’attribution de noms de domaines
  • Contrôleur de schéma
  • Maitre RID
  • Maitre d’infrastructure
  • Emulateur PDC

Le Maitre d’attribution de noms de domaines et le contrôleur de schéma ont une portée au niveau de la forêt, pour laquelle ils sont uniques.

Le maitre RID, le maitre d’infrastructure et l’émulateur PDC ont une portée au niveau du domaine, pour lequel ils sont uniques.

Nous allons présenter plus en détail les différents rôles ainsi que l’impact de leur indisponibilité.

Maître d’attribution de noms de domaines

Présentation

Le détenteur du rôle FSMO Maître d’attribution de noms de domaine est le contrôleur de domaine chargé d’apporter des modifications à l’espace de noms des domaines de niveau forêt de l’annuaire (c’est-à-dire le contexte de nommage PartitionsConfiguration ou LDAP://CN=Partitions, CN=Configuration, DC=). Ce contrôleur de domaine est le seul à pouvoir ajouter ou supprimer un domaine de l’annuaire.

C’est un rôle qui n’est donc utilisé que très occasionnellement.

En cas d’indisponibilité

En cas d’indisponibilité du maitre d’attribution des noms de domaine, il n’est plus possible d’ajouter ou d’enlever des domaines à la forêt.

Contrôleur de schéma

Présentation

Le détenteur du rôle FSMO Contrôleur de schéma est le contrôleur de domaine chargé d’effectuer les mises à jour vers le schéma d’annuaire (c’est-à-dire, du contexte de nommage du schéma ou LDAP://cn=schema,cn=configuration,dc=). Ce contrôleur de domaine est le seul à pouvoir traiter les mises à jour vers le schéma de l’annuaire. Une fois la mise à jour du schéma terminée, elle est répliquée du contrôleur de schéma sur tous les autres contrôleurs de domaine de l’annuaire. Il existe un seul contrôleur de schéma par forêt

Un contrôleur de schéma rempli 4 fonctions au sein d’une forêt Active Directory :

  • Il contrôle les mises à jour d’origines apportées au schéma.
  • Il contient la liste des classes d’objets et des attributs utilisés pour la création d’objet dans Active Directory.
  • Il réplique les mises à jour apportées au schéma sur les tous autres contrôleurs de domaine de la forêt via la partition de schéma.
  • Il autorise uniquement les administrateurs du schéma à modifier le schéma.
En cas d’indisponibilité

Si le contrôleur de schéma n’est pas joignable, les modifications sur le schéma ne pourront pas être appliquées. Le schéma stockant les classes d’objets et les attributs, il ne sera par exemple pas possible d’installer une application devant modifier certains attributs, comme Microsoft Exchange par exemple.

La perte de ce contrôleur à de faibles conséquences car les modifications du schéma sont des opérations rares.

Maitre RID

Présentation

Le détenteur du rôle FSMO Maître RID est le seul contrôleur de domaine chargé du traitement des demandes de pools de RID (blocs d’identificateurs relatifs) émanant de tous les contrôleurs de domaine d’un domaine donné. Il est également chargé de supprimer un objet de son domaine et de le mettre dans un autre domaine au cours d’un déplacement d’objet.

Lorsqu’un contrôleur de domaine crée un objet entité de sécurité tel qu’un utilisateur ou un groupe, il joint à l’objet un ID de sécurité (SID) unique. Ce SID est constitué d’un SID de domaine (le même pour tous les SID créés dans un domaine) et d’un ID relatif (RID), unique pour chaque SID d’entité de sécurité créé dans un domaine.

Chaque contrôleur de domaine se voit allouer un pool de RID qu’il peut attribuer aux entités de sécurité qu’il crée. Lorsque le pool de RID d’un contrôleur de domaine tombe en deçà d’un certain seuil, le contrôleur de domaine demande des RID supplémentaires au maître RID du domaine. Le maître RID répond à la demande en récupérant des RID du pool de RID non alloués du domaine et les attribue au pool du contrôleur de domaine demandeur.

En cas d’indisponibilité

Si le maître RID ne peut être joint, la création d’un objet est impossible sur un contrôleur de domaine dont la réserve de RID est épuisée. Chaque contrôleur de domaine obtenant des blocs de 500 identificateurs à chaque demande, l’impact est plus ou moins important selon la taille de l’infrastructure Active Directory.

Maitre d’infrastructure

Présentation

Lorsqu’un objet d’un domaine est référencé par un autre objet dans un autre domaine, il représente la référence par le GUID, le SID (pour les références aux entités de sécurité) et le nom unique (DN) de l’objet qui est référencé. Le détenteur du rôle FSMO Infrastructure est le contrôleur de domaine chargé de mettre à jour le SID et le nom unique d’un objet dans une référence d’objet interdomaine.

Pour ce faire, Active Directory utilise des objets fantômes pour les références aux utilisateurs des différents domaines. Cet objet fantôme est un objet spécial qui ne peut être vu d’aucune façon par les outils d’exploration LDAP.

Ces enregistrements fantômes contiennent une quantité minimale d’informations qui permet à un contrôleur de domaine de se référer à l’emplacement dans lequel l’objet original existe.

Si un objet auquel un objet fantôme fait référence a été modifié ou supprimé, l’objet fantôme doit être modifié ou supprimé du domaine le contenant. Le maître d’infrastructure compare régulièrement les informations des objets fantômes présent dans sa base de donnée avec la dernière version du répliquas des objets sur un serveur de catalogue global. Si les SID ou les distinguished name  ne correspondent pas avec ceux des objets fantômes, alors le maître d’infrastructure met à jour les objets fantômes qu’il contient.

En cas d’indisponibilité

Si le détenteur du maître d’infrastructure est hors ligne, il ne sera plus possible d’utiliser des sécurités mettant en œuvre des groupes composés d’utilisateurs d’un autre domaine. Si le nom d’un utilisateur d’un autre domaine est modifié, ou bien lors d’une suppression, l’objet fantôme ne pourra pas être mis à jour ou supprimé du groupe sur tous les contrôleurs de domaine du domaine contenant cette référence.

L’impact de la perte de ce rôle dépend donc grandement de l’infrastructure Active Directory en place puisqu’il est nul pour une infrastructure mono forêt mono domaine.

Emulateur PDC

Présentation

Le rôle émulateur PDC (contrôleur de domaine principal) est particulièrement important au bon fonctionnement de chaque domaine de la forêt.

Il assure quatre fonctions au sein d’un domaine Active Directory :

  • Permet la compatibilité avec des contrôleurs de domaine du type Windows NT et réplique les mises à jour à destination des contrôleurs secondaire de domaine NT
  • Gère le verrouillage des comptes utilisateurs et du changement des mots de passe
  • Gère les mécanismes de synchronisation horaire sur tous les contrôleurs de domaine du domaine (nécessaires aux horodatage insérés dans les paquets d’authentification Kerberos)
  • Réalise les modifications des stratégies de groupe du domaine (GPO) afin d’interdire toute possibilité d’écrasement et de conflit.

L’émulateur PDC est donc un rôle fondamental puisque les modifications de mot de passe exécutées par d’autres contrôleurs de domaine du domaine sont répliquées de préférence sur l’émulateur PDC. De plus, les échecs d’authentification qui se produisent en raison d’un mot de passe inexact sur un contrôleur donné dans un domaine sont transférés à l’émulateur PDC avant que l’échec ne soit signalé à l’utilisateur dans un message.

En cas d’indisponibilité

La perte du contrôleur qui détient le rôle émulateur PDC est lourde de conséquences. En effet, la perte de ce contrôleur empêche tout nouveau changement de mot de passe et le verrouillage de compte utilisateur, peut entrainer une perte de synchronisation entre les DC ainsi que des problèmes d’authentification Kerberos et des problèmes lors de l’application des GPO.

Synthèse

Emplacement

Rôle FSMO

Description

Impact

Forêt

Maitre d’attribution des noms de domaine

Gère les noms de domaine (création, modification et suppression)

Faible

Contrôleur de schéma

Gère la modification du schéma Active Directory

Faible

Domaine

Maitre RID

Distribue les pools RID aux autres contrôleurs de domaine

Faible/Modéré

Maitre d’infrastructure

Gère les comptes entre différents domaines (objets fantômes)

Faible/Modéré

Emulateur PDC

Gère le temps, la réplication des mots de passe, les erreurs d’authentification et la compatibilité avec les domaines NT4.

Critique

 

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=1134 1
[Active Directory] Mémo sur la méthode AGDLP https://blog-sysadmin.archives.slashroot.fr/?p=815 https://blog-sysadmin.archives.slashroot.fr/?p=815#respond Mon, 24 Dec 2012 13:35:49 +0000 http://blog.slashroot.fr/?p=815 La méthode AGDLP (Account, Global group, Domain Local group, Permission) est la méthode recommandée par Microsoft pour gérer l’accès aux fichiers partagés en fonctions des différents groupes AD.

Le principe est le suivant :

  • Les utilisateurs sont affectés à un groupe global
  • Les groupes globaux sont ajoutés aux groupes locaux
  • Les groupes locaux se voient attribués des permissions au niveau des ressources partagées

Les groupes globaux regroupent donc des utilisateurs qui se voient accorder des droits via des groupes locaux sur des ressources partagées.

En plus de la méthode AGDLP, comme vu dans le schéma précédant, chaque ressource sera liée à trois groupes locaux, chacun disposant de droits spécifiques :

  • Contrôle total (CT)
  • Lecture / Ecrite (RW)
  • Lecture (RO)

Cela permet ainsi d’affecter à des groupes d’utilisateurs des droits spécifiques pour une même ressource. Dans l’exemple du schéma AGDLP, les utilisateurs du service Etudes d’Orsay se voient affecter des droits en lecture/écriture sur le dossier « Projet MIR».

Nous pouvons imaginer que les collaborateurs du service Production d’Orsay aient besoin de visualiser le contenu du dossier « Projet MIR ». Avec cette méthode il suffira alors d’ajouter le groupe global « G_ORS_Production » contenant les utilisateurs du service Production d’Orsay au groupe local « L_ProjetMIR_RO » permettant l’accès au dossier « ProjetMIR » en lecture seule.

Dans le cas où des personnes n’appartenant pas au même service auraient besoin d’accéder à une ressource spécifique il faudra alors créer un groupe global spécifique. Par exemple si chaque chef de service doit pouvoir accéder en lecture au dossier relatif à la comptabilité il faudra alors créer le groupe global « G_ORS_Direction » associé au groupe local « L_Comptabilite_RO ».

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=815 0
[Active Directory] Supprimer un contrôleur de domaine HS https://blog-sysadmin.archives.slashroot.fr/?p=793 https://blog-sysadmin.archives.slashroot.fr/?p=793#respond Mon, 24 Dec 2012 13:31:00 +0000 http://blog.slashroot.fr/?p=793 Lorsqu’un DC devient HS, il est toujours présent dans l’architecture Active Directory tant qu’il n’a pas été « dépromu » ou supprimé.

Il faut alors utiliser NTDSUTIL pour le supprimer :

C:\Documents and Settings\Administrateur>ntdsutil
ntdsutil: metadata cleanup
metadata cleanup: connections
server connections: connect to server MonDCQuiFonctionne
Liaison à MonDCQuiFonctionne...
Connecté à MonDCQuiFonctionne en utilisant les informations d'identification d'un
utilisateur connecté localement.
server connections: quit
metadata cleanup: select operation target
select operation target: list domains
1 domaine(s) trouvé(s)
0 - DC=em-corporation,DC=fr
select operation target: select domain 0
Aucun site actuellement
Domaine - DC=em-corporation,DC=fr
Aucun serveur actuellement
Pas de contexte de nommage en cours
select operation target: list sites
1 site(s) trouvé(s)
0 - CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
select
operation target: select site 0
Site - CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Domaine - DC=em-corporation,DC=fr
Aucun serveur actuellement
Pas de contexte de nommage en cours
select operation target: list servers in site
3 serveur(s) trouvé(s)
0 - CN=MonDCQuiFonctionne,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
1 - CN=Un2emeDCFonctionnel,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
2 - CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
select operation target: select server 2
Site - CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Domaine - DC=em-corporation,DC=fr
Serveur - CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Objet DSA - CN=NTDS Settings,CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Nom d'hôte DNS - MonDC-HS.em-corporation.fr
Objet Ordinateur - CN=MonDC-HS,OU=Domain Controllers,DC=em-corporation,DC=fr
Pas de contexte de nommage en cours
select operation target: quit
metadata cleanup: remove selected server
Transfert ou prise des rôles FSMO depuis le serveur sélectionné.
Suppression des métadonnées FRS du serveur sélectionné
Recherche des membres FRS sous "CN=MonDC-HS,OU=Domain Controllers,DC=em-corporation,DC=fr".
Suppression du membre FRS "CN=MonDC-HS,CN=Domain System Volume (SYSVOL share),CN=File Replication Service,CN=System,DC=em-corporation,DC=fr".
Suppression de l'arborescence sous "CN=MonDC-HS,CN=Domain System Volume (SYSVOL share),CN=File Replication Service,CN=System,DC=em-corporation,DC=fr".
Suppression de l'arborescence sous "CN=MonDC-HS,OU=Domain Controllers,DC=em-corporation,DC=fr".
La tentative de suppression des paramètres FRS sur CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr a échoué.
Raison : "Élément introuvable.".
Le nettoyage des métadonnées continue.
"CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr" supprimé du serveur "MonDCQuiFonctionne"
metadata cleanup: quit
ntdsutil: quit
Déconnexion de MonDCQuiFonctionne...

Une fois ceci fait il ne reste plus qu’à supprimer le serveur au niveau de la console « Sites et services Active Directory » et de supprimer ses enregistrements DNS.

Au sein de la console « Sites et services Active Directory », développer, Sites, NomDuSite, Serveurs puis supprimer le serveur en question.

Au niveau DNS, se rendre dans la zone concernée et supprimer l’enregistrement A puis dans « DomainDnsZones » supprimer l’enregistrement correspondant :

Pour finir se rendre dans « _msdcs.NomDeDomaine.Ext et supprimer l’enregistrement CNAME :

Le DC est maintenant proprement supprimé et son objet AD devrait également avoir été supprimé.

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=793 0
[Active Directory] Saisir des rôles FSMO https://blog-sysadmin.archives.slashroot.fr/?p=774 https://blog-sysadmin.archives.slashroot.fr/?p=774#respond Mon, 17 Dec 2012 15:48:10 +0000 http://blog.slashroot.fr/?p=774 Lorsqu’un DC hébergeant des rôles FSMO devient HS, la seule solution concernant les rôles FSMO est de les saisir (seize en anglais) car le transfert est impossible.

Il faut alors utiliser NTDSUTIL pour se connecter au serveur qui va recevoir les rôles FSMO (avec le compte administrateur, nécessaire pour récupérer le rôle schéma master) :

C:\Documents and Settings\Administrateur>ntdsutil
ntdsutil: roles
fsmo maintenance: connections
server connections: connect to server MonDCQuiFonctionne
Liaison à MonDCQuiFonctionne...
Connecté à MonDCQuiFonctionne en utilisant les informations d'identification d'un
utilisateur connecté localement.
server connections: q

Une fois en « fsmo maintenance » il suffit de saisir les rôles un par un :

fsmo maintenance: Seize infrastructure master
Tentative de transfert sûr de infrastructure FSMO avant la cessation.
Erreur ldap_modify_sW 0x34(52 (Non disponible).
Le message d'erreur étendue Ldap est 000020AF: SvcErr: DSID-03210333, problem 5002 (UNAVAILABLE), data 1722
L'erreur Win32 renvoyée est 0x20af(L'opération FSMO demandée a échoué. Le propriétaire FMSO actuel n'a pas pu être contacté.)
)
Selon le code d'erreur, ceci peut indiquer une erreur Ldap, de connexion ou de transfert de rôle.
Le transfert de infrastructure FSMO a échoué, cessation en cours...
Le serveur « MonDCQuiFonctionne » est informé de 5 rôles
Schéma - CN=NTDS Settings,CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Maître d'attribution de noms - CN=NTDS Settings,CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
PDC - CN=NTDS Settings,CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
RID - CN=NTDS Settings,CN=MonDC-HS,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr
Infrastructure - CN=NTDS Settings,CN=MonDCQuiFonctionne,CN=Servers,CN=Premier-Site-par-defaut,CN=Sites,CN=Configuration,DC=em-corporation,DC=fr

fsmo maintenance: Seize naming master
[...]

fsmo maintenance: Seize PDC
[...]

fsmo maintenance: Seize RID master
[...]

fsmo maintenance: Seize schema master
[...]

Une fois les cinq rôles récupérer il suffit de quitter :

fsmo maintenance: quit

Le serveur spécifié lors de la connexion dispose maintenant des rôles FSMO saisis.

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=774 0
[Active Directory] Ajout de stations de travail au domaine https://blog-sysadmin.archives.slashroot.fr/?p=743 https://blog-sysadmin.archives.slashroot.fr/?p=743#respond Tue, 06 Nov 2012 14:50:30 +0000 http://blog.slashroot.fr/?p=743 Par défaut tous les utilisateurs du domaine (groupe utilisateurs authentifiés) ont la possibilité d’intégrer 10 ordinateurs  au domaine.

Pour mettre en place une politique plus restrictive il existe deux méthodes :

Restreindre le droit d’ajout

La configuration s’effectue sur la GPO de base des DC (Default Domain Controllers Policy) dans le menu :

Configuration ordinateur -> Stratégies -> Paramètres Windows -> Paramètres de sécurité -> Stratégies locales -> Attribution des droits utilisateurs -> Ajouter des stations de travail au domaine

Il suffit alors de choisir les groupes qui auront le droit d’intégrer des stations de travail au domaine:

Limiter le nombre d’ajouts

La configuration s’effectue via la console ADSI, dans les propriétés de la racine (via un clic droit) :

Il suffit alors de modifier la valeur de l’attribut « ms-DS-MachineAccountQuota » (le mettre à 0 si l’on ne souhaite pas que les utilisateurs puisse intégrer des postes de travail).

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=743 0
[Powershell] Liste des utilisateurs ne s’étant pas connectés au domaine depuis plus de 30 jours https://blog-sysadmin.archives.slashroot.fr/?p=626 https://blog-sysadmin.archives.slashroot.fr/?p=626#comments Thu, 12 Jul 2012 13:15:41 +0000 http://blog.slashroot.fr/?p=626 # Nom : Comptes_inactifs.ps1 # Date : 17/02/2012 # Auteur : Johan # Description : Liste les utilisateurs qui ne se sont pas connectés au domaine depuis # plus de 30 jours et envoi le résultat par mail # Commentaire : Exécution tous les 1er du mois # Recherche dans l'OU souhaité tous les comptes utilisateurs $ldapquery = [ADSI] 'LDAP://OU=Utilisateurs,DC=em-corporation,DC=fr' $objrechercher = New-object system.directoryservices.directorysearcher($ldapQuery) $objrechercher.filter ='(&(objectClass=person)(objectCategory=person))' $boucle = $objrechercher.findall() $liste="" # Fonction Get-UTCAge permettant de transformer la valeur du lastlogon en date afin de calculer le nombre de jours depuis la dernière connexion Function Get-UTCAge { Param([int64]$Last=0) if ($Last -eq 0) { } else { [datetime]$utc="1/1/1601" $i=$Last/864000000000 $lastlogon = ($utc.adddays($i)) $today=get-date $diff=($today)-($lastlogon) # Si l'utilisateur ne s'est pas connecté depuis au moins 30 jours on ajoute son nom à la liste if ($diff.Days -gt 30) { write "$name`r" } } } # Pour chaque utilisateur foreach ($user in $boucle) { # On vérifie qu'il possède une adresse email (permettant de différencier les comptes utilisateurs des comptes génériques ou applicatifs) if ($user.properties.mail) { # On récupère le nom et le lastlogon de l'utilisateur $name = $user.properties.name $last = $user.Properties.lastlogon $liste+=Get-UTCAge $user.properties.item("lastlogon")[0] } } # On prépare et on envoi le mail $expediteur = "bob@em-corporation.fr" $destinataire = " admin@em-corporation.fr" $serveur = "@MTA" $objet = "Active Directory - Utilisateurs inactifs" $texte = "Bonjour,`r`rVoici la liste des utilisateurs ne s'étant pas connectés au domaine depuis plus de 30 jours :`r`r$liste`rCordialement`r--`rBob" $message = new-object System.Net.Mail.MailMessage $expediteur, $destinataire, $objet, $texte $SMTPclient = new-object System.Net.Mail.SmtpClient $serveur $SMTPclient.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials $SMTPclient.Send($message) ]]> https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=626 8 [PsExec] Déployer un exécutable depuis un partage réseau https://blog-sysadmin.archives.slashroot.fr/?p=646 https://blog-sysadmin.archives.slashroot.fr/?p=646#respond Mon, 04 Jun 2012 09:02:57 +0000 http://blog.slashroot.fr/?p=646 Installation d’un package depuis un dossier partagé sur un PC distant :

psexec -d -s \\PC_Cible \\PC_Partage\Setup.exe /q

-d permet de ne pas attendre que l’application se termine (à utiliser uniquement pour les applications non interactives)

-s permet d’exécuter le processus dans le compte System

]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=646 0