> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell-universal/de/config/hosting/reverse-proxy.md).

# Reverse Proxy

Konfigurieren Sie PowerShell Universal für den Betrieb hinter einem Reverse Proxy – einschließlich WebSocket-Unterstützung, weitergeleiteter Header und Einrichtung des Azure Application Proxy.

Reverse-Proxys ermöglichen die Konfiguration von Funktionen wie TLS, Header-Umschreibung, Caching und Lastverteilung. Zu den beliebten Reverse-Proxys gehören IIS, Apache und NGINX.

Jedes dieser Systeme erfasst HTTP-Traffic und leitet ihn an einen Backend-Webserver wie PowerShell Universal weiter. Bei der Konfiguration eines Reverse-Proxys vor PowerShell Universal sind einige Punkte zu beachten.

## WebSocket-Unterstützung

PowerShell Universal benötigt WebSocket-Unterstützung, um alle in der Plattform verfügbaren Funktionen bereitzustellen. Ohne WebSocket-Unterstützung funktionieren Apps nicht und Benachrichtigungen werden nicht in Echtzeit angezeigt.

Je nach Proxy müssen Sie möglicherweise die WebSocket-Unterstützung konfigurieren.

* [IIS WebSocket Protocol Support](https://learn.microsoft.com/en-us/iis/get-started/whats-new-in-iis-8/iis-80-websocket-protocol-support)
* [NGINX WebSocket proxying](https://nginx.org/en/docs/http/websocket.html)

## Weitergeleitete Header

Wenn sich ein Webserver hinter einem Reverse-Proxy befindet, unterscheiden sich der externe Hostname, das Protokoll und der Port wahrscheinlich vom Proxy selbst. Beispielsweise lauscht PowerShell Universal auf Port 5000, über HTTP und basierend auf einer bestimmten IP-Adresse (oder Loopback) statt auf einem DNS-Namen.

```
https://www.proxyaddress.com -> http://localhost:5000
```

Dies kann zu Problemen mit URL-Weiterleitungen führen, wie sie in Authentifizierungsflüssen von [OpenID Connect](/powershell-universal/de/sicherheit/enterprise-security/openid-connect.md) verwendet werden. PowerShell Universal muss in der Lage sein, die Weiterleitungs-URL für den Authentifizierungsfluss korrekt zu bilden. Ohne Kenntnis des tatsächlichen Hostnamens, Ports oder Protokolls, das vom Endbenutzer verwendet wird, können ungültige URLs erzeugt werden, wodurch der Fluss fehlschlägt.

Standardmäßig verarbeitet PowerShell Universal [weitergeleitete Header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Forwarded) automatisch. Die folgenden Header werden automatisch verarbeitet.

* X-Forwarded-For
* X-Forwarded-Host
* X-Forwarded-Proto

Dies ermöglicht PowerShell Universal, die richtigen Umleitungs-URLs für Authentifizierungsabläufe zu erstellen.

Reverse-Proxys erfordern möglicherweise eine Konfiguration, um diese Header korrekt zu senden.

* IIS konfiguriert weitergeleitete Header automatisch.
* [NGINX Forwarded Headers](https://www.nginx.com/resources/wiki/start/topics/examples/forwarded/)
* [Apache mod\_proxy](https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#x-headers)
* [CloudFlare HTTP request headers](https://developers.cloudflare.com/fundamentals/get-started/reference/http-request-headers/#x-forwarded-for)

## Azure Application Proxy

Der Azure Application Proxy, auch als Entra ID Private Network Connector bezeichnet, ermöglicht den Zugriff auf lokale Ressourcen über das Internet unter Nutzung der von Microsoft bereitgestellten Sicherheit. Sie benötigen einen in Ihrem Netzwerk installierten Connector, um die Verbindung zu PowerShell Universal zu proxen.

Konfigurieren Sie die Application Proxy-Einstellungen für Ihre Enterprise Application so, dass sie auf Ihren lokalen Server verweisen. In diesem Beispiel ist meinem Connector die Gruppe Default - North America zugeordnet. Auf diesem Connector-Computer ist PowerShell Universal installiert.

<figure><img src="https://2625982021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2yZSgpSenRLNosIJAb4n%2Fuploads%2Fgit-blob-ebec31e789e0b9059054be363f7cbb2164b28c35%2Fimage%20(298).png?alt=media" alt=""><figcaption></figcaption></figure>

Verwenden Sie für die erweiterten Einstellungen ein persistentes Cookie und vermeiden Sie das Übersetzen von URLs. Sie können bei Bedarf wählen, ob das Backend-SSL-Zertifikat validiert werden soll.

<figure><img src="https://2625982021-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2yZSgpSenRLNosIJAb4n%2Fuploads%2Fgit-blob-1159804d824aeebbf6d1d07f9e4236854fc3628b%2Fimage%20(303).png?alt=media" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell-universal/de/config/hosting/reverse-proxy.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
