Exchange pour de vrai
https://sourcedaddy.com/windows-7/troubleshooting-exchange-server.html
Introduction
Cette page est destinée à contenir de vraies informations pratiques concernant les serveurs Exchange et comment les administrer, notamment en PowerShell.
Microsoft Exchange Server est un groupware (logiciel de groupe de travail) pour serveur de messagerie électronique créé par Microsoft. Il existe aussi en SaaS avec Office365.
Console ECP
La console ecp est accessible via https://<adresse>/ecp.
Elle permet de gérer la messagerie depuis une GUI.
Commandes PowerShell
Sources :
<pdf>Fichier:Exch.pdf</pdf>
Use the following commands to add or remove an email alias using Powershell commands:
To check current exchange mailbox aliases:
'''Get-Mailbox mailboxname | select -expand emailaddresses alias'''
To add an email alias to an exchange mailbox:
'''Set-Mailbox mailboxname -EmailAddresses @{Add='alias@somedomain.co.uk'}'''
To delete an email alias from an exchange mailbox:
Set-Mailbox mailboxname -EmailAddresses @{Remove=’alias@somedomain.co.uk’}
Re-lier une boîte dans une configuration avec une boîte liée
Dans un contexte avec plusieurs domaines AD, il se peut que les boîtes d'un domaine soient liées au comptes sur un autre domaine. Chaque boite est liée grâce au SID, un identifiant unique qui désigne le compte sur le domaine AD lié. Nous avons donc :
- Un domaine 1 avec un AD.
- Un autre domaine 2, avec des boîtes et avec son propre AD; mais pour une raison X les boites du domaine 2 sont liées au domaine 1.
Parfois, certaines boîtes peuvent se retrouver liées au mauvais SID. Voilà comment faire :
<syntaxhighlight lang="Powershell"> Get-Mailbox xxx@yyy | fl #On récupère les infos Disable-Mailbox xxx@yyy #On désactive la boîte d'une façon ou d'une autre Connect-Mailbox -LinkedDomainController "adc.domaine1" -LinkedMasterAccount "domaine1\madametruc" -Alias "truc" -Identity "Josiane Truc" -Database BASE-DB1 </syntaxhighlight>
Troubleshooting
MessageTrackingLog
Similaire à un maillog Linux, mais en moins pratique.
<syntaxhighlight lang="powershell"> Get-MessageTrackingLog -Recipients justine@domaine.fr Get-MessageTrackingLog -ResultSize Unlimited | Where-Object {$_.Recipients -like "*sarah.connor*"} </syntaxhighlight>
On dispose bien entendu des autres logs Windows (voir Analyse de logs), mais ils ne sont pas pratiques non plus.
Commandes de test
PowerShell contient de nombreux cmdlets de test, et il serait bête de ne pas s'en servir !
On peut les voir toutes avec :
<syntaxhighlight lang='powershell'> PS C:\Users\200029> Help Test-*
Name Category Module Synopsis
-------- ------ --------
Test-ActiveSyncConnectivity Cmdlet Cette cmdlet est disponible uniquement dans Ex... Test-ArchiveConnectivity Cmdlet [etc] </syntaxhighlight>
Les plus utiles :
- Test-ServiceHealth :Vérifie l'état des services Exchange