> 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/es/config/hosting/reverse-proxy.md).

# Proxy inverso

Los proxies inversos permiten configurar funciones como TLS, la reescritura de cabeceras, el almacenamiento en caché y el equilibrio de carga. Algunos proxies inversos populares son IIS, Apache y NGINX.

Cada uno de estos sistemas captura el tráfico HTTP y lo reenvía a un servidor web backend, como PowerShell Universal. Hay algunas consideraciones que deben tenerse en cuenta al configurar un proxy inverso delante de PowerShell Universal.

## Compatibilidad con WebSocket

PowerShell Universal requiere compatibilidad con WebSocket para ofrecer todas las funciones disponibles en la plataforma. Sin compatibilidad con WebSocket, las aplicaciones no funcionarán y las notificaciones no se mostrarán en tiempo real.

Según su proxy, puede que necesite configurar la compatibilidad con WebSocket.

* [Compatibilidad con el protocolo WebSocket en IIS](https://learn.microsoft.com/en-us/iis/get-started/whats-new-in-iis-8/iis-80-websocket-protocol-support)
* [Proxy de WebSocket en NGINX](https://nginx.org/en/docs/http/websocket.html)

## Cabeceras reenviadas

Cuando un servidor web está detrás de un proxy inverso, es probable que el nombre de host externo, el protocolo y el puerto difieran de los del propio proxy. Por ejemplo, PowerShell Universal escuchará en el puerto 5000, en HTTP y basándose en una dirección IP concreta (o de bucle invertido) en lugar de en un nombre DNS.

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

Esto puede causar problemas con las redirecciones de URL, como las que se utilizan en los flujos de autenticación de [OpenID Connect](/powershell-universal/es/seguridad/enterprise-security/openid-connect.md). PowerShell Universal debe poder formular correctamente la URL de redirección para el flujo de autenticación. Si no se conoce el nombre de host, el puerto o el protocolo reales utilizados por el usuario final, se pueden generar URL no válidas que hagan que el flujo falle.

De forma predeterminada, PowerShell Universal gestiona automáticamente las [cabeceras reenviadas](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Forwarded). Las siguientes cabeceras se procesan automáticamente.

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

Esto permite que PowerShell Universal cree las URL de redirección adecuadas para los flujos de autenticación.

Los proxies inversos pueden requerir configuración para enviar correctamente estas cabeceras.

* IIS configura automáticamente las cabeceras reenviadas.
* [Cabeceras reenviadas en NGINX](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)
* [Cabeceras de solicitud HTTP de CloudFlare](https://developers.cloudflare.com/fundamentals/get-started/reference/http-request-headers/#x-forwarded-for)

## Azure Application Proxy

El Azure Application Proxy, también conocido como Entra ID Private Network Connector, proporciona acceso a recursos locales a través de internet utilizando la seguridad ofrecida por Microsoft. Necesitará un conector instalado en su red para hacer de proxy de la conexión a PowerShell Universal.

Configure los ajustes de Application Proxy de su aplicación empresarial para que apunten a su servidor local. En este ejemplo, el grupo Default - North America tiene mi conector asociado. Esta máquina conectora tiene PowerShell Universal instalado.

<figure><img src="/files/e6rmcMMfJ5WcZyxl2MBy" alt=""><figcaption></figcaption></figure>

Para la configuración avanzada, utilice una cookie persistente y evite traducir ninguna URL. Puede elegir si desea validar el certificado SSL del backend, si así lo desea.

<figure><img src="/files/b50ZIG222oXZB8fO84IH" 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/es/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.
