In diesem HowTo beschreibe ich, wie eine Interne Zertifizierungsstelle installiert wird und wie man ein SAN-Zertifikat für Exchange ausstellen lassen kann. Dieses HowTo ist nicht für eine produktive Umgebung gedacht. Die Implementierung einer Zertifizierungsstelle muss sorgfältig geplant werden.
In meiner Testumgebung habe ich dazu 2 Windows Server 2008 R2 Enterprise installiert, 1 DC + CA und ein Exchange Server 2010.
Es gibt zu beachten das nicht alle Funktionen der Zertifizierungsstelle zur Verfügung stehen, wenn die CA auf Server 2008 R2 Standard installiert wird. Dieses HowTo gilt also nur für Zertifizierungsstellen die auf Windows Server 2008 R2 Enterprise laufen.
Eine entsprechendes HowTo für Server 2008 R2 Standard CAs ist in Arbeit.
Installation der Zertifizierungsstelle
Zuerst installieren wir die Zertifizierungsstelle auf einem geeigneten Server, für eine Active Directory integrierte Zertifizierungsstelle (CA) muss der Server Mitglied des Active Directorys sein. Über den „Server Manager“ kann die Rolle „Active Directory-Zertifikatsdienste“ hinzugefügt werden
Das Hinzufügen der Rolle wird mit „Weiter“ bestätigt, dann werden die Rollendienste ausgewählt, uns reicht hier „Zertifizierungsstelle“
Bei dem Installationstyp wählen wir „Unternehmen“ aus, so wird die CA in das Active Directory integriert, das macht es beim Ausstellen der Zertifikate später einfacher
Als nächstes wird der Zertifizierungsstellentyp festgelegt. Da dies unsere eigene Root-CA werden soll (im Zertifikatspfad ist diese CA die höchste Instanz) wählen wir hier „Stammzertifizierungsstelle“
In darauf folgenden Dialog erstellen wir einen „neuen privaten Schlüssel“
Hier wird es ein bisschen interessant, ich habe hier beschrieben, dass ältere Smartphones Probleme haben, einen neueren Hashalgorithmus zu verarbeiten als SHA1, daher empfehle ich an dieser Stelle SHA1 zu wählen. Allerdings kann der Hashalgorithmus später nicht mehr geändert werden. Man sollte sich an dieser Stelle also im Klaren sein, was man auswählt.
Update: SHA1 wird ab dem 01.01.16 nicht mehr als Signaturhashalgorithmus unterstützt. Hier sollte besser gleich SHA256 gewählt werden.
Im nächsten Dialog geben wir der CA einen aussagekräftigen Namen. Ich rate davon ab, den Servernamen in den Namen der CA mit auszunehmen, der Name der CA kann nicht geändert werden, aber evtl. möchte man die CA irgendwann einmal migrieren.
Kommen wir zur Gültigkeitsdauer, 5 Jahre Gültigkeit für das Zertifikat der Root-CA halte ich persönlich für etwas zu gering. Zwar ist es einfach das Zertifikat später zu verlängern, aber alle Clients, die nicht Mitglied der Domäne sind erhalten nicht automatisch das aktualisierte Zertifikat. Da ich nicht in 5 Jahren alle Smartphones mit neuem Zertifikat bestücken möchte, wähle ich hier eine höhere Gültigkeit (Ich nehme da immer die Restjahre bis zur Rente + 5, da man nie wissen kann wie lange man noch arbeiten muss J) Ich wähle also 43 Jahre L
Den Pfad der Datenbank belasse ich den Standardpfaden. Wer möchte kann diese natürlich anpassen
Nach dem wir alle Informationen angegeben haben wird die CA installiert. Nach dem die Installation durchgelaufen ist, öffnen wir die Konsole „Zertifizierungsstelle“ und passen die Zertifikatsvorlage an.
Anpassen der Zertifikatsvorlage für Exchange SAN Zertifikate
Über „Verwaltung“ findet sich nun der Punkt „Zertifizierungsstelle“, diese Konsole starten wir nun.
Mit einem Rechtsklick auf „Zertifikatvorlagen“ öffnen wir das Kontextmenü und klicken auf „Verwalten“. Damit öffnen wir die Konsole „Zertifikatsvorlagen“.
Wir suchen uns nun die Vorlage „Webserver“ und klicken sie wieder mit Rechts an und erstellen eine „Doppelte Vorlage“. Als Eigenschaft können wir in unserem Fall „Windows Server 2008 Enterprise“ wählen.
Jetzt öffnen sich die Eigenschaften der Zertifikatsvorlage, hier müssen wir ein paar Anpassungen vornehmen. Auf dem Reiter „Allgemein“ legen wir zunächst den Vorlagenanzeigennamen und die Gültigkeit fest. Als Name gebe ich „Exchange Server Zertifikat“ an und als Gültigkeit 5 Jahre. Zusätzlich setze ich den Haken bei „Zertifikat im Active Directory veröffentlichen“, damit ist gewährleistet das Exchange sein Zertifikat selbstständig erneuern kann, wenn es abläuft.
Auf dem Reiter „Anforderungsverarbeitung“ setzen wir den Haken bei “ Vom Antragssteller zugelassene symmetrische Algorithmen einbeziehen“ da wir ein SAN-Zertifikat erstellen möchten.
Auf dem Reiter „Sicherheit“ geben wir zunächst uns selbst die vollen Berechtigungen auf der Vorlage, zusätzlich tragen wir das Computer Konto oder eine Gruppe welche die Computer Konten der Exchange Server enthält mit ein
Die Eigenschaften der Vorlage können wir jetzt mit OK schließen, in der „Zertifikatsvorlagenkonsole“ sollten wir nun unsere neue Vorlage mit dem Namen „Exchange Server Zertifikat“ angezeigt bekommen.
Die „Zertifikatsvorlagenkonsole“ können wir nun ebenfalls schließen. Jetzt sollten wir wieder die Konsole „Zertifizierungsstelle“ sehen. Unter dem Menüpunkt „Aktion“ wählen wir jetzt „Neu“ und dann „Auszustellende Zertifikatsvorlage“ aus
In der Liste „Zertifikatsvorlagen aktivieren“ wählen wir nun unsere eben erstellte Vorlage „Exchange Server Zertifikat“ aus und bestätigen mit „OK“
In der Konsole „Zertifiezierungsstelle“ wird nun die neue Vorlage angezeigt
Die Konsole kann nun geschlossen werden. Weiter geht es auf dem Exchange Server. Dort beantragen wir nun ein neues Zertifikat.
Beantragen eines SAN-Zertifikats für Exchange
Auf dem Exchange Server müssen wir zunächst eine MMC mit dem Snap-In „Zertifikate“ öffnen um ein neues Zertifikat zu beantragen. Also auf „Start“ und dann auf „Ausführen“ klicken. In dem neuen Fenster dann „mmc.exe“ eintippen und bestätigen
Es öffnet sich eine leere Konsole. Unter „Datei“ -> „Snap-In hinzufügen/entfernen“ wählen wir aus der Liste der verfügbaren Snap-Ins „Zertifikate“ aus und fügen es zu „Ausgewählte Snap-Ins“ hinzu. Es öffnet sich ein Dialog der abfragt welche Zertifikate wir verwalten möchten, wir wählen „Computerkonto“ und danach „Lokalen Computer“ aus.
Nach einen Klick auf „fertigstellen“ und anschließend auf „OK“ sollte das Snap-In in der Konsole zu sehen sein. Nun navigieren wir zu dem Eintrag „Zertifikate“, dort sollte schon das selbstsignierte Zertifikat, welches Exchange automatisch bei der Installation anlegt, zu sehen sein.
Nun starten wir den Assistenten zum Anfordern eines neuen Zertifikats unter „Aktion“ –> „Alle Aufgaben“ -> „Neues Zertifikat anfordern…“
Den Dialog bestätigen wir mit „Weiter“
Auch der nächste Dialog wird mit „Weiter“ bestätigt
Im darauffolgenden Dialog wählen wir unsere Zertifikatsvorlage „Exchange Server Zertifikat“ aus und klicken auf den auf den blauen Link darunter
Jetzt können wir alle Eigenschaften des späteren Zertifikats konfigurieren. Die wichtigsten Werte und Namen für das Zertifikat fasse ich mal kurz zusammen:
Anstragstellername:
- Organisation (O) = Name des Unternehmens
- Allgemeiner Name (CN) = Der Name des Zertifikats
- Land (C) = Das Land als Kürzel
Alternative Namen:
-
DNS = Alle Namen die Benutzer verwenden könne um auf Exchange
zuzugreifen
Beim Typ „DNS“ werden alle Namen eingetragen unter die Exchange oder Dienste von Exchange erreichbar sind. Wenn Benutzer mittels OWA oder Outlook Anywhere über das Internet auf Exchange zugreifen muss auch der externe Name auf dem Zertifikat enthalten sein. Ich gebe also „owa.frankysweb.de“ an. Intern heißt der Server „FWEX01.frankysweb.local“, zu diesem Namen stellt Outlook eine Verbindung her. Des Weiteren lautet meine Autodiscover Konfiguration auf den Alias „autodiscover.frankysweb.local“ im internen Netz und „autodiscover.frankysweb.de“ aus dem Internet. Ruft ein Benutzer im internen Netzwerk OWA auf, kann er das auch über den ShortName „FWEX01“ machen, daher gehört auch er mit auf der Zertifikat. Kurz um, jeder Hostname der zum Zugriff auf Exchange dient gehört hier auf das Zertifikat.
Auf dem Reiter Allgemein können wir noch einen „Anzeigenamen“ und eine „Beschreibung“ angeben, das ist aber nicht Pflicht.
Wenn alle Angaben gemacht wurden, bestätigen wir das Fenster der „Zertifikateigenschaften“ mit OK, der Hinweis unter dem Zertifikat sollte nun verschwunden sein. Jetzt müssen wir nur noch auf „Registrieren“ klicken nun unser Zertifikat erhalten
Nach dem Klick auf „Fertigstellen“ sehen wir unser neues Zertifikat in der MMC
Zu guter Letzt müssen wir Exchange nun noch beibringen das neue Zertifikat auch zu nutzen.
Exchange Dienste an das neue Zertifikat binden
Das Zuweisen der Dienste für das neue Zertifikat funktioniert über die Exchange Management Shell, sowie über die Exchange Konsole. Zunächst der Weg über die Konsole. Wir navigieren zu dem Punkt „Serverkonfiguration“, dort wählen wir das neue Zertifikat aus und klicken im Aktionsfeld auf „Dem Zertifikat Dienste zuordnen…“ an.
Im darauffolgenden Dialog geben wir die Exchange Server an, die das Zertifikat benutzen sollen. In meinem Fall ist das nur der Server „FWEX01“. Danach wird auf „Weiter“ geklickt
Danach werden die Dienste ausgewählt für die das Zertifikat benutzt werden soll. Ich wähle alle Dienste bis auf „Unified Messaging“ aus (UM ist nicht installiert) und klicke auf „Weiter“
Als letztes noch auf „Zuweisen“ klicken und die Warnung mit „Ja“ bestätigen, damit das Zertifikat zugeordnet wird.
Das war alles.
Zu guter Letzt noch der Weg über die Exchange Management Shell:
Um dem Zertifikat Dienste zuordnen zu können, müssen wir zuerst den Fingerabdruck (Thumbprint) herausfinden. Den Fingerabdruck findet man über das Zertifikat
oder über die Exchange Management Shell heraus
get-ExchangeCertificate
Wir sehen hier das in der Spalte „Subject“ die Werte stehen, die wir auf dem Zertifikatsantrag angegeben haben, auf dem selbstsignierten Standard Zertifikat hingegen steht nur der Allgemeine Name (CN), in diesem Fall ist das Zertifikat mit dem Fingerabdruck 799A995CC25DB1A6A71E364E7D727561A3A3909A also das richtige.
Um dem Zertifikat die Exchange Dienste zuzuordnen genügt folgender Befehl
Enable-ExchangeCertificate -Thumbprint 799A995CC25DB1A6A71E364E7D727561A3A3909A -Services IIS,SMTP,POP,IMAP