Viele Mails die mich erreichen, drehen sich immer wieder um Zertifikate. Daher habe ich einen kleinen Assistent mittels PowerShell erstellt, das einem ein bisschen Arbeit mit den Zertifikaten abnimmt. Es sucht sich automatisch die entsprechenden DNS-Namen, fordert das Zertifikat von einer Windows CA an und installiert es auf allen Exchange 2013 Servern. Ganz ohne etwas Handarbeit geht es allerdings nicht:
Voraussetzungen
Auf dem Exchange Server auf ExchangeCertificateAssistant ausgeführt wird, muss das ActiveDirectory Modul für die PowerShell installiert sein, das Modul lässt sich im Servermanager nachinstallieren:
Damit der Assistent Zertifikate anfordern kann, muss es neben einer Zertifizierungsstelle auch eine Zertifikatsvorlage geben. Wie eine Zertifizierungsstelle installiert und konfiguriert wird, habe ich hier beschrieben:
Wenn es schon eine installierte und konfigurierte Zertifizierungsstelle gibt, muss nur eine neue Vorlage erstellt werden. Dazu in der MMC der Zertifizierungsstelle die Zertifikatsvorlagenkonsole öffnen:
Die Vorlage „Webserver“ muss dupliziert werden
Im neuen Fenster unter dem Reiter Allgemein den Vorlagenanzeigenamen festlegen und merken (wird von ExchangeCerttificateAssistant abgefragt)
Auf dem Reiter Anforderungsverwaltung müssen die Haken bei „Vom Antragssteller zugelassene symmetrische Algorithmen einbeziehen“ und „Exportieren von privaten Schlüssel zulassen“ gesetzt werden
Auf dem Reiter Sicherheit wird die Gruppe „Exchange Trusted Subsystem“ mit den Rechten „Lesen“ und „Registrieren“ hinzugefügt
Jetzt kann mit „OK“ bestätigt werden und die Zertifikatsvorlagenkonsole geschlossen werden. Die neue Vorlage muss dann nur noch veröffentlicht werden
Nachdem die Vorlage erstellt und veröffentlicht wurde kann der Assistent aus der Exchange Management Shell gestartet werden
Hinweis: ExchangeCertificateAssistant benötigt Server 2012 R2, PowerShell 4, Exchange 2013 und das ActiveDirectory Modul für die Powershell. Der oder die Exchange Server müssen bereits vollständig konfiguriert sein, für die Konfiguration kann der Exchange Configurator genutzt werden.
ExchangeCertificateAssistant starten
.\ExchangeCertificateAssistant.ps1
Der Assistent fragt nach dem Vorlagennamen, hier muss der eben vergebene Vorlagenanzeigename eingetragen werden
Der Rest sollte selbsterklärend sein. Bevor das Zertifikat ausgestellt wird, besteht noch die Möglichkeit weitere DNS-Namen hinzuzufügen, die nicht in Exchange konfiguriert wurden:
Das Zertifikat wird dann ausgestellt und an die Exchange Dienste gebunden, außerdem wird es unter c:\Zertifikat auf dem Exchange Server gespeichert, der den Assistent ausgeführt hat. Das Kennwort ist wählbar, somit lässt sich das Zertifikat auf Loadbalancer oder Firewalls übertragen.
Download:
Kleines Update: Der Assistent funktioniert auch mit Exchange 2016.