Da die Mobilgeräte sich von außen mit Mobile Session Print verbinden, empfiehlt sich der Einsatz eines Proxyservers in der DMZ des Unternehmensnetzwerkes. Hierzu ist ein Webserver (IIS) inkl. Application Request Routing (ARR) erforderlich.
IIS und ARR auf dem Proxyserver konfigurieren
Proxy
1. Richten Sie einen Proxyserver in der DMZ ein. Eine Domänenmitgliedschaft wird nicht empfohlen.
2. Installieren Sie dort die Server-Rolle Web Server (IIS) inkl. ASP.NET und Application Developement.

Server Manager: Web Server (IIS) inkl. ASP.NET und Application Development installieren
3. Installieren Sie ARR als Extension für den IIS. Download:
https://www.iis.net/downloads/microsoft/application-request-routing
Lesen Sie hierzu auch:
https://technet.microsoft.com/en-us/library/dd443526(WS.10).aspx
4. Wählen Sie im IIS-Manager den Application Request Routing Cache.

IIS-Manager: Application Request Routing Cache wählen
5. Klicken Sie dann Server Proxy Settings.

Application Request Routing Cache: Server Proxy Settings wählen
6. Wählen Sie Enable proxy.

Proxyserver aktivieren
7. Speichern Sie diese Einstellung mit Apply oder mit Yes, wenn Sie dazu aufgefordert werden.

Einstellungen mit Yes speichern
8. Wählen Sie im IIS-Manager erneut Application Request Routing Cache und dann wieder Server Proxy Settings.
9. Entfernen Sie das Häkchen bei Enable disk cache und speichern Sie wieder mit Apply oder mit Yes, wenn Sie dazu aufgefordert werden.

Disk-Cache deaktivieren
10. Wechseln Sie zu Default Web Site, und wählen Sie dort Bindings.

Default Web Site: Bindings wählen
11. Fügen Sie ein Binding für https inkl. eines gültigen Webserver-Zertifikats hinzu. Wählen Sie hierzu Add, dann den Typ https. Mit Select wählen Sie das Zertifikat aus und bestätigen mit OK. Das Zertifikat kann entweder ein gekauftes sein, ein mit einer eigenen Zertifizierungsstelle generiertes oder ein selbst signiertes.

Default Web Site: Binding für https inkl. Zertifikat hinzufügen
12. Falls Sie ein selbst signiertes Zertifikat für diesen Server generieren wollen, wählen Sie Server Certificates in Home-Pfad des Servers.

Selbst signiertes Zertifikat generieren: Server Certificates wählen

Server Certificates: Create Self-Signed Certificate wählen
13. Wählen Sie SSL Settings im Bereich Default Web Site.
(SSL bedeutet hier allgemein Verschlüsselung. Diese kann auch mit dem neueren TLS erfolgen.)

Default Web Site: SSL Settings wählen
14. Aktivieren Sie Require SSL. Speichern Sie wieder die Einstellung mit Apply oder mit Yes, wenn Sie dazu aufgefordert werden.

SSL Settings: SSL aktivieren
15. Wählen Sie URL Rewrite im Bereich Default Web Site.

Default Web Site: URL Rewrite wählen
16. Wählen Sie View Server Variables.

URL Rewrite: View Server Variables wählen
17. Fügen Sie mit Add folgende Variablen hinzu:
HTTP_X_GW_DMZ_SECRET
HTTP_X_GW_CERT_SUBJECT
HTTP_X_GW_CERT_FLAGS
HTTP_X_GW_CERT_ISSUER
Bestätigen Sie jeweils mit OK.

URL Rewrite: Variablen hinzugefügt
18. Wählen Sie Add Rules und dann Reverse Proxy.

Regel hinzufügen: Reverse Proxy wählen
19. Geben Sie die Adressen von Mobile-Session-Print-Server und Proxyserver inklusive TCP-Port für den Mobile-Session-Print-Server ein (Port 579 als Beispiel im folgenden Bild) und bestätigen Sie mit OK. Ohne Port-Angabe wird der Proxyserver die Verbindung zum Mobile-Session-Print-Server über Port 80 herstellen.
Im Ergebnis erhalten Sie eine Inbound- und eine Outbound-Regel angezeigt.

Reverse Proxy Rules: Adressen von Mobile-Session-Print- und Proxyserver eingeben

