Extraire l’espace d’adressage d’un connecteur.

Voici comment extraire rapidement l’espace d’adressage d’un connecteur d’envoi SMTP Exchange 2007.

$conn = Get-SendConnector -Identity "ToExtRouters"
$conn.AddressSpaces | Select-Object Domain

Categories: Exchange 2007 Tags: ,

Gestion des ports TCP/UDP.

CurrPorts est un petit utilitaire très pratique pour visualiser les ports utilisés par votre ordinateur.
Il permet surtout de savoir qu’elle application utilise quels ports TCP ou UDP.
Et plein d’autres informations et actions.

Monitoring Ports TCP/UDP

Téléchargeable ici.

Categories: Windows 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 }

Take the power !

Categories: Divers Tags:

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

Vérifier et activer la politique d’adresses e-mail.

Utiliser cette méthode pour vérifier qui n’applique la politique d’adresses e-mail.

Get-Mailbox -ResultSize unlimited -OrganizationalUnit "domain.local/Paris" | Where-Object { $_.EmailAddressPolicyEnabled -eq $false } | ft displayname,alias,PrimarySmtpAddress

Dans mon cas, j’applique ce script pour savoir si la politique peut être appliquée sans qu’elle modifie l’adresse SMTP principale.
Si c’est le cas, je l’applique.

Get-Mailbox -ResultSize unlimited -OrganizationalUnit "domain.local/Paris" | Where-Object { $_.EmailAddressPolicyEnabled -eq $false } | foreach {
$normalsmtp = $_.alias + "@domain.com"
$prismtp = $_.PrimarySmtpAddress
if ( $normalsmtp -ne $prismtp) {
$_.displayname
}
Else{
Set-Mailbox -Identity $_.alias -EmailAddressPolicyEnabled $true
}
}

Categories: Exchange 2007 Tags: ,

Modification des droits sur les Databases.

Certaines applications connectées aux serveurs Exchange nécessite des droits pour intéragir avec les boites aux lettres.
C’est le cas d’applications type messagerie unifiées Astraa, Cisco… qui utilisent le connecteur IMAP pour déposer des messages et vérifier si le message vocal a été lu.

Get-MailboxDatabase -Server CCR004 | Where-Object { $_.name -match "IDF"} | foreach {
$dn = $_.DistinguishedName
Add-ADPermission -Identity $dn -User "messucp.idf" -ExtendedRights Send-As
Add-ADPermission -Identity $dn -User "messucp.idf" -ExtendedRights Receive-As
}

Modifier les adresses de MailContacts.

Modifier le domaine de l’adresse externe sur tous les MailContacts d’un OU.

$nldomcontact = Get-MailContact -OrganizationalUnit "domain.local/NL" -ResultSize unlimited | Where-Object { $_.ExternalEmailAddress -match "@domino.domain.com" }
foreach ($contact in $nldomcontact){
$extsmtp = "SMTP:" + $contact.alias + "@nl.domain.com"
Set-MailContact -Identity $contact -ExternalEmailAddress $extsmtp
}

Categories: Exchange 2007 Tags:

Identifier les clients qui utilisent un connecteur de réception.

Permet de visualiser les IP des clients qui utilisent un connecteur de réception d’un serveur de transport.

Get-MessageTrackingLog -ResultSize Unlimited -Server HUB001 -Start "20/10/2010 15:50:00" | Where-Object { $_.ConnectorId -match "open" } | Select-Object ClientIP -Unique | Sort-Object ClientIP }

Categories: Exchange 2007 Tags: ,

Tracer un message sur tous les HUB.

Permet de tracer un messages en vérifiant tous les serveurs de transport en une commande.

Get-ExchangeServer | Where-Object { $_.ServerRole -eq "HubTRansport" } | foreach { Get-MessageTrackingLog -Server $_.name -Sender testdemessage@gmail.com -Start "20/10/2010 12:50:00" | ft Timestamp,EventId,ClientIp,ServerIp,Sender,Recipients -AutoSize }

Categories: Exchange 2007 Tags: ,