Iniciar sesión
Iniciar sesión

Cómo exponer servicios con Nginx Proxy Manager

Cómo exponer servicios con Nginx Proxy Manager
Adnene Mabrouk
Redactor técnico
Servidor web Nginx
23.01.2026
Reading time: 7 min

¿Qué es Nginx Proxy Manager?

Nginx Proxy Manager es una interfaz fácil de usar para gestionar reverse proxies. Simplifica el proceso de enrutar el tráfico hacia distintos servicios, haciéndolo accesible incluso para usuarios sin conocimientos profundos de redes. Al proporcionar una interfaz gráfica de usuario (GUI) sobre Nginx, esta herramienta permite configurar y administrar rápidamente proxy hosts, certificados SSL y otras configuraciones avanzadas, sin necesidad de trabajar con comandos complejos en la línea de comandos.

Instalación de Nginx Proxy Manager

La instalación de Nginx Proxy Manager es sencilla gracias a Docker. A continuación, una guía paso a paso para ponerlo en funcionamiento:

Requisitos previos

  • Tener Docker y Docker Compose instalados en tu servidor en la nube

  • Conocimientos básicos de los comandos de Docker

Pasos de instalación

Crea un directorio para Nginx Proxy Manager y accede a él:

mkdir nginx-proxy-manager

cd nginx-proxy-manager

Crea un archivo docker-compose.yml con el siguiente contenido:

version: '3'

services:

  app:

    image: 'jc21/nginx-proxy-manager:latest'

    restart: always

    ports:

      - '80:80'

      - '81:81'

      - '443:443'

    environment:

      DB_MYSQL_HOST: "db"

      DB_MYSQL_PORT: 3306

      DB_MYSQL_USER: "npm"

      DB_MYSQL_PASSWORD: "npm"

      DB_MYSQL_NAME: "npm"

    volumes:

      - ./data:/data

      - ./letsencrypt:/etc/letsencrypt

  db:

    image: 'mysql:5.7'

    restart: always

    environment:

      MYSQL_ROOT_PASSWORD: 'npm'

      MYSQL_DATABASE: 'npm'

      MYSQL_USER: 'npm'

      MYSQL_PASSWORD: 'npm'

    volumes:

      - ./data/mysql:/var/lib/mysql

Inicia los contenedores:

docker-compose up -d