Ergebnis: eine Inbound- und eine Outbound-Regel
20. Öffnen Sie die eingehende Regel und wählen Sie Add.

Inbound-Regel: Add klicken
21. Fügen Sie die folgenden Variablen hinzu, und bestätigen Sie jeweils mit OK:
HTTP_X_GW_DMZ_SECRET
= beliebige (geheime) Zeichenkette (Replace the existing valua aktiviert)
HTTP_X_GW_CERT_SUBJECT
= {CERT_SUBJECT} (Replace the existing valua deaktiviert)
HTTP_X_GW_CERT_FLAGS
= {CERT_FLAGS} (Replace the existing valua deaktiviert)
HTTP_X_GW_CERT_ISSUER
= {CERT_ISSUER} (Replace the existing valua deaktiviert)

Inbound-Regel: Variablen hinzufügen
22. Speichern Sie die Variablen mit Apply.

Inbound-Regel: Variablen speichern
23. Starten Sie den IIS neu – beispielsweise mit dem Kommando iisreset
auf der Kommandozeile.
24. Stellen Sie sicher, dass der Proxyserver von außen erreichbar ist.
Mobile-Session-Print-Server konfigurieren
Mobile Session Print
1. Wählen Sie im IIS-Manager die Website TPMobilePrint und dort SSL Settings.

IIS-Manager: SSL-Einstellungen von TPMobilePrint wählen
2. Deaktivieren Sie Require SSL und setzen Sie Client certificates auf Ignore. Speichern Sie diese Einstellung mit Apply oder mit Yes, wenn Sie dazu aufgefordert werden.

SSL-Einstellungen: Require SSL deaktivieren und Client-Zertifikate ignorieren
Zwischen Mobile-Session-Print-Server und Proxyserver ist eine Verschlüsselung nicht erforderlich, da sich beide innerhalb der Firma befinden. Aber es ist natürlich möglich.
3. Wenn Sie für auf dem Proxyserver einen speziellen TCP-Port eingestellt haben, dann müssen Sie diesen auch hier einstellen. Wählen Sie hierzu Bindings für die Default Web Site und stellen Sie dort denselben TCP-Port ein wie auf dem Proxyserver.

Default Web Site: Bindings wählen

TCP-Port vom Proxyserver einstellen
4. Wechseln Sie zurück zur Webseite TPMobilePrint und wählen Sie Add in Application Settings.

Wert für Zeichenkette vom Proxyserver hinzufügen
5. Geben Sie einen neuen Wert mit der von Ihnen auf dem Proxyserver definierten (geheimen) Zeichenkette ein.

Zeichenkette vom Proxyserver (AnySecretString) hinzugefügt
6. Starten Sie den IIS neu – beispielsweise mit dem Kommando iisreset
auf der Kommandozeile.
Mobile Session Print mit Proxyserver registrieren
Öffnen Sie die Management Console des Lizenzserver – z. B. mit einem beliebigen HTML5-Browser über folgende Adresse:
https://<Lizenzserver-adresse>:4004/fw
Proxyserver am TPNS registrieren
- Loggen Sie sich mit dem Installationsaccount des Lizenzservers ein, z. B. mit dem oben empfohlenen ServiceAccount (siehe Nutzer-Account für die Installation).

In die Management Console einloggen
- Wählen Sie Global Settings.

Konfiguration mit Global Settings starten
- Wählen Sie Mobile Print→ Register Server.

Registrierung des Mobile-Session-Print-Servers mit Proxyserver starten
- Geben Sie die Adresse des Proxyservers anstelle des Mobile-Session-Print-Servers sowie die E-Mail-Adresse eines Admin-Accounts an. Damit werden sowohl der Proxyservers als auch die E-Mail-Domäne am TPNS registriert.

Adresse des Proxyservers und E-Mail-Adresse eines Admins angeben
Bei der Registrierung von Mobile Session Print am TPNS wird nicht der Server registriert, sondern nur die Domäne (thinprint.com) zusammen mit der E-Mail-Adresse ([email protected]). Somit besteht kein Unterschied zwischen der Registrierung eines Mobile-Session-Print-Servers oder eines Proxyservers. Die Domäne wird dann für die Nutzerauthentifizierung verwendet (nur Accounts einer registrierten Domäne dürfen ihr Mobilgerät registrieren). Die E-Mail-Adresse dient der Bestätigung der Domain-Registrierung. Und die im obigen Bild dargestellte URL ist für die Mobilgeräte, damit sie sich mit dem Mobile-Session-Print-Server (via Proxy) verbinden können. Deshalb wird hier https empfohlen.
- Wenn die Meldung Confirm activation lin in e-mail erscheint, wechseln Sie zum Postfach des angegebenen Nutzeraccounts, und klicken Sie zur Bestätigung den Verify-Button in der Registrierungsmail.

