Diagnostic du pack Exchange

Objectifs

Cette note vise à décrire le fonctionnement de la surveillance des boîtes aux lettres d’Exchange par Microsoft Operations Manager (MOM) Elle s’applique aux versions 2000 et 2003 d’Exchange et 2000 SP1 et 2005 de MOM 2005) et à en effectuer un diagnostic.

Comment cela fonctionne

MOM surveille la disponibilité des boîtes aux lettres de chaque serveur Exchange surveillé en se connectant à l’aide du protocole MAPI depuis un compte d’accès MAPI (MAA pour Mailbox Access Account). Ce compte reçoit les droits nécessaires sur des boîtes de tests. La connexion a lieu sur les serveurs Exchange sur lesquels le script « Exchange 2003 – MAPI logon verification » s’exécute. Pour que ce script s’exécute convenablement, il faut qu’il utilise le compte c’accès MAPI et son mot de passe. Pour cela, il décrypte une copie des paramètres de connexion qui est stockée dans la base de registre des serveurs Exchange. Ces paramètres de connexion sont encryptés par l’utilitaire SetCredentialUtility ou à travers l’assistant de configuration du pack d’administration Exchange.

Avant de stocker ces informations dans la base de registre du serveur Exchange, une clé doit être générée par une application DCOM qui est déclenchée par le script « Exchange - Publish ExMP Data ». Quand ce script a été exécutée avec succès et que la clé a été crée, l’événement suivant est consignée sur le serveur Exchange :

Nature de l’événement

Contenu

Description

Successfully published Exchange Management Pack data required for performing MAPI logon on Exchange server: "SERVERNAME This event was generated by the script: "Exchange - Publish ExMP Data"

 

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Information

Provider Name

Script-generated Data

Event Number

9986

Provider Type

Generic Provider

Source

Exchange MOM

Il y a plusieurs raisons pour lesquelles cet événement peut ne pas se produire qui seront détaillées ci-après.

Comment savoir qu’un problème existe ?

Si l’événement 9986 n’est pas consigné sur un serveur Exchange, la clé de registre peut être absente et l’encryptage et stockage des paramètres de connexion du MAA peuvent être impossibles. Dans ce cas, l’erreur suivante apparaît à l’exécution de l’assistant de configuration du pack d’administration Exchange :

Nature de l’événement

Contenu

Description

Error: Cannot configure the mailbox access account on computer <servername>. This configuration can only be made after the Exchange MOM event 9986 is registered by MOM

Type

Error

La clé suivante doit être vérifiée :

HKLM\SOFTWARE\Microsoft\ExMPLS

Si la clé n’est pas présente, il faut, en premier lieu, déterminer la cause de cet échec. Le script « Exchange - Publish ExMP Data » peut remonter d’autres événements pour guider le diagnostic.

Attention ! Ces événements ne sont pas visibles dans le journal des événements des applications du serveur Exchange, mais dans la console MOM uniquement !

Sur le pack Exchange 2000 de MOM 2000 SP1 :

Nature de l’événement

Contenu

Description

Failed to publish Exchange Management Pack data required for performing MAPI logon on Exchange server <servername>

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Error

Provider Name

Script-generated Data

Event Number

9970

Provider Type

Generic Provider

Source

Exchange MOM

Cet événement 9970 signifie que l’objet COM utilisé pendant la création de la clé de registre a échoué pendant son exécution.

Nature de l’événement

Contenu

Description

Failed to create the object 'ExchKP.PubKeyPublisher'

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Error

Provider Name

Script-generated Data

Event Number

9972

Provider Type

Generic Provider

Source

Exchange MOM

Cet événement 9972 signifie que l’objet COM utilisé pour la création de la clé n’est pas installé ou n’est pas enregistré.

Sur le pack Exchange 2003 de MOM 2000 SP1 et MOM 2005:

Nature de l’événement

Contenu

Description

Failed to publish Exchange Management Pack data required for performing MAPI logon on Exchange server:" SERVERNAME. This event was generated by the script: "Exchange - Publish ExMP Data

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Error

Provider Name

Script-generated Data

Event Number

10000

Provider Type

Generic Provider

Source

Exchange MOM

Cet événement 10000 signifie que l’objet COM utilise pendant la création de la clé de registre a échoué pendant son exécution.

Nature de l’événement

Contenu

Description

Failed to create the object 'EMPKP.PubKeyPublisher'. This event was generated by the script: "Exchange - Publish ExMP Data"

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Error

