Exchange 2016: URLs und Hostnamen per PowerShell konfigurieren

Um die URLs und Hostnamen eines Exchange 2016 Servers festzulegen, kann das folgende Script benutzt werden:

#Hostname für Exchange Webservices, OWA, Outlook Anywhere, Active Sync:
$OutlookHostname = "outlook.frankysweb.de"
#Hostname für Autodiscover:
$AutodiscoverHostname = "autodiscover.frankysweb.de"

#OWA
$owa = "https://" + "$OutlookHostname" + "/owa"
write-host "OWA URL:" $owa
Get-OwaVirtualDirectory -Server $env:computername | Set-OwaVirtualDirectory -internalurl $owa -externalurl $owa -wa 0

#ECP
$ecp = "https://" + "$OutlookHostname" + "/ecp"
write-host "ECP URL:" $ecp
Get-EcpVirtualDirectory -server $env:computername| Set-EcpVirtualDirectory -internalurl $ecp -externalurl $ecp

#EWS
$ews = "https://" + "$OutlookHostname" + "/EWS/Exchange.asmx"
write-host "EWS URL:" $ews
Get-WebServicesVirtualDirectory -server $env:computername | Set-WebServicesVirtualDirectory -internalurl $ews -externalurl $ews -confirm:$false -force

#ActiveSync
$eas = "https://" + "$OutlookHostname" + "/Microsoft-Server-ActiveSync"
write-host "ActiveSync URL:" $eas
Get-ActiveSyncVirtualDirectory -Server $env:computername  | Set-ActiveSyncVirtualDirectory -internalurl $eas -externalurl $eas

#OfflineAdressbuch
$oab = "https://" + "$OutlookHostname" + "/OAB"
write-host "OAB URL:" $oab
Get-OabVirtualDirectory -Server $env:computername | Set-OabVirtualDirectory -internalurl $oab -externalurl $oab

#MAPIoverHTTP
$mapi = "https://" + "$OutlookHostname" + "/mapi"
write-host "MAPI URL:" $mapi
Get-MapiVirtualDirectory -Server $env:computername| Set-MapiVirtualDirectory -externalurl $mapi -internalurl $mapi

#Outlook Anywhere (RPCoverhTTP)
write-host "OA Hostname:" $OutlookHostname
Get-OutlookAnywhere -Server $env:computername| Set-OutlookAnywhere -externalhostname $OutlookHostname -internalhostname $OutlookHostname -ExternalClientsRequireSsl:$true -InternalClientsRequireSsl:$true -ExternalClientAuthenticationMethod 'Negotiate' -wa 0

#Autodiscover SCP
$autodiscover = "https://" + "$AutodiscoverHostname" + "/Autodiscover/Autodiscover.xml"
write-host "Autodiscover URL:" $autodiscover
Get-ClientAccessService $env:computername | Set-ClientAccessService -AutoDiscoverServiceInternalUri $autodiscover

Nachdem Zeile 2 und Zeile 4 angepasst wurden, kann das Script auf jedem Exchange 2016 Server ausgeführt werden, der die Einstellungen erhalten soll. Um das Script auszuführen, kann es in eine .PS1 Datei kopiert werden, die dann mit der Exchange Management Shell ausgeführt wird:

URLs und Hostnamen

Das Script konfiguriert interne und externe URL, bzw. internen und externen Hostnamen identisch.

Danach können die Zertifikate mit den Hostnamen konfiguriert werden, die in Zeile 2 und Zeile 4 angegeben wurden. Ob alle Exchange Server die korrekten URLs haben, lässt sich mit dem Script aus diesem Artikel prüfen:

Exchange 2016: DNS-Namen für Zertifikate ermitteln (Quick & Dirty)

8 thoughts on “Exchange 2016: URLs und Hostnamen per PowerShell konfigurieren”

  1. Hi zusammen,

    ich hab ein Problem, mit den Handys. Die bekommen immer nur firma.de als Server übermittelt und nicht mail.firma.de.

    Ich hab schon alles durchsucht und find den Fehler nicht.

    Hat jemand eine Idee woran das liegen kann?

    Reply
  2. Gleiches Problem wie Phil:

    Haben auch ein Multi Domain Zertifikat(mail.company.com, autodiscover.company.com) erworben und alle URL’s angepasst.

    Leider kommt bei allen Mitarbeitern im Outlook die Meldung, dass das Zertifikat nicht mit dem Namen der Website(mail.server.local) übereinstimmt, da das Outlook nach den Änderungen der URL’s trotzdem noch die alten URL’s(mail.server.local) anspricht.

    Die einzige Lösung bis Dato ist ein neues Outlook Profil zu erstellen. Erst dann werden die aktuellen URL’s verwendet und es erscheint kein Sicherheitshinweis mehr.

    Gibt es eine Möglichkeit den bestehenden Outlook Profilen die geänderten URL’s zu übermitteln?

    Vielen Dank im Voraus.

    MfG

    Flavio

    Reply
    • Hi all,
      älterer Beitrag, aber ich habe exakt das selbe Problem. Wir haben den internen Servernamen so angepasst, dass er identisch mit dem externen ist und bekommen jetzt auf allen Clients Zertifikatfehler mit dem alten internen Servernamen. Obwohl der (eigentlich) nirgendwo mehr steht. Einzige Abhilfe auch bei uns: Profil neu erstellen. Das muss doch einfacher gehen?

      Bin für jeden Tipp dankbar!

      Viele Grüße
      Bernd

      Reply
      • Hallo, habt ihr keine Lösung gefunden? Habe das gleiche Problem und verstehe das Ganze auch nicht….neues Profil kann doch nicht die einzige Lösung sein oder?

        Danke

        Reply
  3. Hallo!
    Ich habe da ein Problem. Ich habe nachträglich für unsere Mailserver ein SAN-Zertifikat gekauft (mail1.domain.com, etc.).
    Habe dannach alle URLs auf mail1.domain.com geändert und die Server neu gestartet. Leider kommt bei einigen, fast allen Outlooks die Zertifikat-Warnung, dass das Zertifikat nicht mit dem Servernamen übereinstimmt. In der Warnung steht der Servername MAILSERVER1 und nicht wie im Zertifikat mail1.domain.com. Habe natürlich im ECP das Zerifikat eingespielt und für die benötigten Services aktiviert. Woran könnte das noch hängen? Vielen Dank!!!
    Phill

    Reply

Leave a Comment