Wechsel ins Postfach und dann Registrierung abschließen
- Beenden Sie die Server-Registrierung, wie im Abschnitt Mobile-Session-Print-Server am TPNS registrieren beschrieben.
Nutzer und Geräte registrieren
- Aktivieren Sie Nutzer für Mobile Session Print. Siehe hierzu den Abschnitt Nutzer für Mobile Session Print aktivieren.
- Installieren Sie die Session-Print-App auf einem Mobilgerät und registrieren Sie diese für einen Nutzer. Siehe hierzu die Abschnitte iOS-App installieren und Gerät registrieren.
- Die Registrierung am TPNS wird hier zwar funktionieren, aber die App kann noch nicht auf den Mobile-Session-Print-Server zugreifen (siehe weiter unten: Gerät endgültig registrieren), aber der Versuch muss durchgeführt werden, da dieser die Generierung des Root-Zertifikates ThinPrintMobilePrint Instance CA auslöst (s. u.).

Zugriff auf den Mobile-Session-Print-Server schlägt hier noch fehl
Einstellungen auf dem Proxyserver
- Exportieren Sie das Root-Zertifikat ThinPrintMobilePrint Instance CA vom Mobile-Session-Print-Server aus dem Zertifikat-Store Trusted Root Authentication Authorities (Windows 2008 R2) oder Client Authentication Issuers (Windows 2012 und höher) – ohne Private Key –, und importieren Sie es auf dem Proxyserver nach uTrusted Root Authentication Authorities sowie ab Windows 2012 zusätzlich nach Client Authentication Issuers.
- Legen Sie weiterhin folgende Registrierungswerte auf dem Proxyserver an:
- Windows 2008 R2:
hkey_local_machine\software\policies\microsoft\systemcertificates\authroot\DisableRootAutoUpdate=1
- Windows 2012 und höher:
hkey_local_machine\system\currentcontrolset\control\securityproviders\schannel\ClientAuthTrustMode=2
- Windows 2008 R2:
Weitere Settings auf Proxys ab Windows 2012
- Wählen Sie anschließend Default Web Site im IIS-Manager des Proxyservers (ab Windows 2012).
- Wählen Sie dort Add in Application Settings.

IIS-Manager: Application Settings der Default Web Site
- Geben Sie einen neuen Eintrag mit dem Namen CAStoreName und dem Wert ClientAuthIssuer ein.

Name des Zertifikat-Stores im IIS-Manager hinzugefügt
- Ebenfalls auf Windows-2012-Proxys legen Sie den Wert DefaultSslCtlStoreName [reg_sz] in der Windows-Registrierung an, und geben hier die Zeichenkette ClientAuthIssuer ein:
hkey_local_machine\system\currentcontrolset\services\http\parameters\SslBindingInfo\0.0.0.0:<proxy-port>
<proxy-port> steht für den TCP-Port, den Sie oben festgelegt haben.

Name des Zertifikat-Stores zur Registry hinzugefügt
- Prüfen Sie auf dem Proxy-Server (ab Windows 2012), ob der Name des Zertifikat-Stores nun auch in der web.config (in c:\inetpub\wwwroot) steht.

Name des Zertifikat-Stores in der web.config
- Starten Sie zum Abschluss den http-Dienst neu – beispielsweise mit dem Kommando
net stop http
und anschließendnet start http
auf der Kommandozeile.
Sollte der Start des http-Dienstes beim ersten Versuch fehlschlagen, dann sichern Sie den Registrierungsschlüssel hkey_local_machine\system\currentcontrolset\services\http\parameters\SslBindingInfo\0.0.0.0:<proxy-port>
(s. o.), löschen ihn in der Registry und starten dann den http-Dienst. Anschließend installieren Sie den gespeicherten Schlüssel wieder und starten den http-Dienst neu.
Gerät endgültig registrieren
- Wiederholen Sie die zuvor fehlgeschlagene Geräteregistrierung (siehe Nutzer und Geräte registrieren).