Configurar un revers proxy en apache

By junio 8, 2019Debian, Linux

En este tutorial veremos como configurar un Reverse Proxy con el módulo mod_proxy de Apache. También usando certificados SSL(certificado de seguridad).

Vamos a aprender a utilizar el módulo proxy de Apache.

Para aquellos que desarrollan aplicaciones o sistemas web, en algún momento han tenido que hacer un bypass dns. Cuando son diferentes tecnologías posiblemente la implementación la hagas a través de subdominios apuntando a un servidor local desde internet.

Con este tutorial podrás configurar rutas especificas dentro del mismo dominio que funcionen como puente hacia otras aplicaciones en el mismo servidor. También reutilizando un certificado SSL que exista en el sitio web principal, dando cobertura a las aplicaciones bajo esta configuración.

Actualizar conexión con FacebookApache posee por defecto un buen número de módulos que nos pueden ser útiles para diferentes funciones, hoy vamos a aprender el mod_proxy.

Habilitar mod_proxy en Apache

Para habilitar y deshabilitar módulos en Apache utilizamos los comandos a2enmod y a2dismod.

Y luego se debemos reiniciar el servicio:

Configuración del vhost

A continuación un ejemplo de vhost básico.

Basándonos en este ejemplo, digamos tenemos una aplicación corriendo en el mismo servidor bajo el puerto 8080, queremos que al acceder a la ruta https://www.jaimefranko.com/app nos presente dicha aplicación.

Lo que debemos hacer es utilizar la directiva ProxyPass y ProxyPassReverse para presentar correctamente la aplicación bajo la ruta que vamos a especificar. Para eso modificamos el archivo vhost.

Ahora vamos a editar el archivo vhost con el editor de texto nano.

Una vez hecho el cambio, debemos reiniciar la configuración del vhosts, lo hacemos con el siguiente comando:

Ahora cuando accedemos al dominio principal bajo la ruta /app/ se debe desplegar nuestra aplicación.

Configuración del vhost con SSL

En el caso deseamos configurar un Reverse Proxy que utilice el SSL del dominio principal, aparte de la directiva ProxyPass y ProxyPassReverse, existen dos directivas más que debemos utilizar.

Tomemos el siguiente vhosts como ejemplo con SSL

SSLProxyEngine hace el trabajo de que el puente vaya cifrado con el certificado que hemos configurado en el dominio principal. ProxyPreserveHost hace que el dominio principal persista en todas las rutas y cabeceras HTTP. Esto para evitar algún error de seguridad con respecto al dominio del certificado.

jaimefranko

Author jaimefranko

¡Hola! mi nombre es Jaime Franco soy Full Stack Developer, desde el 2010 estoy creando proyectos en diferentes áreas de este maravilloso mundo digital, desde entonces puedo decir que cada día se aprende algo nuevo.

More posts by jaimefranko
WhatsApp #wasapeame