Provider Name

Script-generated Data

Event Number

10001

Provider Type

Generic Provider

Source

Exchange MOM

Cet événement 10001 signifie que l’objet COM utilisé pour la création de la clé n’est pas installé ou n’est pas enregistré.

Par défaut, ces événements ne déclenchent pas d’alertes MOM. Aussi, faut-il effectuer les vérifications dès l’installation du pack d’administration et le déploiement des règles sur les serveurs. Dès que ces événements sont consignés, le diagnostic peut continuer.

Si ces événements ne sont pas consignés, il faut poursuivre le diagnostic en vérifiant le fonctionnement du script « Exchange - Publish ExMP Data ». Ce script est appelé de 2 règles différentes : la première est « Daily Agent Mailbox data generation » qui est exécutée chaque jour à 2 heures. La seconde est « Publish data for Agent Mailbox impersonation ».

Cette règle est déclenchée à tout moment lorsque la règle « Check mailbox store availability - MAPI logon test » détermine qu’un serveur Exchange n’est pas correctement réglé et génère un événement 9987.

Si ces règles ne se déclenchent pas ou que le script tombe en échec, il faut poursuivre le diagnostic.

Les « DCOM helper objects »

MOM et le pack d’administration Exchange reposent sur plusieurs applications COM qui s’exécutent sur les serveurs Exchange pour effectuer plusieurs tâches de supervision. Ces applications sont installées sur les serveurs Exchange à travers des « DCOM helper objects » qui sont installés et enregistrés sur les serveurs Exchange et appelés par les scripts du pack d’administration à la demande. L’objet DCOM responsable de la publication de la clé des paramètres de connexion du MAA dépend de la version de MOM et d’Exchange.

Exchange 2000 and MOM 2000 SP1

Les fichiers du pack Exchange 2000 pour MOM 2000 SP1 sont ExchKP.exe et ExchKPps.dll. Ces fichiers sont installés par MOM sur le serveur Exchange 2000 quand le pack Exchange est déployé et les règles associées poussées vers les agents. Par défaut, ils sont installés dans le dossier C:\Program Files\Microsoft Operations Manager 2000\OnePoint.

Exchange 2000 and MOM 2005

Le fichier du pack Exchange 2000 pour MOM 2005 est empkp.exe. Ce fichier est également poussé par MOM vers l’agent des serveurs Exchange quand le pack est déployé. Par défaut, le fichier est dans C:\Program Files\Common Files\Exchange 2000 Management Pack Objects.

Exchange 2003 and MOM 2000 SP1, MOM 2005

Le fichier du pack Exchange 2003 pour MOM 2000 SP1 ou MOM 2005 est également le fichier empkp.exe. Il est copié vers le server Exchange 2003 pendant l’installation de l’agent MOM.

Le fichier de log peut indiquer les lignes suivantes :

[18:22:01] Copying c:\program files\exchsrvr\bin\empkp.exe

Ensuite, l’application DCOM s’enregistre et l’installation continue :

[18:34:03] Interpreting line <CreateProcess:C:\Program Files\Exchsrvr\bin;"C:\Program Files\Exchsrvr\bin\empkp.exe" /regserver;60000> -- ID:31259 --

[18:34:03] Process created ... waiting (60000)

[18:34:03] Process has exited with 00000000

N’importe quel serveur Exchange 2003 devrait avoir l’application DCOM EMPKP enregistrée lors de l’installation, qu’il soit la cible du pack d’administration ou non.

Dépannage

La première étape du diagnostic est de confirmer la présence des fichiers décris précédemment. Si les fichiers ne sont pas présents, il est possible de les copier depuis un autre serveur où ils figureraient, en respectant leur version d’Exchange et de MOM.

La seconde étape consiste à vérifier leur enregistrement et leur disponibilité.

Sur le serveur impacté, lancer DCOMCNFG. Dans la liste des applications COM+, doit figurer ExchKP (Exchange 2000 avec MOM 2000 SP1) ou EMPKP (Exchange 2000 and 2003).

Pour enregistrer manuellement ExchKP, ouvrir une invite de commande dans le répertoire où se trouve le fichier ExchKP.exe.

Composer l’instruction suivante :

ExchMP /regserver

Il n’y a pas d’indication de success ou d’échec de l’exécution.

Composer, ensuite, l’instruction suivante :

ExchMP /regsvr32

Vérifier l’enregistrement du composant comme précédemment indiqué.

Pour enregistrer manuellement EMPKP, ouvrir une invite de commande dans le répertoire où se trouve le fichier EMPKP.exe.

Composer l’instruction suivante :

EMPKP /regserver

Vérifier l’enregistrement du composant comme précédemment indiqué.

Si l’objet DCOM est enregistré, mais ne démarre pas, il y a un événement de type « Erreur » dans le journal des événements systèmes du serveur Exchange. Ceci intervient à chaque fois que le script « Exchange - Publish ExMP Data » est exécuté. L’événement est de type :

Nature de l’événement

Contenu

Description

Unable to start a DCOM Server: {94A6DCD0-B6F5-40E8-8C9D-CEE2C7796380}. The error: "d:\Program Files\Exchsrvr\BIN\empkp.exe -Embedding is not a valid Win32 application." Happened while starting this command: c:\Program Files\Exchsrvr\BIN\empkp.exe -Embedding

Domaine

DOMAINNAME

Computer

SERVERNAME

Type

Error

Event Category

Event Number

10000

Source

DCOM

Il y a différentes raisons qui expliquent cette erreur parmi lesquelles l’emplacement de l’exécutable. Vérifier dans la base de registre la clé suivante :

Pour ExchKP sur Exchange 2000

HKEY_CLASSES_ROOT\CLSID\{E3D2F927-69FA-4EFD-8D05-8726EF540A06}\LocalServer32

Cette clé est de type REG_SZ qui contient le chemin d’accès au fichier ExchKP.exe

Pour EMPPKP sur Exchange 2000 ou Exchange 2003 :

HKEY_CLASSES_ROOT\CLSID\{94A6DCD0-B6F5-40E8-8C9D-CEE2C7796380}\LocalServer32

Cette clé est de type REG_SZ qui contient le chemin d’accès au fichier EMPKP.exe

Par exemple, la valeur attendue devrait être quelque chose comme :

C:\PROGRA~1\Exchsrvr\bin\empkp.exe

Vérifier que le fichier existe à l’emplacement indiqué.

Si l’objet DCOM existe, mais que la clé ExMPLS n’est pas générée lors de l’exécution du script « Exchange - Publish ExMP Data », il peut y avoir des problèmes de permissions qui empêchent le script de créer l’objet « ExchKP.PubKeyPublisher ». Ceci génère les événements MOM 9972 ou 10001 (selon la version d’Exchange).

Pour tester ce point, créer un fichier de script VBScript contenant le code suivant :

Pour Exchange 2000 et MOM 2000 SP1:

Set oKeySet=CreateObject("ExchKP.PubKeyPublisher")

ErrID=oKeySet.Publish()

Msgbox ErrID

Pour Exchange 2000, Exchange 2003 et MOM 2005:

Set oKeySet=CreateObject("EMPKP.PubKeyPublisher")

ErrID=oKeySet.Publish()

Msgbox ErrID

S’il n’apparaît pas d’erreur DCOM de permission, le résultat doit être 0 (zéro) et les clés ExMPLS doivent être générées et la valeur REG_BINARY nommée DATA0 doit être stockée dans la clé. S’il y a un problème de permissions, le résultat sera différent de zéro.

Se référer à l’article 274696 pour ré-établir les permissions par défaut sur les objets DCOM.

L’encryptage des paramètres de connexion

Une fois que l’application DCOM est enregsitrée et fonctionne, le script « Exchange - Publish ExMP Data » peut fonctionner avec succès et générer une clé pour stocker les paramètres de connexions du MAA. Si l’événement 9986 est remonté par MOM pour le compte du serveur Exchange, la clé ExMPLS doit être présente sur le serveur Exchange.

Cette clé conserve une valeur de type REG_BINARY appelée DATA0. Cette valeur contient des données binaires qui représentent la « Public Key Blob » des paramètres de connexion du MAA. Si cette clé est présente, le serveur Exchange peut encrypter les paramètres de connexion du MAA.

L’étape suivante consiste en l’exécution de l’utilitaire SetCredential pour encrypter et écrire les paramètres de connexion du MAA dans la base de registre. Le nom du domaine, le compte et le mot de passe sont respectivement stockés dans les données DATA1, DATA2 et DATA3.

Lecture complémentaire

274696 Actions such as search and drag and drop do not work because the default

Remerciements

Merci à Judy Mac CALLUM, Bill GRAUER et quelques autres pour leur contribution initiale à la version anglaise de ce texte.