Letzte Aktualisierung am 05.02.2023, 22:02:23 Uhr
Der eine oder andere nutzt für die Veröffentlichung von Diensten im Internet den Web Application Proxy (WAP) von Microsoft. Es handelt sich dabei um eine Feature, welches im Windows Server kostenlos verfügbar ist.
Gerade in der Pandemie haben die Remote Desktop Services (RDS) Hochkonjunktur erreicht. In diesen Zusammfang wird bei den Planungen von RD Webaccess (RD WA) in Kombination mit WAP vorgeschlagen. Oftmals soll somit auch das klassische RDWeb durch den Webclient auf Basis von HTML5 eingesetzt werden. Um so unabhängiger vom verwendeten Endgerät bzw. dessen Betriebssystem zu sein.
Der Webclient basiert auf neuen Technologien. Für dessen Nutzung wird auf WebSockets Protocols (WSS) gesetzt. Leider wird WSS nach wie vor vom WAP (bis einschließlich Windows Server 2019) nicht explizt unterstützt (Quelle).
So dass es für die sichere Veröffentlichung zwei Optionen gibt:
- Einsatz eines Alternativen WAP/Reverse Proxy, welcher WSS unterstützt (z.B. Apache, Nginx)
- Veröffentlichtung von RDS mit Hilfe von Azure AD Application Proxy
Nachstehend ein aktueller und vorallem funktionierender Konfigurationsausschnitt für Apache:
RewriteEngine on RewriteRule ^/$ /RDWeb/webclient/ [R=301,NC,L] RewriteCond %{REQUEST_URI} !^/\.well-known RewriteCond %{HTTP:Upgrade} websocket [NC] RewriteCond %{HTTP:Connection} upgrade [NC] RewriteRule .* "wss://remotedesktop.domain.de%{REQUEST_URI}" [P] ProxyPass /.well-known ! ProxyPass / https://remotedesktop.domain.de/ ProxyPassReverse / https://remotedesktop.domain.de/ ProxyRequests off
Der Apache läuft auf einem Server unter Ubuntu Server 20.04 LTS in der DMZ. Der Remote Desktop Webclient läuft auf einem dedizierten Windows Server 2019. Dieser fungiert gleichzeitig als Remote Desktop Gateway.