Tú decides qué servicios podemos activar para análisis, personalización y contenido externo.
Utilizamos cookies y tecnologías similares en nuestro sitio web para personalizar el contenido, integrar medios externos y comprender mejor el uso de determinadas secciones.
Cookies necesarias
Estas entradas garantizan funciones básicas como la seguridad, la estabilidad y el procesamiento de formularios.
Tus datos pueden tratarse con tu consentimiento o sobre la base de intereses legítimos. En la configuración de cookies puedes rechazar cada categoría opcional o autorizarla expresamente.
Algunos servicios procesan datos personales en terceros países. Al dar tu consentimiento, también aceptas esta transferencia. Encontrarás más información en nuestra política de privacidad.
Puedes volver a abrir y modificar tu selección en cualquier momento. · 1.0.2
Servidor VPS: configurar un proxy inverso con nginx en Linux
Descubre cómo configurar un proxy inverso seguro y eficiente para sitios web y servidores de juegos, y mejora el acceso y la protección → Más información
10 de noviembre de 20265 min de lectura0 Visitas0 útil
Introducción
Un servidor proxy inverso actúa como intermediario entre los usuarios finales y otro servidor. Los sitios web y los servidores de juegos son casos de uso populares para un proxy inverso, cada uno con distintas ventajas, como la seguridad, un acceso más sencillo y la protección.
En esta guía te mostraremos cómo configurar un proxy inverso general para sitios web y otro específico para servidores de juegos.
FAQ
Preguntas frecuentes
Para sitios web y servidores de juegos, ya que ofrece ventajas como mayor seguridad, un acceso más sencillo y protección.
Se recomiendan velocidades de red más altas, especialmente si hay muchos jugadores, porque el VPS transmite TCP/UDP sin procesar entre el cliente y el servidor de juegos. Para un proxy web suelen bastar las especificaciones básicas.
Crea un registro DNS A para cada subdominio que quieras usar y haz que apunte a la dirección IP de tu VPS Linux.
Nginx, que puedes instalar con 'sudo apt install nginx'. Después, tendrás que ajustar el firewall para que el servicio sea accesible desde Internet.
Comentarios
¿Te resultó útil este artículo?
Tus comentarios nos ayudan a priorizar y mejorar los contenidos.
0 de 0 Las valoraciones consideraron útil este artículo.
Ayuda personalizada
¿No te basta con la guía?
Nuestro equipo de soporte de ZAP conoce tu producto. Describe brevemente tu consulta y te ayudaremos personalmente.
Navegación
VPS
Requisitos previos
Para configurar un proxy inverso, necesitas un servidor Linux que lo aloje. En este ejemplo usamos Ubuntu como distribución de Linux, pero los pasos de instalación son muy similares en la mayoría de las distribuciones.
Consejo
Especificaciones recomendadas para el Servidor VPS
Para un proxy inverso pensado para servidores de juegos, recomendamos encarecidamente elegir velocidades de red más altas, sobre todo si tu servidor tiene muchos jugadores. Esto se debe a que tu VPS transmite TCP/UDP sin procesar directamente entre el cliente (el jugador) y el servidor de juegos. Para un proxy web, normalmente bastan las especificaciones básicas con mejoras mínimas. :)
Te recomendamos configurar el proxy con un dominio de tu propiedad. Para cada subdominio que quieras usar, crea un registro DNS A (por ejemplo, zapdocs.example.com) que apunte a la dirección IP de tu VPS Linux. Los usuarios accederán a tu sitio web o servidor de juegos a través de esta dirección.
Conectarse al Servidor VPS
Cuando tu Servidor VPS Linux esté listo, tendrás que conectarte a él. Consulta nuestra guía Primeros pasos con SSH para saber cómo hacerlo.
Instalar Nginx
Usarás Nginx para alojar el proxy inverso, ya que es un servidor web de código abierto, popular y de alto rendimiento.
Después de conectarte a tu Servidor VPS, instala Nginx con el siguiente comando:
Code
sudo apt install nginx
Una vez instalado, tendrás que ajustar el firewall para que el servicio sea accesible desde Internet. En esta guía usamos el firewall UFW, ya que Nginx se registra como una aplicación y así es fácil configurar los ajustes. Para obtener más información sobre UFW, consulta nuestra guía Consejos de seguridad para Linux.
Información
Si usas otros firewalls (por ejemplo, Iptables), asegúrate de permitir que Nginx acceda a los puertos 80 y 443, en los que se ejecuta el servicio.
Puedes ver los perfiles de Nginx con sudo ufw app list. En este caso, elegimos la opción Nginx Full, que permite HTTP para las pruebas y HTTPS para el uso en producción.
Code
sudo ufw allow 'Nginx Full'
Ahora puedes comprobar en el navegador si se puede acceder al sitio. Si aparece la página de prueba, puedes continuar con la guía.
Code
http://[deine_serverip]
Para sitios web
Un proxy inverso para sitios web ofrece muchas ventajas, como redirigir las solicitudes a recursos internos del servidor, por ejemplo, una instancia de Vaultwarden (sin incluir el puerto en la URL), o redirigirlas a contenido externo, algo útil para distribuir la carga y mejorar la protección.
Una gran ventaja es que tu servidor puede procesar solicitudes de cualquier cantidad de fuentes o dominios, a diferencia de un único servidor web que solo funciona en el puerto 80/443.
Configurar Nginx
Primero, crea una entrada en el directorio de Nginx para el dominio que elegiste antes, normalmente un subdominio como zapdocs.example.com en nuestro ejemplo.
Importante
Antes de continuar, asegúrate de haber creado un registro A que apunte a la dirección IP de tu servidor proxy. Sin este registro, el dominio y todo lo demás no funcionarán correctamente.
Cambia al directorio de bloques de servidor con:
Code
cd /etc/nginx/sites-available/
Ahora crea un nuevo archivo de configuración. Te recomendamos usar el nombre de dominio como nombre de archivo para que puedas encontrarlo fácilmente (por ejemplo, zapdocs.example.com). Sustituye [your_filename] por el nombre de archivo que quieras.
Code
sudo nano [your_filename]
Se abrirá el editor Nano. Copia la siguiente plantilla. Sustituye [your_domain] por el dominio que quieras usar como proxy y [your_target_server] por el servidor de destino al que quieras acceder.
Code
upstream targetServer {
# Füge hier den Zielserver ein, den du erreichen willst. Das kann sein:
# Interne "localhost" Weiterleitung (z.B. 127.0.0.1:9090)
# Externer Server (z.B. 103.146.43.52:9000)
server [your_target_server];
}
server {
listen 80;
listen [::]:80;
# Domain, die bedient werden soll (z.B. zapdocs.example.com)
server_name [your_domain];
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass_request_headers on;
proxy_http_version 1.1;
proxy_pass http://targetServer;
}
}
Cuando hayas terminado de hacer los cambios, guarda el archivo con CTRL + X, confirma con Y y pulsa ENTER.
Ahora activa el bloque de servidor creando un enlace simbólico al directorio activo:
Si todo está bien, reinicia Nginx para activar la nueva configuración:
Code
systemctl reload nginx.service
Ahora comprueba en el navegador si tu dominio carga el contenido deseado que definiste como targetServer. Si tienes algún problema, revisa los registros con:
Code
journalctl -f -u nginx.service
para encontrar errores.
Para servidores de juegos
Un proxy inverso para servidores de juegos ofrece muchas ventajas, como una capa adicional de seguridad y mayor fiabilidad, al proteger mejor el servidor principal y limitar el acceso a este.
Consejo
La mayoría de los servidores de juegos dedicados funcionan muy bien con un proxy TCP/UDP sin procesar, que es el que configurarás aquí. Un pequeño número de juegos, como BeamMP, puede tener problemas con VPN y proxies; en esos casos, tendrás que probarlo para cada juego.
Configurar Nginx
Para ello necesitas el módulo Nginx Stream, que no está incluido en la instalación estándar de Nginx.
Instalar el módulo Nginx Stream
bash
sudo apt install -y libnginx-mod-stream
bash
sudo dnf -y install nginx-mod-stream
Configurar Nginx Stream
Añadirás un nuevo bloque stream al archivo principal nginx.conf, donde definirás el servidor upstream y el puerto por el que se podrá acceder al proxy.
Abre el archivo con:
Code
sudo nano /etc/nginx/nginx.conf
Ahora añade el siguiente bloque. Sustituye [your_target_server] por el servidor al que se enviará el tráfico, incluido el puerto (por ejemplo, :30120 para FiveM). Sustituye [your_port_listener] por el puerto que usarán los usuarios para acceder al proxy.
Code
stream {
upstream targetServer {
# Zielserver, den du erreichen willst (z.B. 103.146.43.52:30120)
server [your_target_server];
}
server {
# Port, der Verbindungen annimmt und weiterleitet (z.B. 30120)
listen [your_port_listener];
proxy_pass targetServer;
}
}
De este modo, Nginx escuchará en el puerto definido y reenviará todas las conexiones al servidor de destino.
Guarda el archivo con CTRL + X, confirma con Y y pulsa ENTER.
Comprueba la sintaxis con:
Code
sudo nginx -t
Si todo está correcto, vuelve a cargar Nginx para activar la configuración:
Code
systemctl reload nginx.service
Ahora comprueba si puedes conectarte a tu servidor de juegos a través del dominio del proxy. Si tienes algún problema, revisa los registros con:
Code
journalctl -f -u nginx.service
Certificado SSL
Te recomendamos encarecidamente instalar un certificado SSL para tus dominios, de modo que los datos se transmitan de forma segura mediante HTTPS. Consulta nuestra guía Crear un certificado SSL, donde se explica todo el proceso para solicitar y renovar automáticamente certificados SSL.
Conclusión
¡Enhorabuena! Has configurado correctamente un proxy inverso para tu sitio web, tu servidor de juegos o ambos :) Ahora puedes disfrutar de más seguridad, fiabilidad y rendimiento. Si tienes preguntas o problemas, nuestro equipo de asistencia está a tu disposición todos los días. 🙂
Alojamiento de servidores desde 2,49 € / mes, disponible al instante, con protección DDoS incluida.