Accede a Nginx Proxy Manager mediante la dirección IP de tu servidor en el puerto 81 (por ejemplo, http://localhost:81).

Configuración inicial de Nginx Proxy Manager

Después de la instalación, es momento de realizar la configuración inicial:

Inicio de sesión:
Abre tu navegador y ve a http://<ip-de-tu-servidor>:81. Las credenciales predeterminadas son:

  • Correo electrónico: admin@example.com

  • Contraseña: changeme

Cambiar credenciales predeterminadas:
Actualiza inmediatamente el correo electrónico y la contraseña para proteger Nginx Proxy Manager.

Vista general del panel:
El panel muestra un resumen de tus proxy hosts, certificados SSL y otras configuraciones. Familiarízate con la interfaz.

Configuración de un nuevo proxy host

Para exponer un servicio, debes configurar un nuevo proxy host. Sigue estos pasos:

Agregar un nuevo proxy host

  • Ve a la sección “Proxy Hosts”

  • Haz clic en “Add Proxy Host”

Introducir nombres de dominio:
Introduce los dominios que deseas asociar con este servicio. Puedes añadir varios dominios separándolos por comas.

Hostname/IP de destino y puerto:
Introduce la dirección IP interna y el número de puerto del servicio que deseas exponer.
Ejemplo: si el servicio web se ejecuta en el puerto 8080, introduce 192.168.1.100 y 8080.

Opciones:

  • Marca “Block Common Exploits” para añadir una capa adicional de seguridad

  • Activa “Websockets Support” si tu servicio lo requiere

SSL:
Puedes usar un certificado SSL existente o solicitar uno nuevo a través de Let’s Encrypt.

Guardar:
Haz clic en “Save” para finalizar la configuración del proxy host.

Gestión de certificados SSL

Los certificados SSL son fundamentales para proteger tus servicios. Nginx Proxy Manager facilita este proceso:

Solicitar un nuevo certificado SSL:

  • Ve a la sección “SSL Certificates”

  • Haz clic en “Add SSL Certificate”

  • Selecciona “Let’s Encrypt” e introduce los datos necesarios, como el correo electrónico y el dominio

Renovación automática:
Nginx Proxy Manager renueva automáticamente los certificados de Let’s Encrypt, garantizando la seguridad sin intervención manual.

Certificados personalizados:
Si dispones de un certificado SSL propio, también puedes cargarlo desde esta sección.

Opciones de configuración avanzada

Nginx Proxy Manager ofrece múltiples opciones avanzadas para ajustar tu configuración:

Listas de acceso (Access Lists):

  • Restringe el acceso a los servicios creando listas de acceso

  • Permite o deniega el tráfico según direcciones IP

Hosts de redirección (Redirection Hosts):

  • Configura fácilmente redirecciones de un dominio a otro

Stream Hosts:

  • Utiliza la función de stream para gestionar tráfico TCP/UDP, como servicios SSH o FTP

Configuración personalizada de Nginx:

  • Añade directivas personalizadas de Nginx si tu servicio requiere configuraciones específicas

Exponer servicios: guía paso a paso

Exponer un servicio con Nginx Proxy Manager implica varios pasos:

  1. Identificar el servicio:
    Determina la IP interna y el puerto del servicio que deseas exponer.

  2. Crear un proxy host:
    Sigue los pasos descritos en la sección “Configuración de un nuevo proxy host”.

  3. Habilitar SSL:
    Solicita un certificado SSL para el dominio asociado al servicio.

  4. Probar la configuración:
    Accede al servicio mediante el dominio para confirmar que todo funciona correctamente.

  5. Supervisar y ajustar:
    Revisa periódicamente el rendimiento y ajusta la configuración según sea necesario.

Monitorización y registros

Nginx Proxy Manager incluye funciones integradas de monitorización y registro:

Registros (Logs):

  • Accede a los registros desde la sección “Logs”

  • Incluyen información detallada sobre las solicitudes entrantes, como direcciones IP, rutas solicitadas y estados de respuesta

Monitorización:

  • Usa el panel para supervisar el estado de los proxy hosts y certificados SSL

  • Asegúrate de que los certificados SSL estén actualizados y que todos los servicios funcionen correctamente

Solución de problemas comunes

Errores de certificado SSL:

  • Verifica que el dominio apunte correctamente a la IP del servidor

  • Comprueba que los puertos 80 y 443 estén abiertos y accesibles

502 Bad Gateway:

  • Asegúrate de que el servicio expuesto esté en ejecución y sea accesible internamente

  • Confirma que la IP interna y el puerto configurados sean correctos

Tiempos de espera en la conexión:

  • Revisa la configuración del firewall para evitar bloqueos de tráfico

  • Prueba la conectividad entre el servidor y el servicio

Conclusión

Nginx Proxy Manager simplifica significativamente la exposición de servicios y es una herramienta excelente tanto para principiantes como para usuarios avanzados. Gracias a su interfaz intuitiva y a sus potentes funciones, puedes configurar rápidamente reverse proxies, proteger tus servicios con certificados SSL y solucionar cualquier problema que surja. Siguiendo los pasos de esta guía, podrás gestionar y exponer servicios de forma eficiente con Nginx Proxy Manager.

Servidor web Nginx
23.01.2026
Reading time: 7 min

Similares

Servidor web Nginx

Ejemplos de la directiva location en Nginx

La directiva location de Nginx es una herramienta potente para controlar cómo se procesan distintos tipos de solicitudes. Al definir reglas en bloques location, puedes aplicar configuraciones específicas, redirigir el tráfico a diferentes partes de tu aplicación o incluso bloquear completamente ciertas solicitudes. El uso correcto de esta directiva permite una gestión eficiente de las peticiones, lo cual es clave para mejorar el rendimiento, la seguridad y la funcionalidad de las aplicaciones web. Sintaxis básica de la directiva location La directiva location se define en el archivo de configuración nginx.conf: location [modifier] uri { ... } modifier: parámetro opcional que define el tipo de coincidencia (exacta, prefijo, expresión regular, etc.) uri: la URI que se debe comparar Dentro de las llaves puedes definir distintas directivas como proxy_pass, root o index. Ejemplo de coincidencia exacta Una coincidencia exacta ocurre cuando la cadena proporcionada coincide exactamente con la URI solicitada. location = /exact-match {     root /var/www/html;     index index.html; } Solo las solicitudes a /exact-match serán procesadas por este bloque. También puedes añadir condiciones usando if (ten en cuenta que Nginx no tiene un if-else tradicional): location = /exact-match {     root /var/www/html;     index index.html;     if ($http_user_agent ~* "Chrome") {         add_header X-Browser "Chrome";     } } Si el agente de usuario es Chrome, la respuesta incluirá el encabezado adicional X-Browser. Ejemplo de coincidencia por prefijo Es el tipo más común y coincide con cualquier URI que comience con la cadena especificada. location /prefix {     root /var/www/html;     index index.html;     if ($request_method = POST) {         return 405;     } } Este bloque gestiona solicitudes como /prefix/page1 o /prefix/page2. Si el método es POST, Nginx devuelve 405 Method Not Allowed. Ejemplo con expresiones regulares Para escenarios más complejos, puedes usar expresiones regulares. Comodines comunes: . – coincide con un carácter .* – coincide con cualquier secuencia ^ – inicio de cadena $ – final de cadena location ~* \.php$ {     fastcgi_pass 127.0.0.1:9000;     fastcgi_index index.php;     include fastcgi_params;     if ($request_uri ~* "/admin") {         return 403;     }     if ($request_uri !~* "/admin") {         add_header X-Admin "Not Admin";     } } Explicación: ~* indica coincidencia sin distinguir mayúsculas \.php$ coincide con archivos PHP si la URI contiene /admin → 403 Forbidden si no, se añade X-Admin: Not Admin Coincidencia sin distinguir mayúsculas location ~* \.jpg$ {     root /var/www/images;     if ($http_referer !~* "^https?://(www\.)?example\.com") {         return 403;     } } Coincide con .jpg, .JPG, etc., y solo sirve imágenes si el referer proviene de example.com. Prioridad y orden Nginx evalúa los bloques así: Exacto (=) – máxima prioridad Expresiones regulares (~, ~*) – en orden de aparición Prefijos (/) – el prefijo más largo gana Ejemplo: location = /exact { } location ~* \.jpg$ { } location / { } Bloques location anidados location /nested {     location /nested/subnested {         root /var/www/html;     }     root /var/www/html; } Las solicitudes a /nested/subnested usan el bloque interno. Ejemplo real de servidor web server { listen 80; server_name localhost; location / { root /var/www/html; index index.html; } location = /about { root /var/www/html; index about.html; } location /api { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location ~ \.php$ { root /var/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; } location ~* \.(jpg|jpeg|png|gif|ico)$ { root /var/www/images; } location /admin { root /var/www/admin; index index.html; location /admin/stats { proxy_pass http://localhost:8080/stats; } } } Recargar Nginx sudo systemctl reload nginx Pruebas y depuración Validar configuración: sudo nginx -t Probar rutas: curl -I http://localhost/about curl -X POST http://localhost/prefix/form curl -H "User-Agent: Chrome" http://localhost/exact-match Ver logs: tail -f /var/log/nginx/access.log tail -f /var/log/nginx/error.log Restricción de acceso a rutas sensibles location /admin {     allow 192.168.1.100;     deny all; } Solo esa IP puede acceder. root vs alias Directiva Comportamiento root añade la URI alias reemplaza el prefijo Ejemplo con alias: location /files/ {     alias /data/downloads/; } Nota: siempre termina alias con /. Conclusión Comprender la directiva location es esencial para un manejo preciso de las solicitudes. Las coincidencias exactas, por prefijo y por regex tienen diferentes prioridades y afectan directamente al rendimiento y comportamiento del sitio. Al dominar estos patrones y usar bloques anidados, puedes construir configuraciones Nginx limpias, eficientes y seguras.
09 February 2026 · 5 min to read

¿Necesita ayuda para
elegir un producto?

Nuestros expertos están disponibles para ayudarle a encontrar la solución cloud
adecuada para su empresa, incluso si no sabe por dónde empezar.
Hostman's Support