Desplegado de nginx
Para comunicar el exterior con nuestro servidor interno de Wordpress, tendremos que configurar NGINX como proxy inverso. Este se configurará en modo de alta disponibilidad para poder clonar el servidor wordpress1 en el futuro y que nginx pueda acceder a los dos simultáneamente.
Instalación
Tendremos que utilizar el siguiente comando para instalar el proxy inverso:
Una vez instalado, podremos comprobar que este y el redireccionamiento DNAT están funcionando correctamente accediendo a la dirección del servidor desde cualquier navegador:


Configuración
Certificados TLS
Algo importante que tendremos que tener en cuenta al configurar nginx será la seguridad de las comunicaciones, para esto crearemos un certificado TLS autofirmado que nos permitirá asegurar que ninguna de las peticiones a nuestro servidor se realice de manera insegura.
Note
Para generar el certificado TLS se utilizó esta guía.
Podemos generar la llave privada y pública con el siguiente comando, a la cuál tendremos que proporcionar los datos de nuestra empresa:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:4096 \
-keyout /etc/ssl/private/clearfrost-autofirmado.key \
-out /etc/ssl/certs/clearfrost-autofirmado.crt

Con el certificado TLS listo, podemos comenzar la configuración del VirtualHost en sí.
Warning
Es importante que en la sección Common Name se introduzca el nombre de dominio con el que se accederá al servidor (pve1.fpmislata.fp,*.pve1.fpmislata.fp), si existe un desajuste entre el dominio del certificado generado y el dominio con el que se acceda al servidor, se producirá un error al intentar acceder a este.
VirtualHost
Con los certificados generados, ahora tenemos que definir el archivo de host virtual dentro de /etc/nginx/sites-enabled/. Este definirá nuestro sitio web ante nginx, el cual puede ser visto a continuación:
upstream wordpress {
server 192.168.6.253:8080;
#server 192.168.6.252:8080;
}
server {
server_name pve1.fpmislata.fp;
listen 443 ssl;
ssl_certificate /etc/ssl/certs/clearfrost-autofirmado.crt;
ssl_certificate_key /etc/ssl/private/clearfrost-autofirmado.key;
location / {
proxy_pass http://wordpress/;
}
}
Como se puede ver, hemos decidido preprarar en adelantado una configuración de alta disponibilidad ya que tenemos planeado clonar el servidor Wordpress para que los dos puedan ofrecer sus servicios al mismo tiempo.
A su mismo tiempo el servidor hace uso de los certificados autofirmados que fueron creados en el anterior paso. Aunque como no tenemos todavia el servidor XAMPP/Wordpress instalado, este bloque server no funcionará hasta entonces, con lo que podemos crear otro bloque que solo sirva para probar el funcionamiento del proxy inverso (ping.pve1.fpmislata.fp):
server {
server_name ping.pve1.fpmislata.fp;
listen 443 ssl;
ssl_certificate /etc/ssl/certs/clearfrost-autofirmado.crt;
ssl_certificate_key /etc/ssl/private/clearfrost-autofirmado.key;
root /var/www/html/;
}
Una vez tengamos los dos bloques configurados, podremos realizar una prueba desde nuestra terminal para demostrar su funcionamiento:

En la imagen se puede ver como la petición a https://ping.pve1.fpmislata.fp es exitosa y devuelve la página por defecto de nginx, mientras que la petición a https://pve1.fpmislata.fp sufre un error "502 Bad Gateway" debido a que el servidor Wordpress no está configurado todavia.
Tip
Para poder redirigir cualquier petición HTTP a la versión HTTPS correspondiente del servidor podemos incluir el siguiente bloque server dentro del mismo archivo: