Le blog technique

Toutes les astuces #tech des collaborateurs de PI Services.

#openblogPI

Retrouvez les articles à la une

Utiliser la console Web de SCOM 2012 sous Windows XP

 

Microsoft ayant pris la décision de ne pas assurer la compatibilité de la console “lourde” SCOM 2012 avec Windows XP, il n’est plus possible de l’installer sur des ordinateurs exécutant encore ce système.

Toutefois, il peut toujours s’avérer nécessaire d’accéder à une console SCOM 2012 depuis un de ces ordinateurs et pour ce faire, la console Web semble être une solution parfaitement adaptée.

Malheureusement, une nouvelle mauvaise surprise vous attend : après avoir installé l’extension Silverlight SilvelightClientConfiguration.exe (proposée automatiquement à la première connexion) et tenté d’ouvrir une session, le message d’erreur suivant vous accueille et la console ne se charge pas :

The procedure entry point LocaleNameToLCID could not be located in the dynamic link library Kernel32.dll.

Cette erreur se produit car l’API LocaleNameToLCID n’est présente dans Kernel32.dll qu’à partir de Windows Vista (cf. http://msdn.microsoft.com/en-us/library/windows/desktop/dd318711%28v=vs.85%29.aspx ). Décidemment, cette console refuse de s’ouvrir sous Windows XP…

A l’aide de l’outil Procmon, on constate que SilverlightClientConfiguration.exe doit normalement créer des entrées dans la base de registre, correspondant à des certificats propres à SCOM 2012 et SCOM 2012 UR1 respectivement.

Il est donc possible de contourner le problème en important directement ces entrées dans la base de registre via le fichier OM2012WebConsoleFix.reg (disponible ici : http://blogs.technet.com/b/mihai/archive/2012/05/08/making-the-om-2012-web-console-accessible-from-a-windows-xp-client.aspx ), sans passer par SilverlightClientConfiguration.exe.

Il est cependant vraisemblable que les futures mises à jour de la console Web induiront des certificats différents.
Afin de pouvoir les retrouver (sur un client Vista ou supérieur) pour les exporter et les réimporter sur vos clients Windows XP, il est intéressant de noter que la clé de registre utilisée est HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Silverlight pour les Windows 64bits et HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight pour le Windows 32bits ainsi que HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\TrustedPublisher\Certificates\19F8F76F4655074509769C20349FFAECCECD217D dans tous les cas.

Une fois cette modification apportée au registre, la console Web SCOM 2012 est accessible sans avoir besoin d’installer SilverlightClientConfiguration.exe ni nécessiter de redémarrage.

SCOM – Erreurs “Script based test failed to complete”

Suite au déploiement manuel de l’agent SCOM sur des contrôleurs de domaine Active Directory d’un domaine distant, les alertes de type “script based test failed to complete” suivantes peuvent apparaitre :

image

AD Lost And Found Object Count : The script ‘AD Lost And Found Object Count’ failed to create object ‘McActiveDir.ActiveDirectory’. This is an unexpected error.
The error returned was ‘ActiveX component can’t create object’ (0x1AD)

image

AD Replication Monitoring : encountered a runtime error.
Failed to create the ‘McActiveDir.ActiveDirectory’ object.
The error returned was ‘ActiveX component can’t create object’ (0x1AD)

Cette erreur se produit car il manque un composant de supervision spécifique aux Contrôleurs de Domaine, nommé AD Helper Object. Ce dernier s’installe automatiquement et de façon transparente lors du déploiement de l’agent via une installation « push », mais pas lors d’une installation manuelle (cas d’un serveur situé derrière un firewall par exemple).

Il est donc nécessaire d’installer ce composant à la main également, à l’aide du package oomads.msi disponible sur le média d’installation de SCOM dans le dossier HELPEROBJECTS :

Copier le package oomads.msi correspondant à l’infrastructure matérielle du contrôleur de domaine (I386 pour les Windows 32 bits ou AMD64 pour les Windows 64bits) sur le contrôleur de domaine qui remonte l’erreur, puis l’y installer.
L’installation ne requiert aucune intervention et affiche l’écran suivant une fois terminée :

image

L’alerte devrait alors cesser de remonter, sans nécessiter de redémarrage.

SCOM – Créer à la volée de nombreux certificats pour des agents SCOM en DMZ

 

Comme l’a déjà détaillé Christophe Jourdan dans ce billet, il est nécessaire de créer et d’attribuer un certificat à chaque serveur situé dans un domaine non approuvé ou dans un workgroup/DMZ et que l’on souhaite monitorer à l’aide de SCOM .

Cependant, cette tâche peut s’avérer fastidieuse et répétitive si elle concerne un nombre important de serveurs… Il est possible de contourner le problème en faisant appel à des serveurs Gateway, mais cette solution n’est pertinente que si les serveurs à monitorer se trouvent majoritairement dans le même domaine distant.

Dans le cas où il s’agit de serveurs répartis dans de nombreux domaines différents, ou principalement situés en Workgroup ou en DMZ, cette solution du serveur Gateway ne présente pas d’avantage particulier puisqu’il faudra toujours générer un certificat par serveur à monitorer.

Heureusement, l’équipe de développement de SCOM a mis à disposition deux outils bien utiles pour automatiser en grande partie ce procédé : CertGenWizard et CertInstaller, réunis dans le package certgenbinaries.

CertGenWizard permet de requêter votre Autorité de Certification (CA) pour demander en une seule fois la création des certificats pour la liste de serveurs que vous lui indiquerez, puis les télécharge et les enregistre dans le dossier de votre choix. Il récupère également le certificat d’autorité racine (Root CA).

CertInstaller
permet quant à lui d’automatiser l’installation des certificats machine et root CA dans le magasin de certificats du serveur à monitorer, ainsi que de les inscrire dans la configuration SCOM à l’aide de MOMCertImport automatiquement.

 

Aperçu de leur utilisation :

 

Pré-requis:

-.NET Framework 3.0

-Une autorité de certification (Win2K3/Win2K8 Enterprise/Stand-alone CA)

-S’il s’agit d’une CA Entreprise, un template OpsMgr doit être créé (cf. http://blogs.technet.com/b/ptsblog/archive/2011/12/28/monitoring-machines-using-certificates-with-system-center-operations-manager-2007-r2-part-1.aspx )

createReqFile.bat doit rester dans le même dossier que CertGenWizard.exe

Copier le MOMCertImport.exe correspondant à votre version de SCOM (2007/R2/2012) ainsi qu’aux serveurs visés (32 ou 64bit) depuis votre media d’installation de SCOM (dossier SUPPORTTOOLS) dans le même dossier que CertInstaller.exe.

Attention, CertInstaller ne fonctionne pas sous Windows XP et ne pourra donc pas être utilisé si les machines que vous souhaitez superviser utilisent encore ce système !

 

Génération des certificats:

1. Télécharger l’archive zip de l’outil et la décompresser.

2. Lancer CertGenWizard.exe et cliquer sur Next.

clip_image002

3. Indiquer si l’Autorité de Certification est présente sur le serveur qui exécute l’outil (Search this computer) ou si elle se trouve sur un autre serveur (Search the network). Dans ce second cas, indiquer son nom et son domaine dans les champs CA name et CA host name.
Cliquer sur Next.

clip_image004

4. Indiquer la liste des serveurs à superviser hors-domaine (un seul par ligne) dans la liste Computers ainsi que le dossier où stocker les certificats dans Certificate Destination Folder.
Cliquer sur Create.
clip_image006

5. Après quelques secondes, l’outil confirme la création des demandes de certificat auprès de l’Autorité de Certification et demande de les y approuver :
clip_image008

6. Ouvrir la console « Autorité de Certification », dossier « Pending Requests ». Sélectionner les demandes de certificat en attente et faire Clic-droit > Issue :
clip_image010

7. Revenir à l’outil CertGenWizard et cliquer sur Retrieve. Les certificats sont copiés dans le dossier préalablement indiqué. Une fenêtre de résumé s’affiche, indiquant les certificats générés et copiés. Cocher Open folder to view certificates puis cliquer sur Close.
clip_image012

8. LE dossier contenant les certificats pour chacun des serveurs à monitorer s’ouvre. Il contient également le certificat racine Root Certificate, qui servira aussi sur chacun des serveurs à monitorer.
clip_image014

 

Import des certificats sur les serveurs cible:

Réaliser cette étape à la main (import du certificat racine et du certificat machine puis exécution de MOMCertImport) peut s’avérer tout aussi fastidieux que de créer les certificats à la main.

L’outil CertInstaller, fourni dans le package, permet heureusement de simplifier également ce processus.

Attention : l’agent SCOM doit être installé avant de réaliser cette opération !

1. Sur chaque serveur à monitorer, copier dans le même dossier le certificat machine généré à l’étape précédente correspondant ainsi que le certificat racine RootCertificate. Copier également l’outil CertInstaller.exe présent dans le package et l’exécutable MOMCertImport disponible sur le media d’installation de SCOM correspondant à la plateforme à monitorer (x86 ou x64).
clip_image016

2. Sur le serveur à monitorer, lancer CertInstaller. Sélectionner le certificat machine dans le champ Machine Certificate et le certificat racine dans le champ Root CA Certificate. Cliquer sur Install.
clip_image018

Voilà, c’est terminé. Vous pouvez vérifier que les certificats sont bien importés en ouvrant le magasin de certificat du serveur à monitorer.

S’il n’y a pas d’autre problème, le serveur doit remonter dans SCOM au bout de quelques minutes.