Dies ist der zweite Teil der Artikelserie. Wie schon im ersten Teil angekündigt, befasst sich dieser Artikel mit der Konfiguration.
Wichtig: Vorher unbedingt den ersten Teil lesen, da dieser Artikel direkt darauf aufbaut.
Konfiguration Exchange 2016
Der erste Teil endete mit den Überlegungen für die URLs mit denen auf Exchange zugegriffen werden soll. Der Einfachheit halber hier noch einmal die Tabelle mit den URLs:
Dienst / Protokoll |
DNS-Name |
OWA (Interne URL) |
https://mail.frankysweb.de/owa |
OWA (externe URL) |
https://mail.frankysweb.de/owa |
OAB (interne URL) |
https://mail.frankysweb.de/OAB |
OAB (externe URL) |
https://mail.frankysweb.de/OAB |
ActiveSync (interne URL) |
https://mail.frankysweb.de/Microsoft-Server-ActiveSync |
ActiveSync (externe URL) |
https://mail.frankysweb.de/Microsoft-Server-ActiveSync |
MAPI (interne URL) |
https://mail.frankysweb.de/mapi |
MAPI (externe URL) |
https://mail.frankysweb.de/mapi |
EWS (interne URL) |
https://mail.frankysweb.de/EWS/Exchange.asmx |
EWS (externe URL) |
https://mail.frankysweb.de/EWS/Exchange.asmx |
ECP (interne URL) |
https://mail.frankysweb.de/ecp |
ECP (externe URL) |
https://mail.frankysweb.de/ecp |
Outlook Anywhere (Intern) |
mail.frankysweb.de |
Outlook Anywhere (extern) |
mail.frankysweb.de |
Autodiscover (Intern) |
https://autodiscover.frankysweb.de/Autodiscover/Autodiscover.xml |
Die Konfiguration der URLs ist für Autodiscover wichtig. Diese URLs werden durch Autodiscover an Outlook verteilt, somit findet Outlook den entsprechenden Exchange Server. Werden die virtuellen Verzeichnisse nicht mit entsprechenden URLs konfiguriert, kommt es später wieder zu Zertifikatsfehlern. Es ist also genau darauf zu achten, dass für jedes virtuelle Verzeichnis eine entsprechende interne und externe URL gesetzt wird. Autodiscover verteilt sonst falsche URLs an die Clients.
Die URLs können per Exchange Administrative Center eingestellt werden, hier für OWA:
![image image]()
hier für ECP:
![image image]()
Auf diese Weise werden alle virtuellen Verzeichnisse konfiguriert, mit Ausnahme von “Powershell” und “Autodiscover”. “PowerShell” und “Autodiscover” werden _NICHT_ verändert und erhalten keine neuen URLs:
![image image]()
Es werden also nur die folgenden virtuellen Verzeichnisse mit den URLs aus der Tabelle gefüllt:
- owa
- OAB
- Microsoft-Server-ActiveSync
- mapi
- EWS
- ecp
Nachdem die virtuellen Verzeichnisse konfiguriert wurden, kann auch der Hostname für Outlook Anywhere vergeben werden, auch dies ist wieder per Exchange Administrative Center möglich:
![image image]()
Eine kleine Ausnahme bildet die Autodiscover URL für den CAS-Dienst, diese kann nur per Exchange Management Shell gesetzt werden. In der Standardeinstellung ist auch hier der interne Servername eingetragen:
![image image]()
Mit dem folgenden Befehl wird die URL entsprechend geändert:
Set-ClientAccessService EX1 -AutoDiscoverServiceInternalUri "https://autodiscover.frankysweb.de/Autodiscover/Autodiscover.xml"
![image image]()
Nachdem diese Schritte durchgeführt wurden, kann der IIS Server mittels “iisreset” neu gestartet werden:
![image image]()
Die Exchange Konfiguration ist soweit fertig, weiter geht es mit den erforderlichen DNS Einträgen.
DNS Konfiguration
Exchange hört nach den oben durchgeführten Schritte nur noch auf mail.frankysweb.de und Autodiscover auf autodiscover.frankysweb.de. Damit diese beiden FQDNs nun auch im internen Netzwerk, sowie auch aus dem Internet (HomeOffice) auflösbar sind, müssen entsprechende DNS Einträge konfiguriert werden.
Noch einmal kurz der Ablauf der Kommunikation (vereinfacht)
Ein interner Rechner hat als DNS Server üblicherweise den Domain Controller konfiguriert. Outlook auf dem internen Rechner wird zunächst autodiscover.frankysweb.de anfragen um den Exchange Server zu finden. Der DNS Server auf dem Domain Controller antwortet auf die Anfrage des Clients mit der internen IP Adresse des Exchange Servers. Der Client ruft die Konfiguration ab und fragt dann wiederum den internen DNS Server nach mail.frankysweb.de. Das Bild stellt die DNS Anfragen und Antworten vereinfacht dar (grüne und roter Pfeile):
![DNS DNS]()
Ähnliches gilt für Clients im HomeOffice. Auf den meisten Routern wird ein DNS-Forwarder laufen. Dieser DNS Forwarder auf dem Router reicht die DNS Anfragen des Clients aus dem HomeOffice an entsprechende DNS-Server im Internet weiter. Hier gibt es zwar noch mehrere beteiligte DNS-Server, aber schlussendlich wird der DNS-Server des Hosters auf die Autodiscover reagieren müssen. Die Anfragen zu autodiscover.frankysweb.de und mail.frankysweb.de, sollen nun mit der externen IP-Adresse des Internetanschlusses des Unternehmens beantwortet werden. Die Outlook Verbindung wird also diesen Weg gehen (blaue Pfeile)
![Verbindung Verbindung]()
Intern wird sich Outlook mit mail.frankysweb.de verbinden welches auf die interne IP-Adresse des Exchange Servers zeigt. Extern wird es ebenso mail.frankysweb.de sein, nur mit dem Unterschied, dass jetzt die externe IP aufgelöst wird.
Dazu müssen die DNS Server entsprechend konfiguriert werden:
Internen DNS Server konfigurieren
Da Autodiscover nach erfolgter Konfiguration nun die URLs wie oben angegeben verteilen wird, müssen die URLs nun auch verfügbar sein. Auf dem Domain Controller werden die DNS-Zonen etwa wie folgt aussehen:
![image image]()
Da das ActiveDirectory in diesem Fall auf den Namen frankysweb.local hört, gibt es dazu zwei entsprechende interne Zonen und normalerweise auch eine Reverse Lookup Zone mit den entsprechenden Subnetzen.
Intern muss Exchange nun aber über den Namen mail.frankysweb.de und autodiscover.frankysweb.de erreichbar sein, denn diese Namen wurden entsprechend konfiguriert. Daher wird zunächst eine neue DNS Zone erstellt:
![image image]()
Als Zonentyp wird “Primäre Zone” belassen:
![image image]()
Auch die Zonenreplikation kann so belassen werden:
![image image]()
Als Zonenname wird “mail.frankysweb.de” eingetragen:
![image image]()
Dynamische Updates können abgeschaltet werden:
![image image]()
Innerhalb der neuen Zone wird nun ein neuer HOST-A Eintrag angelegt:
![image image]()
Für den HOST-A Eintrag wird _KEIN_ Name konfiguriert. Im Feld IP-Adresse wird die interne IP des Exchange Servers angegeben und das Häkchen bei “Verknüpften PTR-Eintrag erstellen” entfernt:
![image image]()
Somit sollte es nun wie folgt aussehen:
![image image]()
Die Schritte werden entsprechend für Autodiscover wiederholt. Eine weitere Neue Zone mit dem Namen “Autodiscover.frankysweb.de” wird angelegt:
![image image]()
Und auch in der Zone autodiscover.frankysweb.de wird ein HOST-A Eintrag mit der internen IP des Exchange Servers angelegt:
![image image]()
Mittels nslookup können nun die beiden Zonen überprüft werden.
Autodiscover.frankysweb.de und mail.frankysweb.de müssen von einem internen Client/Rechner/Server auf die interne IP des Exchange Servers verweisen:
![image image]()
Konfiguration externer DNS (Hoster)
Damit der Exchange Server nun auch aus dem Internet (HomeOffice) unter dem Namen mail.frankysweb.de erreichbar ist, müssen entsprechende DNS Einträge beim Hoster der Domain gesetzt werden. Je nach Hoster (Strato, 1und1, HostEurope etc.) verläuft die Konfiguration hier etwas unterschiedlich. In diesem Beispiel ist es Strato:
Zuerst werden zwei neue Subdomains angelegt:
![image image]()
Einmal die Subdomain mit dem Namen “mail”, woraus sich “mail.frankysweb.de” ergibt:
![image image]()
Gleiches für die Subdomain mit dem Namen “autodiscover”, woraus sich autodiscover.frankysweb.de ergibt.
![image image]()
Für beide Subdomains wird jetzt ein A-Record definiert:
![image image]()
Als IP-Adresse wird die externe IP-Adresse des Internetanschlusses des Unternehmens angegeben:
![image image]()
Hinweis: Hier handelt es sich um die WAN-IP des Routers / Firewalls des Unternehmens.
Die WAN-IP wird für autodiscover und mail eingegeben. Die Übersicht der Domain sollte nun in etwa so aus sehen:
![ExtDNS ExtDNS]()
Autodiscover.frankysweb.de und mail.frankysweb.de verfügen über je einen A-Record mit der externen IP Adresse des Unternehmens.
Die DNS Auflösung mittels nslookup sollte jetzt die externe IP für autodiscover.frankysweb.de und mail.frankysweb.de zurückliefern:
![image image]()
Es fehlt jetzt noch die Portweiterleitung am Router des Unternehmens damit der Exchange Server auch unter Port 443 erreichbar ist.
Konfiguration Portweiterleitung am Router / Firewall
Die END-Einträge wurden nun konfiguriert, allerdings fehlt noch eine Portweiterleitung am Router des Unternehmens, damit der Exchange Server auch via Port 443 aus dem Internet erreichbar ist. Auch hier ist die Einrichtung wieder abhängig vom eingesetzten Router oder Firewall. Auch der Name variiert hier von Hersteller zu Hersteller, NAT-Regel, Portforward, DNAT, Portweiterleitung oder Portfreigaben sind hier gängige Begriffe.
Die Logik dahinter ist folgende:
Eine Verbindung, die an der externen IP Adresse des Routers auf einem bestimmten Port ankommt, wird weitergeleitet an eine interne IP-Adresse und Port.
Hinweis: Die Einrichtung einer Portweiterleitung macht den Exchange Server aus dem Internet via Port 443 erreichbar. Besser wäre der Einsatz einer entsprechenden Firewall bzw. Proxys (hier ein Beispiel) zwischen Internet und Exchange Server. Die Einrichtung ist aber nicht Gegenstand dieses Artikels.
Falls das Unternehmen über eine Fritzbox verfügt, funktioniert die Einrichtung einer Portfreigabe wie folgt:
![image image]()
Wie im Screenshot zu erkennen ist, wird nur der Port 443 (TCP) an die interne IP des Exchange Servers auf Port 443 weitergeleitet.
Das rote Tuch (Exchange Zertifikat)
Zum Schluss ist das “rote Tuch” besser bekannt als Zertifikat an der Reihe. Wenn die Vorbereitungen allerdings alle abgeschlossen wurden, ist es jetzt kein Problem mehr.
Noch einmal kurz zum Hintergrund:
In der voran gegangene Konfiguration wurden die virtuellen Verzeichnisse und die Outlook Anywhere Konfiguration soweit angepasst, das diese auf mail.frankysweb.de hören, aus diesem FQDN ergeben sich dann die entsprechenden URLs mit denen die Verzeichnisse (interne und externe URLs) entsprechend konfiguriert wurden. Internes und Externes DNS wurden ebenfalls so konfiguriert, dass der Exchange Server unter diesen URLs erreichbar ist. Somit sind für das Zertifikat nur die folgenden FQDNs von Bedeutung:
- mail.frankysweb.de
- autodiscover.frankysweb.de
Mehr muss nicht auf dem Zertifikat stehen. Nur diese beiden Namen. Falls sich jetzt schon jemand fragen sollte: Was ist denn wenn ich mehrere Domains habe und auch E-Mail Adressen mit beispielsweise “@frankysweb.com”? Weiterlesen, kommt noch…
Um die Zertifikatsanforderung zu speichern, sollte vorab ein Ordner angelegt werden. Am besten auf dem Exchange Server selbst unter C:\. In diesem Fall ist es C:\Zertifikat:
![image image]()
Jetzt kann die Zertifikatsanforderung erstellt werden.
Zertifikatsanforderung erstellen
Damit eine Zertifizierungsstelle ein Zertifikat ausstellen kann, wird eine Zertifikatsanforderung benötigt. Die Zertifikatsanforderung teilt der Zertifizierungsstelle die Eigenschaften für das Zertifikat mit. Um bei den Ausweisbeispiel zu bleiben: Die Zertifikatsanforderung ist der Antrag auf einen Ausweis, wobei der Antrag den Namen, Adresse usw. enthält. Der Antrag (Zertifikatsanforderung) muss jetzt von von einer Behörde/Land (Zertifizierungsstelle) ausgestellt werden.
Eine Zertifikatsanforderung kann via Exchange Admin Center erstellt werden:
![image image]()
Als Anzeigename wird “mail.frankysweb.de” eingetragen:
![image image]()
Der nächste Dialog kann so belassen werden, hier muss nichts ausgewählt werden:
![image image]()
Gespeichert wird das Zertifikat auf EX1 dem Exchange Server:
![image image]()
Im darauf folgenden Dialog werden alle URLs noch einmal angezeigt:
![image image]()
Wer die Liste durchscrollt, wird feststellen, das hier noch interne Servernamen und URLs angezeigt werden. Auch diese können so belassen werden:
![image image]()
Im nächsten Dialog lassen sich die Einträge für das Zertifikat bearbeiten, hier wird jetzt alles gelöscht, sodass nur noch “mail.frankysweb.de” und “autodiscover.frankysweb.de” überbleibt.
Vorher:
![image image]()
Nachher:
![image image]()
Jetzt müssen noch ein paar Angaben vervollständigt werden. Organisationsname entspricht dabei den Firmenname, der Abteilungsname kann frei gewählt werden, Ort, Bundesland und Land sollte klar sein:
![image image]()
Zum Schluss wird der Speicherort für die Zertifikatsanforderung angegeben. Im Vorfeld wurde dazu der Ordner c:\Zertifikat auf dem Exchange Server angelegt. Dieser Ordner kann nun per Administrativer Freigabe angesprochen werden:
![image image]()
Die Anforderung wurde erstellt im Admin Center ist nun eine ausstehende Anforderung zu sehen:
![image image]()
Ausstehende Anforderung bedeutet in diesem Fall soviel wie: Antrag ausgefüllt, aber noch kein Ausweis ausgestellt.
Unter C:\Zertifikat findet sich nun eine Datei mit dem Namen “Anforderung.txt”. Diese Datei enthält den Antrag für die Zertifizierungsstelle, auch “Certificate Signing Request” (CSR) genannt:
![image image]()
Der Antrag (CSR) muss nun bei einer Zertifizierungsstelle eingereicht werden.
Zertifikat von einer offiziellen Zertifizierungsstelle anfordern
Die zuvor generierte Anforderung muss nun bei einer Zertifizierungsstelle eingereicht werden. Die Zertifizierungsstelle stellt dann ein entsprechendes Zertifikat aus.
Wie schon mehrfach erwähnt müssen zwei Namen auf dem Zertifikat (SAN Zertifikat) vorhanden sein (autodiscover.frankysweb.de und mail.frankysweb.de). So steht es auch in der generierten Anforderung. Bei dem Reseller PSW gibt es recht günstig ein entsprechendes Zertifikat:
https://www.psw-group.de/ssl-zertifikate/detail/c44-geotrust-quickssl-premium/
3 Jahre Gültigkeit kosten 99 EUR. Verschiedene andere CAs bieten Zertifikate auch kostenlos an, wobei als wohl bekanntester Vertreter StartSSL Probleme mit Mozilla bekommen hat (StartSSL und auch WooSign haben es nicht ganz so genau mit der eigenen Sicherheit genommen).
Der Prozess wie eine Anforderung eingereicht werden muss, ist aber bei den meisten Zertifizierungsstellen ähnlich:
- Anmelden
- Zertifikatsanforderung einreichen
- Valdierung durchlaufen (das Verfahren kann unterschiedlich sein, meistens eine Mail an webmaster@domain.tld oder hostmaster@domain.tld)
- Zertifikat erhalten
- Bezahlen (ggf. auch kostenlos)
Trotz der Probleme bei StartSSL lassen sich weiterhin Zertifikate beantragen, da wie schon der Prozess bei den meisten Zertifizierungsstellen relativ ähnlich ist, folgt hier das Beispiel mit StartSSL. Die Anmeldung wurde bereits abgeschlossen:
Bei StartSSL müssen dann die beiden DNS-Namen angegeben und der Inhalt der Datei Anforderung.txt hochgeladen werden:
![image image]()
Nach entsprechender Validierung durch die Zertifizierungsstelle erhält man das Zertifikat. Für Testumgebungen lässt sich StartSSL weiterhin wunderbar verwenden, ich nehme an das die Probleme mit Mozilla in absehbarer Zeit geklärt werden.
Für produktive Umgebung würde ich empfehlen ein Zertifikat zu kaufen, der Preis aus dem oben genannten Beispiel ist sicherlich nicht zu hoch und bei 3 Jahren Laufzeit durchaus erschwinglich.
Sobald man das Zertifikat von der Zertifizierungsstelle erhalten hat (meistens per Download oder per Mail), kann es auf dem Exchange Server unter C:\Zertifikat abgespeichert werden.
Die meisten Zertifizierungsstellen stellen das Zertifikat in verschiedenen Formaten aus. Exchange Server kann mit .CER und .CRT Dateien umgehen. In diesem Beispiel ist es eine .CRT Datei:
![image image]()
Zertifikatsanforderung abschließen und Dienste zuweisen
Sobald das Zertifikat im Ordner C:\Zertifikat abgespeichert wurde, kann die Austehende Anforderung abgeschlossen werden. Dieser Vorgang kann wieder mittels Exchange Admin Center erfolgen:
![image image]()
Im Dialog wird dann wieder die Administrative Freigabe und der Name des Zertifikats angegeben:
![image image]()
Sobald die Anforderung abgeschlossen wurde, wird das Zertifikat mit “Gültig” gekennzeichnet:
![image image]()
Jetzt ist zwar ein gültiges Zertifikat vorhanden, aber dieses Zertifikat wurde noch nicht den Exchange Diensten zugeordnet.
Damit Exchange dieses Zertifikat auch künftig verwendet, muss es an die relevanten Dienste gebunden werden, dazu werden die Eigenschaften des Zertifikats per Doppelklick geöffnet und die folgenden Dienste zugewiesen:
![image image]()
Die Warnung muss bestätigt werden, dann wird das Zertifikat ausgetauscht:
![image image]()
Ab jetzt benutzt Exchange das neue Zertifikat.
Überprüfung
Zur Überprüfung können nun mehrere Tests durchgeführt werden.
Zunächst kann die DNS Auflösung von internen sowie externen Rechnern getestet werden:
![image image]()
Intern muss die interne IP des Exchange Servers aufgelöst werden, extern die entsprechende IP des Routers mit der Portweiterleitung.
Dann kann Outlook Web Access von internen sowie externen Rechnern aufgerufen werden, jeweils unter den Namen mail.frankysweb.de. Beim Aufruf darf nun keine Zertifikatswarnung mehr auftreten:
![Exchange 2016 Zertifikate Exchange 2016 Zertifikate]()
In den Details des Zertifikat unter dem Punkt “Alternativer Antragsstellername” müssen beide Namen hinterlegt sein:
![image image]()
Outlook zeigt im Verbindungsstatus nur mail.frankysweb.de als Servernamen an, interne Namen dürfen hier nicht mehr vorkommen:
![image image]()
Der Outlook Modus “E-Mail Autokonfiguration testen” liefert nur noch URLs mit https://mail.frankysweb.de/… zurück
Exchange Remote Connectivity Analyzer lässt für den Autodiscover Test sauber durch:
![image image]()
Bei der URL “https://frankysweb.de:443/Autodiscover” darf es zu einem Fehler kommen, da Exchange nicht unter dieser URL erreichbar ist, für die URL https://autodiscover.frankysweb.de:443/autodisover” muss es sauber durchlaufen (Ohne Zertifikatswarnung)
![image image]()
Nachtrag
Dies war die grundlegende Konfiguration mit einer E-Mail Domain und einem offiziellen Zertifikat. Nun gibt es natürlich noch weitere Fälle mit einer internen Zertifizierungsstelle oder mehreren E-Mail Domänen. Das wird dann ein Fall für Teil 3 (bereits in Arbeit, wird verlinkt wenn fertig).
Der Beitrag Exchange 2016: Zertifikate konfigurieren (Teil 2) erschien zuerst auf Franky's Web.