Tabla de Contenidos
Ruta: Inicio » Infraestructura » VPS » Configuraciones VPS » Nginx
NGINX – Proxy inverso y sitios
NGINX está instalado en el VPS y actúa como proxy inverso. Su función es recibir peticiones HTTP o HTTPS para distintos dominios y redirigirlas internamente a otros servidores o contenedores (como Raspberry Pi, Docker, etc.), a través de la red WireGuard o local.
Estructura de configuración
Los archivos de configuración de los sitios se encuentran en:
/etc/nginx/sites-available/
Y se activan mediante enlaces simbólicos en:
/etc/nginx/sites-enabled/
Ejemplo para crear un nuevo sitio
sudo nano /etc/nginx/sites-available/ejemplo.com
Copiar contenido básico para un proxy hacia una Raspberry:
server {
listen 80;
server_name ejemplo.com www.ejemplo.com;
location / {
proxy_pass http://10.100.100.X; # X = IP WireGuard de la Raspberry
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Activar el sitio
sudo ln -s /etc/nginx/sites-available/ejemplo.com /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
Certificados HTTPS
Una vez creado y funcionando el sitio, se puede añadir el certificado gratuito con Let's Encrypt (Certbot):
sudo apt install certbot python3-certbot-nginx sudo certbot --nginx -d ejemplo.com -d www.ejemplo.com
Esto modifica el bloque server para que escuche por 443 y añade automáticamente el redireccionamiento de HTTP a HTTPS.
Renovación automática
Certbot instala un cron o timer que renueva automáticamente los certificados. Para forzar una renovación:
sudo certbot renew --dry-run
Comprobación de certificados activos
Ver todos los certificados gestionados:
sudo certbot certificates
Comandos útiles
Probar si la configuración es correcta:
sudo nginx -t
Recargar NGINX tras cambios:
sudo systemctl reload nginx
