Taller 3: Introducción a proxy inverso
¿Qué vas a aprender en este taller?
- Vamos a aprender el concepto de proxy inverso.
- Vamos a montar un escenario usando Vagrant y Ansible.
- Vamos a configurar Apache2 y nginx como proxy inverso.
- Vamos a configurar el proxy inverso para que sea capaz de resolver las redirecciones.
¿Qué tienes que hacer?
-
Vamos a usar los ficheros del directorio
taller3
del repositorio taller_http donde encontrarás un escenario vagrant para configurar el siguiente escenario:- Una máquina
proxy
conectada al exterior y a una red interna. - Una máquina
servidorweb
conectada a la red interna (suponemos que no vamos a usar la red de mantenimiento para acceder a ella).
- Una máquina
-
Tenemos a nuestra disposición un playbook de ansible que va a instalar un servidor web apache2 en la máquina
servidorweb
y puede crear una lista de virtualhost. Para configurar los virtualhost tienes que modificar la lista de diccionarios llamadavirtualhosts
que encuentras en el ficherogrups_vars/all
.Configura esa variable para crear dos virtualhosts:
- Uno en el fichero
vhost1.conf
que se acceda con el nombreinterno.example1.org
, cuyo DocumentRoot sea/var/www/example1
. - Otro en el fichero
vhost2.conf
que se acceda con el nombreinterno.example2.org
, cuyo DocumentRoot sea/var/www/example2
.
Ejecuta el playbook de ansible para configurar el
servidorweb
. - Uno en el fichero
- Instala un servidor web apache2 en la máquina
proxy
. Vamos a configurar el proxy para acceder a las páginas delservidorweb
: A la primera página con la URLwww.app1.org
y a la segunda página con la URLwww.app2.org
. Realiza la configuración para que las redirecciones funcionen: al acceder ahttp://www.app1.org/directorio
se debe realizar una redirección al directorionuevodirectorio
. - Modifica la configuración del proxy para acceder a las páginas web con las siguientes URL:
www.servidor.org/app1
ywww.servidor.org/app2
. Debe seguir funcionando las redirecciones. - Desisntala apache2 e instala nginx.
- Configura nginx como proxy inverso para acceder a las páginas del
servidorweb
: A la primera página con la URLwww.app1.org
y a la segunda página con la URLwww.app2.org
. - Modifica la configuración del proxy para acceder a las páginas web con las siguientes URL:
www.servidor.org/app1
ywww.servidor.org/app2
.
¿Qué tienes que entregar?
- Con apache2, pantallazos donde se compruebe el acceso a las dos páginas web:
www.app1.org
ywww.app2.org
. - Quita la directiva
ProxyPassReverse
y comprueba que no se sigue la redirección. Realiza una petición HEAD concurl
ahttp://www.app1.org/directorio
. ¿Qué cabecera tienes que comprobar para asegurar que la redirección no funciona? - Con apache2, pantallazos donde se compruebe el acceso a las dos páginas web:
www.servidor.org/app1
ywww.servidor.org/app2
. - Con nginx, pantallazos donde se compruebe el acceso a las dos páginas web:
www.app1.org
ywww.app2.org
. - Con nginx, pantallazos donde se compruebe el acceso a las dos páginas web:
www.servidor.org/app1
ywww.servidor.org/app2
.