– Jan's Cloud – online Gedankenstütze ;)

9. September 2014

Exchange 2007 / 2010 / 2013 / 2016 virtuelle Verzeichnisse / Zertifikate / SplitDNS

Exchange 2007 / 2010 / 2013 / 2016 virtuelle Verzeichnisse / Zertifikate / SplitDNS

Zur Best-Practice Einrichtung eines Exchange Server ab der Version 2007 gehört SplitDNS. In vielen Konstellationen ist SplitDNS ebenfalls die einzige Möglichkeit ein Zertifikat einer öffentlichen Zertifizierungsstelle ausgstellt zu bekommen, da seit Oktober 2016 nur noch öffentliche TLDs signiert werden. Ebenso werden Zertifikate nicht mehr auf Hostnamen ausgestellt sondern nur noch auf FQDNs (Fully-Qualified Host Name).

Als erstes im internen DNS Manager zwei neue Host-Zonen anlegen:

Exchange_Zertifikate_SplitDNS01

Exchange_Zertifikate_SplitDNS01

 

Den Zonennamen entsprechend der öffentlichen Domain anpassen

 

 

 

 

 

 

Exchange_Zertifikate_SplitDNS02

Exchange_Zertifikate_SplitDNS02

 

Dynamische Updates nicht zulassen

 

 

 

 

 

 

Exchange_Zertifikate_SplitDNS03

Exchange_Zertifikate_SplitDNS03

 

In beiden neu angelegten Zonen jeweils einen neuen Host erstellen

 

 

 

 

Exchange_Zertifikate_SplitDNS04

Exchange_Zertifikate_SplitDNS04

 

Den Namen zwingend leer lassen, da wir eine Host-Zone erstellen und als IP Adresse die IP des Exchangeserver eintragen

 

 

 

 

 

 

 

Ein „ping owa.<domain.tld>“ sollte jetzt in die IP Adresse des Exchange aufgelöst werden.

Nachdem die Konfiguration von SplitDNS erledigt ist, sollten als nächstes diese beiden Host-Einträge (owa.<domain.tld> und autodiscover<domain.tld>) beim öffentlichen DNS-Anbieter angelegt werden und auf die öffentliche IP zeigen. Sowie an der Firewall ein Port-Forwarding von (tcp 80 (http) sowie) tcp 443 (https) auf den Exchange Server erfolgen. Sollte port 80 weitergeleitet werden, empfiehlt es sich diesen automatisch auf https umzueleiten. Eine praktische Anleitung dazu findet sich unter: http://robertwilleswelt.wordpress.com/2011/07/08/owa-verkurzung-der-url-auf-anderem-weg/

Im nächsten Schritt am Exchange Server in der Exchange Management Shell einen Zertifikatsrequest erstellen und bei der entsprechenden Zertifizierungstelle einrichen:

Set-Content -Path "C:\cert.req" -Value (New-ExchangeCertificate -GenerateRequest -KeySize 2048 -SubjectName "c=<Land>, s=<Bundesland>, l=<Ort>, o=<Antragsteller>, cn=owa.<domain.tld>" -domainName owa.<domain.tld>, autodiscover.<domain.tld>; -PrivateKeyExportable $True)

Danach den Zertifikatsrequest abschließen und das Zertifikat importieren:

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path c:\cert.cer -Encoding byte -ReadCount 0))

Im nächsten Step werden die internen und externen URLs der virtuellen Verzeichnisse angepasst.

Exchange 2007:

Get-OwaVirtualDirectory -Server <Exchange Server> | Set-OwaVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/owa' -ExternalUrl 'https://owa.<domain.tld>/owa'
Get-OABVirtualDirectory -Server <Exchange Server> | Set-OABVirtualDirectory -InternalURL 'https://owa.<domain.tld>/OAB' -ExternalURL 'https://owa.<domain.tld>/OAB'
Get-ActiveSyncVirtualDirectory -Server <Exchange Server> | Set-ActiveSyncVirtualDirectory -InternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync' -ExternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync'
Get-WEbServicesVirtualDirectory -Server <Exchange Server> | Set-WEbServicesVirtualDirectory -InternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx' -ExternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx'
Get-ClientAccessServer -Identity <Exchange Server> | Set-ClientAccessServer -AutodiscoverServiceInternalUri https://owa.<domain.tld>/autodiscover/autodiscover.xml
Get-OutlookAnywhere -Server <Exchange Server> | Set-OutlookAnywhere -ExternalHostname owa.<domain.tld>

