Centric connect.engage.succeed

Certificaten en SCOM: hoe en waarom?

Geschreven door Erwin Rook - 11 januari 2017

Erwin Rook
Het is voor een afdeling nooit leuk om erachter te komen dat systemen die door veel externen op internet worden gebruikt, niet meer beschikbaar zijn (en dat hierdoor belangrijke functionaliteit verloren is gegaan). Maar nóg erger is de gedachte dat je het had kunnen voorkomen door deze systemen te monitoren met een monitoringtool zoals System Center Operations Manager (SCOM). Maar hoe monitor je die systemen als ze geen lid zijn van een domein en in de DMZ zitten, achter de firewall? Oftewel: hoe kunnen deze machines dan toch zo worden geconfigureerd, dat ze wel te monitoren zijn met SCOM? Het antwoord: met certificaten.

In het geval van SCOM kun je gebruikmaken van een SCOM Gateway server. Wil je hiervoor geen nieuwe server inrichten, dan kunnen deze systemen ook rechtstreeks gemonitord worden. Hiervoor doorloop je de volgende stappen:

  • TCP Poort 5723 open zetten in de firewall
  • ICMP toestaan vanaf de SCOM-managementserver(s) naar de DMZ-omgeving
  • certificaten genereren en importeren

Stap 3, het generen en importeren van certificaten, lijkt echter eenvoudiger dan het in werkelijkheid is. Om goede certificaten te genereren die door SCOM gebruikt kunnen worden, moeten er een aantal stappen worden gevolgd om ervoor te zorgen dat SCOM het certificaat accepteert en het device kan monitoren, namelijk:

  • aanmaken van een certificate template
  • genereren van een certificate request file
  • genereren van het certificaat
  • importeren van het certificate op de SCOM-server
  • exporteren van het certificaat
  • importeren van het certificaat op de DMZ-server
  • importeren van de ROOT CA-certificaat op de DMZ-server
  • installatie van de SCOM-agent
  • importeren van het certificaat in de SCOM-agent

Aanmaken certificate template

Om voor SCOM een juist certificaat te genereren, moet je in de Certificate Authority van je domein eerst een certificate template aanmaken. Dit doe je door het template IPSec (Offline Request) te dupliceren en de volgende instellingen aan te passen.

      

      

    

Geef in het securitytabblad vervolgens de SCOM-managementservers read- en enroll-rechten en save het template. Dit aangemaakte template publiceer je vervolgens in de Certificate Authority.

Genereren van een certificate request file

Voor het genereren van een goed certificate request-bestand heb ik een Powershell-script die alle handmatige stappen voor het genereren van het certificaat automatisch doorloopt. Je hoeft alleen een computernaam op te geven bij het starten van het script. Het script ziet er als volgt uit:

$Computer=$args[0]
$DCRequestINFFileName = "c:\Install\Certificates\$Computer.inf"
$DCRequestFileName = "c:\Install\Certificates\$Computer.req"

Write-Verbose "Create Server Certificate Request File (CertReq.inf) for $Computer `r "

$DCRequestINF =
@"
[Version]
Signature="`$Windows NT${body}#xD;

[NewRequest]
Subject = "CN=$Computer"
FriendlyName="$Computer"
Exportable = TRUE
KeyLength = 3072
KeySpec = 1
KeyUsage = 0xA0
MachineKeySet = True
RequestType = PKCS10

[RequestAttributes]
CertificateTemplate = "OperationsManagerCertificate"

[EnhancedKeyUsageExtension]
OID=1.3.6.1.5.5.7.3.1 ; Server Authentication
OID=1.3.6.1.5.5.7.3.2 ; Client Authentication
"@

write-output "Generating Certificate Request file... `r "
Set-Content -Value $DCRequestINF -Path $DCRequestINFFileName
certreq -new $DCRequestINFFileName $DCRequestFileName 


Pas hierin de locatie voor de $DCRequestINFFileName en de $DCRequestFileName aan naar de gewenste locatie en vul bij CertificateTemplate de templatenaam in van het template dat in de voorgaande stap is aangemaakt. Start het script vanuit een elevated cmd prompt met het volgende commando:

Powershell.exe –executionpolicy bypass –file “Locatievanhetscript.ps1” “<DMZCOMPUTERNAME>”

Het script maakt in de opgegeven locatie een .inf file en een .req file aan. Je hebt de .req file straks weer nodig bij het aanmaken van het certificaat.

Genereren van het certificaat

Om het certificaat te genereren, ga je naar de website van de lokale Certificate Authority. Bijvoorbeeld https://<CertificateAuthorityName>/certsrv. Op deze site ga je naar Request a Certificate en daarna naar Advanced Certificate Request. Ga vervolgens naar Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file, or submit a renewal request by using a base-64-encoded PKCS #7 file.

Plak de inhoud van het .req bestand in het Saved Request-veld en selecteer het Certicate Template die je in de voorgaande stappen hebt aangemaakt. Klik vervolgens op Submit.

Download het certificaat en de certificate chain (dit is het Root-certificaat en het certificaat van de CA Authority). Ook voor de SCOM-managementserver(s) moet op deze manier een certificaat worden gegenereerd, anders kan de SCOM de managementserver(s) niet authentiseren met de DMZ-server. Start op de SCOM-managementserver het programma MOMCertImport.exe (deze staat op de installatie dvd van SCOM) en importeer het certificaat van de SCOM-managementserver in SCOM.

Om ervoor te zorgen dat op de DMZ-server het juiste certificaat wordt geïmporteerd, moet je het certificaat van de DMZ-server eerst op een SCOM-managementserver importeren en dit certificaat weer met de juiste instellingen exporteren. Daarna moet je het geëxporteerde certificaat en het Root-certificaat importeren op de DMZ-server. Voor het exporteren van het certificaat maak je gebruik van de volgende instellingen:

  

Installatie SCOM-agent DMZ-server

Wanneer de certificaten geïmporteerd zijn op de DMZ-server, kun je de SCOM-agentinstallatie starten op deze server. Deze kun je installeren door het starten van MOMagent.msi. Dit bestand kun je weer vinden op het installatiemedium van SCOM.

Installatiecertificaat in SCOM

Start op de DMZ-server het programma MOMCertImport.exe (deze staat op het installatiemedium van SCOM) en selecteer het certificaat van de DMZ-server. Herstart op de DMZ-server de HealthService-service. En zie nu, de server communiceert met de SCOM-managementservers.

Erwin Rook is Craft Expert van Team Cloud binnen Craft, hét groeiprogramma voor IT'ers (powered by Centric). Wil je zijn blog volgen? Schrijf je in voor de Craft-update.

Tags:Cloud

     
Schrijf een reactie
  • Captcha image
  • Verzenden