## Acerca de la integración con sistemas privados a través de un proxy inverso

Es posible que quieras entregar webhooks de GitHub a sistemas privados que no son accesibles directamente desde Internet, como sistemas de IC, herramientas de administración de trabajos y aplicaciones personalizadas. Puedes usar un proxy inverso para recibir cargas de webhook de GitHub y entregarlas a tu sistema privado.

Un proxy inverso es un servidor web que se encuentra entre un cliente y una aplicación. El proxy inverso recibe solicitudes del cliente y las reenvía a la aplicación. Esto garantiza que no se produzca ninguna comunicación directa entre los clientes de Internet y la aplicación subyacente. Hay muchos sistemas que pueden funcionar con un proxy inverso, entre los que se incluyen:

* Servidores web, como [nginx](http://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/)
* puertas de enlace de API
* Redes de superposición gratuitas y de código abierto, como [OpenZiti](http://openziti.io)
* Herramientas de exposición de entornos locales a la web, como [ngrok](http://ngrok.com/partners/github)
* Herramientas gratuitas de administración de entrada de código abierto, como [zrok](http://zrok.io)

La configuración del proxy inverso varía en función del sistema que uses.

## Protección del tráfico dirigido al proxy inverso

Al implementar un proxy inverso, debes seguir todos los procedimientos que recomiende el proveedor del proxy inverso para proteger el servidor proxy subyacente. Además, debes seguir los siguientes pasos para asegurarte de que solo se reenvía a la aplicación las solicitudes de GitHub.

### Limitar el tráfico entrante a webhooks de GitHub

Debes configurar el proxy inverso para permitir solo solicitudes HTTPS POST desde el subconjunto de intervalos de IP de GitHub que se usan para entregar webhooks. Esto garantiza que el proxy inverso no procese ni reenvíe otras solicitudes.

El [punto de conexión `/meta`](/es/enterprise-cloud@latest/rest/meta/meta#get-github-meta-information) devuelve un objeto JSON que enumera los intervalos IP de GitHub. Los intervalos IP que se usan para entregar webhooks se muestran en el elemento `hooks`.

### Validación de cargas de webhooks

Si el webhook está configurado con un token secreto, GitHub incluirá un hash criptográfico de cada carga de webhook. Debes usar este hash para validar la carga recibida desde GitHub antes de que el sistema privado realice cualquier acción. Para más información, consulta [Validación de entregas de webhook](/es/enterprise-cloud@latest/webhooks-and-events/webhooks/securing-your-webhooks).

Puedes implementar la validación de carga en el proxy inverso o en el sistema privado.