Archive

Archives pour la catégorie ‘Active Directory’

Lister les Licence Terminal Server

Ce script m’a permit de lister tous les serveurs gestionnaires de licences terminal server dans le domaine.
LSVIEW.EXE permet de faire cette recherche mais ne fouille pas recoins lointains d’un domaine important.
Le script ci-dessous est plus agressif, il vérifie la présence du service « TermServLicensing » sur tous les Windows Server du domaine.

 
$Input = Get-QADComputer -SizeLimit 0 | where {$_.OSName -match "Windows Server" }
 
$expfileok = New-Item -ItemType file -Path .\TermServLicensing.csv -Force
Add-Content -Path $expfileok -Value "Name,OK"
 
 
foreach ($server in $Input)
{
$version = $null
$version = Get-WmiObject Win32_OperatingSystem -ComputerName $server.name -ErrorAction SilentlyContinue
 
	If ( $version -eq $null)
	{
		Write-Host $server.name " Inaccessible." -Separator ","  -ForegroundColor Red
	}
	Else
	{
 
	$Service = Get-Service -ComputerName $server.name -Name "TermServLicensing" -ErrorAction SilentlyContinue
		If ($Service.name -eq "TermServLicensing")
		{
		Write-Host $server.name "OK"-Separator "," -ForegroundColor Green
		Add-Content -Path $expfileok -Value "$($server.name),$("OK")"
 
		}
	}	
}

Déplacer les membres d’un groupe

Déplacez les membres d’un groupe vers un autre groupe Active Directory.

$groups = Read-Host "Entrez le nom du groupe source"
$groupt = Read-Host "Entrez le nom du groupe cible"
$members = Get-QADGroupMember -Identity $groups
Foreach ( $member in $members) {
if ( $member -ne $null) {
Add-QADGroupMember -Identity $groupt -Member $member.dn
Remove-QADGroupMember -Identity $groups -Member $member.dn
}
}

Categories: Active Directory Tags: ,

Copier les membres d’un groupe

Copie les membres d’un groupe dans une autre groupe Active Directory.

$groups = Read-Host "Entrez le nom du groupe source"
$groupt = Read-Host "Entrez le nom du groupe cible"
$members = Get-QADGroupMember -Identity $groups
Foreach ( $member in $members) {
Add-QADGroupMember -Identity $groupt -Member $member.dn
}

Categories: Active Directory Tags: , ,

Lister les utilisateurs absents de groupes

Si vérifier qu’un utilisateur n’est pas membre d’un groupe est rapide

Get-QADUser -Identity "louis.defunes" -NotMemberOf "Gendarmerie"

ou si lister les utilisateurs d’un OU qui ne sont pas membres d’un groupe est facile,

Get-QADUser -SearchRoot "domain.local/StTropez" -SizeLimit 0 -NotMemberOf "Gendarmerie"

faire la même chose pour tous les utilisateurs d’une OU pour plusieurs groupes est plus compliquée.
Voici donc comment lister les utilisateurs d’un OU absents de deux groupes.

$ou = Read-Host "Enter the OU name"
$fullou = "domain.local/" + $ou
$group1 = "Gendarmerie"
$group2 = "Port"
Get-Mailbox -ResultSize Unlimited -OrganizationalUnit $ou | where {Get-QADUser $_.alias -NotMemberOf $group1 } | where {Get-QADUser $_.alias -NotMemberOf $group2 }

Compter le nombre de membres dans un groupe

Pour compter rapidement le nombre de membres dans un groupe.

$gp  = Read-Host "Enter group name"
$member = $null
Get-QADGroupMember -SizeLimit 0 -Identity $gp | foreach {
$member++
}
Write-Host $member " in " $gp

Ajouter les ordinateurs d’une OU dans un groupe

Permet d’ajouter les ordinateurs d’un OU dans un groupe.

Get-QADComputer -SizeLimit 0 -SearchRoot "domain.local/OU01_Paris" | foreach { Add-QADGroupMember -Identity "OU01-Paris-Comp" -Member $_.name }

La même chose avec un filtrage sur le nom des ordinateurs.

Get-QADComputer -SizeLimit 0 -SearchRoot "domain.local/OU01_Paris" | Where-Object { $_.name -like "frlt*" -or $_.name -like "frdt*" } | foreach { Add-QADGroupMember -Identity "OU01-Paris-Comp" -Member $_.name }

Categories: Active Directory Tags: ,

Configurer un proxy auto dans Firefox par GPO

firefox_proxy_gpo

La méthode suivante permet de configurer une « Adresse de configuration automatique du proxy » dans Mozilla Firefox par GPO dans Active Directory.

Tout d’abord, préparer un batch pour la configuration.

cd "%userprofile%Application DataMozillaFirefoxProfiles*default"
c:
type prefs.js >> temp.txt
echo user_pref("network.proxy.autoconfig_url", "http://myproxy.domain.com/proxy.pac") >> temp.txt
echo user_pref("network.proxy.type", 2) >> temp.txt
move /y temp.txt prefs.js

Ce batch ajoute deux lignes à la fin du fichier de configuration de Firefox présent dans le profil de l’utilisateur qui l’exécute.
A l’ouverture de Firefox, celui-ci remplace les lignes de configurations déjà existante par celle se trouvant à la fin du fichier. Il n’y aura donc pas de lignes en double dans le fichier.
En ajoutant uniquement ces deux lignes, cela évite également de modifier le reste de la configuration de l’utilisateur. (Préférences, page d’acceuil…)
Vous pouvez afficher la configuration de Firefox en tapants about:config dans la barre d’adresse.

Pour la mise en place de la GPO, il suffit de configurer l’exécution du script au logon dans la configuration utilisateur de la stratégie de groupe.

Cette méthode permet de configurer d’avantage d’options ou configurer différemment le proxy dans Firefox.

Liste les serveurs membres d’une OU

Permet de lister tous les serveurs membres du domaine présent dans une OU.
Cette liste exclut donc les contrôleurs de domaine.

Get-QADComputer -SearchRoot "domain.local/FI00_Paris" |
Foreach {
 
$start = $_.name.StartsWith("SRV")
		if ( $start -eq  "true" -and $_.ComputerRole -ne "DomainController"  ){
		Write-Host $_.name
		}
		else {}
		}

Categories: Active Directory Tags:

Renseigner les téléphones d’un utilisateur

Renseigner individuellement les numéros de téléphone d’un utilisateur dans l’AD.
Cela me permet ensuite de pouvoir les appeler depuis Communciator sans systématiquement redemander le numéro.
Dans 10 ans, l’annuaire sera à jour. :D

Numéro du bureau.

$User  = Read-Host "Enter user name or alias"
$number = Read-Host "Enter the phone number (+33 154876532)"
Set-User -Identity $User -Phone $number

Numéro de portable:

$User  = Read-Host "Enter user name or alias"
$number = Read-Host "Enter the phone number (+33 654876532)"
Set-User -Identity $User -MobilePhone $number

Activer l’héritage de la sécurité sur un compte

Permet de activer rapidement l’héritage des permissions dans les sécurités d’un compte AD.

$user  = Read-Host "Enter user's logon"
Get-QADUser $user | Set-QADObjectSecurity -UnlockInheritance

Categories: Active Directory Tags: ,