fév
16
2010

Gérer les sessions TSE (RDP) avec Powershell.

Enfin, il est maintenant facile de visualiser, déconnecter et arrêter des sessions RDP sur un serveur distant via Powershell.
Il s’agit de commande ajoutées avec PSCX.

Afficher les sessions en cours:

Get-TerminalSession -ComputerName "server001"

Déconnecter la session de l’ID 2:

Disconnect-TerminalSession -ComputerName "server001" -Id 2

Arrêter la session de l’ID 2:

Stop-TerminalSession -ComputerName "server001" -Id 2

fév
16
2010

Export de Powershell vers Excel.

Permet de renvoyer les informations affichés de Powershell ver Excel.
Les lignes sont renseignées en temps réelle.

$a = New-Object -comobject Excel.Application
 
$a.Visible = $True
 
$b = $a.Workbooks.Add()
$c = $b.Worksheets.Item(1)
 
$col = 1
$ligne = 1
 
$c.Cells.Item(1,1) = "DisplayName"
$c.Cells.Item(1,2) = "Alias"
$c.Cells.Item(1,3) = "Database"
 
$ligne++
 
Get-Mailbox -Identity *christophe* | foreach {
	$displayname = $_.displayname
	$alias = $_.alias
	$database = $_.database
	$col = 1
	$c.Cells.Item($ligne,$col) = [string]$displayname
	$col++
	$c.Cells.Item($ligne,$col) = [string]$alias
	$col++
	$c.Cells.Item($ligne,$col) = [string]$database
	$ligne++
}

En ajoutant les lignes suivantes, il est possible d’automatiser l’enregistrement et la fermeture du document.

$b.SaveAs("C:\Resultats\Result_Christophe.xls")
$a.Quit()

fév
16
2010

Le contrôle de l’utilisation de la messagerie.

cnil

Le contrôle de l’utilisation d’internet et de la messagerie.

On en en parle pas souvent, on en a une vague idée mais il existe un cadre.

La CNIL a publié une fiche pratique sur les droits et devoirs de l’entreprise et des salariés pour l’utilisation d’Internet et la Messagerie.

Il y a quelques informations à découvrir ici.

fév
11
2010

Copier les listes de distribution d’une boite.

Permet d’ajouter une boite dans les listes de distribution dont est membre un autre boite.

$srcuser = "goldorak"
$trgtuser = "albator"
Get-DistributionGroup -ResultSize unlimited -OrganizationalUnit "domain.local" | foreach {
$groupname = $_.name
Get-DistributionGroupMember -Identity $groupname | Where-Object { $_.Alias -eq $srcuser } | foreach {
$groupname
Add-DistributionGroupMember -Identity $groupname -Member $trgtuser 
#Remove-DistributionGroupMember -Identity $groupname -Member $srcuser
}
}

fév
9
2010

Créer une DL pour les boites d’une database.

Permet de créer rapidement un groupe de distribution pour la communication aux boites d’une database.

New-DistributionGroup -OrganizationalUnit "domain.local/OU02_Paris" -Name OU02-DB_Paris_5-BAL -Type Security -SamAccountName OU02-DB_Paris_5-BAL
Get-Mailbox -Database CCR001\DB_Paris_5 | foreach { Add-DistributionGroupMember -Identity OU02-DB_Paris_5-BAL -Member $_.alias }

fév
8
2010

Filtrer les boites dans une fourchette de tailles.

Ce filtre affiche les boites de plus de 650MB et moins de 900MB d’une database et qui n’ont pas le CustomAttribute4 renseigné.

Ce filtre me permet ensuite de lancer un move-mailbox afin d’alléger des databases trop chargées.

Get-Mailbox -Database ccr001\DB_SG_Paris_5 | Where-Object { $_.CustomAttribute4 -ne "mailboxwithblackberry" } | foreach { Get-MailboxStatistics -Identity $_.alias | Where-Object { $_.totalitemsize -gt 650mb -and $_.totalitemsize -lt 900Mb }} | ft displayname, database, @{ expression={$_.TotalItemSize.Value.ToMB() } ;label="TotalItemSize (MB)" }

fév
6
2010

Exchange 2010 Transport Role Architecture.

fév
4
2010

Afficher le Lastlogon des utilisateurs d’une OU.

Affiche le lastlogon des utilisateurs d’un OU.

Get-QADUser -IncludeAllProperties -SizeLimit 0 -SearchRoot "domain.local/OU_01" | ft Name,SamAccountName,LastLogon

fév
3
2010

Afficher les boites restreintes par un quota.

Affiche les boites de plus de 500MB qui ont l’héritage de configuration des quotas actif.
J’ai ajouté un filtre sur le serveur et les databases d’une filiale.

Get-MailboxStatistics -Server CCR004| Where {$_.Database -match "paris" -and $_.TotalItemSize -gt 500MB} | ForEach-Object { $size = $_.TotalItemSize ; Get-mailbox -Identity $_.displayname | where-object { $_.UseDatabaseQuotaDefaults -eq "false" }}| Select-Object displayname,alias,database, @{ expression={$size.Value.ToMB() } ;label="TotalItemSize (MB)" }

fév
3
2010

Appliquer un quota sur plusieurs databases.

Permet d’appliquer les quotas sur toutes les databases d’une filiale.

Get-MailboxDatabase -Server CCR001 | Where-Object { $_.name -match "paris" } | Set-MailboxDatabase -IssueWarningQuota 400MB -ProhibitSendQuota 500MB