Exchange 2010:

Get-OwaVirtualDirectory -Server <Exchange Server> | Set-OwaVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/owa' -ExternalUrl 'https://owa.<domain.tld>/owa'
Get-EcpVirtualDirectory -Server <Exchange Server> | Set-EcpVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/ecp' -ExternalUrl 'https://owa.<domain.tld>/ecp'
Get-OABVirtualDirectory -Server <Exchange Server> | Set-OABVirtualDirectory -InternalURL 'https://owa.<domain.tld>/OAB' -ExternalURL 'https://owa.<domain.tld>/OAB'
Get-ActiveSyncVirtualDirectory -Server <Exchange Server> | Set-ActiveSyncVirtualDirectory -InternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync' -ExternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync'
Get-WEbServicesVirtualDirectory -Server <Exchange Server> | Set-WEbServicesVirtualDirectory -InternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx' -ExternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx'
Get-ClientAccessServer -Identity <Exchange Server> | Set-ClientAccessServer -AutodiscoverServiceInternalUri https://owa.<domain.tld>/autodiscover/autodiscover.xml
Get-OutlookAnywhere -Server <Exchange Server> | Set-OutlookAnywhere -ExternalHostname owa.<domain.tld>

Exchange 2013 / 2016:

Get-OwaVirtualDirectory -Server <Exchange Server> | Set-OwaVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/owa' -ExternalUrl 'https://owa.<domain.tld>/owa'
Get-EcpVirtualDirectory -Server <Exchange Server> | Set-EcpVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/ecp' -ExternalUrl 'https://owa.<domain.tld>/ecp'
Get-OABVirtualDirectory -Server <Exchange Server> | Set-OABVirtualDirectory -InternalURL 'https://owa.<domain.tld>/OAB' -ExternalURL 'https://owa.<domain.tld>/OAB'
Get-ActiveSyncVirtualDirectory -Server <Exchange Server> | Set-ActiveSyncVirtualDirectory -InternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync' -ExternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync'
Get-WEbServicesVirtualDirectory -Server <Exchange Server> | Set-WEbServicesVirtualDirectory -InternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx' -ExternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx'
Get-MapiVirtualDirectory -Server <Exchange Server> | Set-MapiVirtualDirectory -InternalURL 'https://owa.<domain.tld>/mapi' -ExternalURL 'https://owa.<domain.tld>/mapi'
Get-ClientAccessServer -Identity <Exchange Server> | Set-ClientAccessServer -AutodiscoverServiceInternalUri https://owa.<domain.tld>/autodiscover/autodiscover.xml
Get-OutlookAnywhere -Server <Exchange Server> | Set-OutlookAnywhere -InternalHostname owa.<domain.tld> -ExternalHostname owa.<domain.tld>

Neues Zertifikat an die Exchangedienste binden:

# Exchangezertifikate ausgeben, damit der Thumprint ermittelt werden kann
Get-ExchangeCertificate

# Neues Zertifikat aktivieren und an die Dienste binden
Enable-ExchangeCertificate -Thumbprint <THUMBPRINT> -Service IIS, IMAP, SMTP, POP

2 Comments »

  1. […] würde an dieser Stelle einfach mal voraussetzen, dass der Exchange Server entsprechend sauber mit Split DNS konfiguriert ist, die Remotedesktopdienste ebenfalls funktionstüchtig sind und der Netscaler grundkonfiguriert […]

    Pingback by Exchange und Remotedesktopgateway über eine IP veröffentlichen - Jan's Cloud - — 16. Juli 2018 @ 12:41

  2. […] Im nächsten Schritt wäre es sehr hilfreich, wenn der Exchange 2010 bereits nach Best Practice konfiguriert ist und die internen URLs der virtuellen Verzeichnisse gleich denen der externen URLs sind (SplitDNS). Sollte dies nicht der Fall sein – Don’t Panic! Dann wird SplitDNS eben umgehend eingeführt: https://jans.cloud/2014/09/exchange-2007-2010-2013-2016-virtuelle-verzeichnisse-zertifikate-splitdns&#8230; […]

    Pingback by Migration Exchange 2010 zu 2016 - Jan's Cloud - — 23. Juli 2018 @ 11:39

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress