Nutzung des IIS (Internet Information Server) als Reverse Proxy
Um verschiedene Webdienste mit der gleichen URL nutzen zu können (z.B. ActiveSync und WebApp-API) wird ein Reverseproxy benötigt. Dieser kann sich gleichzeitig auch um die SSL Zertifikate für eine verschlüsselete Kommunikation kümmern.
Natürlich ist es auch möglich in einer Firewall/UTM wir Securepoint oder Sophos einen Reverseproxy mit der entsprechenden Funktionalität zu konfigurieren
Dieser Beitrag richtet sich an Server Administratoren mit Erfahrung im Umgang mit dem Servermanager und Powershell
Leiten Sie in Ihrer Firewall die Ports 80 und 443 auf den antony Server um
Installieren Sie den IIS-Webserver mit den entsprechenden Verwaltungstools auf dem antony-Server über den Microsoft Server Manager
Installieren Sie das URL Rewrite Modul von Microsoft (Version 2.1 oder neuer)
https://iis-umbraco.azurewebsites.net/downloads/microsoft/url-rewriteInstallieren Sie das Application Request Routing Modul von Microsoft (Version 3 oder neuer)
https://iis-umbraco.azurewebsites.net/downloads/microsoft/application-request-routingÖffnen Sie den IIS Manager
Die Folgende Anleitung setzt voraus, das Sie im IIS keine weiteren Funktionen nutzen möchten
Wählen Sie auf der linken Seite den Server aus und klicken dann rechts auf “Application Request Routing Cache”
Klicken Sie dann am rechten Rand auf “Server Proxy Settings” und aktivieren Sie dort den Proxy
Klicken Sie am rechte Rand auf “Übernehmen”
Klicken Sie links in der Baumansicht nun auf Sites-Default-Web-Site. Klicken Sie dort mit der rechten Maustaste und wählen dann “Im Explorer öffnen”
Löschen Sie die iisstart-Dateien in dem Ordner (wenn auf dem Server sonst keine Webseiten liegen, ist der Ordner anschließend leer)
Erstellen Sie mit einem Texteditor Ihrer Wahl die Datei “web.config” und kopieren Sie diesen Inhalt hinein
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="ReverseProxyInboundRule2" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTPS_HOST}{REQUEST_URI}" />
</rule>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="(.*activesync.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://127.0.0.1:50080/{R:1}" />
</rule>
<rule name="ReverseProxyInboundRule3" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://127.0.0.1:8078/{R:1}" />
<conditions>
<add input="{REQUEST_URI}" pattern="^/\.well-known/*" negate="true" />
<add input="{HTTPS}" pattern="on" />
</conditions>
</rule>
</rules>
</rewrite>
<security>
<requestFiltering allowDoubleEscaping="true" />
</security>
</system.webServer>
</configuration>
Öffnen Sie den antony Hub und notieren Sie sich den http-Port für die Web-Api
Öffnen Sie den IIS Manager, öffnen Sie Sites->Default-Web-Site und klicken dann auf “URL Rewrite”
Klicken Sie doppelte auf die letzte Regel und passen falls nötig den Port auf die Web-API an (ganz unten)
Jetzt folgt die Installation von “Certifiy The Web” um SSL Zertifikate für die Domäne zu erzeugen