Création script
This commit is contained in:
parent
91426c80d2
commit
f0d6701cd2
|
@ -0,0 +1,57 @@
|
|||
#Script créé par Nicolas Lang - Sous licence CC-BY-SA
|
||||
#https://nicolaslang.fr
|
||||
|
||||
#Ajout du module AD pour les rebelles de la V1/ V2 ;)
|
||||
ipmo activedirectory
|
||||
#Obtention de la liste des serveurs
|
||||
$serveurs = Get-ADComputer -SearchBase "OU=Servers,DC=domaine,DC=local" -filter * | Select-Object -ExpandProperty name
|
||||
#Creation du tableau qui stockera les données
|
||||
$tableau = New-Object System.Collections.ArrayList
|
||||
#Fonction utilisée pour stocker les données ET les erreurs
|
||||
function addarray([string]$serveur,[string]$description=$null,[string]$serveur1=$null,[string]$serveur2=$null)
|
||||
{
|
||||
#définition de l'objet envoyé dans le tableau
|
||||
$object = [PSCUSTOMOBJECT]@{
|
||||
"Ordinateur" = $serveur
|
||||
"Carte réseau" = $description
|
||||
"Serveur 1" = $serveur1
|
||||
"Serveur 2" = $serveur2
|
||||
}
|
||||
return $object
|
||||
}
|
||||
foreach ($serveur in $serveurs)
|
||||
{
|
||||
Write-Host "Analyse de $serveur"
|
||||
#On teste si ne réponds pas au ping. Si c'est le cas, on stocke l'erreur dans le tableau
|
||||
if (!(Test-Connection $serveur -Count 1))
|
||||
{
|
||||
$tableau.Add($(addarray -serveur $serveur -serveur1 $($Error[0].Exception.Message) -serveur2 "Erreur Ping"))
|
||||
}
|
||||
else
|
||||
{
|
||||
#Cette commande obtient la configuration de différentes cartes réseau. Pour filtrer les cartes actives, il suffit de savoir si l'adresse IP n'est pas vide.
|
||||
$configuration = Get-WmiObject Win32_NetworkAdapterConfiguration -ComputerName $serveur | where-object {$_.ipaddress -ne $null}
|
||||
#Si la derniere commande renvoie une erreur, on enregistre cette erreur
|
||||
if (!$?)
|
||||
{
|
||||
$tableau.Add($(addarray -serveur $serveur -serveur1 $($Error[0].Exception.Message )-serveur2 "Erreur"))
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach ($entry in $configuration)
|
||||
{
|
||||
#Si aucun DNS n'est renseigné sur la carte, alors on le précise dans le tableau
|
||||
if (!($($entry.DNSServerSearchOrder)))
|
||||
{
|
||||
$tableau.Add($(addarray -serveur $serveur -description $($entry.caption) -serveur1 "Aucun DNS" -serveur2 "Aucun DNS"))
|
||||
}
|
||||
else
|
||||
{
|
||||
$tableau.Add($(addarray -serveur $serveur -description $($entry.caption) -serveur1 $($entry.dnsserversearchorder[0]) -serveur2 $($entry.dnsserversearchorder[1])))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#Et on exporte le tout sur le bureau :)
|
||||
$tableau | Export-Csv -Path $([environment]::GetFolderPath("Desktop")+"\DNS_SERVEURS_"+$(get-date -Format mm_dd_yyyy)+".csv") -NoTypeInformation -Encoding UTF8 -Delimiter ";"
|
|
@ -1,5 +1,6 @@
|
|||
#Script créé par Nicolas Lang - Sous licence CC-BY-SA
|
||||
#https://nicolaslang.fr
|
||||
|
||||
import-module activedirectory
|
||||
$utilisateurs = Get-ADUser -Filter * -Properties *
|
||||
$actifs = $utilisateurs | Where-Object {$_.enabled -eq $true}
|
||||
|
|
Loading…
Reference in New Issue
Block a user