
el poder de Nginx Nunca debe ser subestimado. Esta aplicación de servidor web de alto rendimiento, liviana y rápida puede manejar 10,000 conexiones simultáneas sin estrés. Para lograr tal progreso, Nginx Aprovecha su arquitectura asíncrona y basada en eventos para gestionar nuevas conexiones.
y Nginx El servidor web incluye:
- Implementa un servidor proxy inverso a través de protocolos como IMAP, POP3, HTTPS, HTTP y SMTP.
- Los servidores web como Apache se benefician de la implementación del proxy front-end de Nginx.
- Las cachés HTTP también son equilibradores de carga.
Con estas características, la función de dibujo se implementa con Nginx Incontable. Por ejemplo, el problema de las restricciones de directorio es un gran desafío al que se enfrentan muchos usuarios y administradores de la World Wide Web.
Si el acceso al directorio de un servidor web no se administra correctamente, muchas cosas pueden salir mal, como la pérdida de datos, y la integridad del sistema es el último clavo en este ataúd.
Este artículo nos guiará a través de la configuración de restricciones de directorio en un sistema Linux con Nginx instalado.
planteamiento del problema
Para que este tutorial sea más práctico y relevante, también debemos cumplir con los siguientes requisitos:
- Un host con una dirección IP conocida (192.168.100.3).
- Una computadora remota (con Nginx instalado) con una dirección IP conocida (192.168.100.29).
- Un directorio en una máquina remota donde queremos restringir el acceso (por su dirección IP) a todas las máquinas remotas o específicas.
en una máquina remota con una IP 192.168.100.29utilizaremos la siguiente estructura de directorios:
$ ls -l /var/www/html/secrets $ cat /var/www/html/secrets/secret.txt
Aquí, suponemos /var/www/html/secretos directorio es el directorio de inicio de nuestra aplicación web.
Aviso /var/www/html es un directorio Nginx La página se carga por defecto.Intentaremos restringir el acceso al directorio creado anteriormente desde hosts con direcciones IP 192.168.100.3.
Restringir el acceso a directorios en Nginx
Antes de restringir el acceso al directorio en Nginx, asegúrese de que podamos descargar nuestros archivos usando el comando wget.
$ wget $ cat secret.txt

Ahora, utilizando su editor de texto favorito, abra el archivo de configuración Nginx de su sitio web:
$ sudo nano /etc/nginx/sites-available/default
Si tiene varias configuraciones de host virtual para diferentes sitios (p. tu_sitio.com existir /etc/nginx/sites-enabled/su_sitio.conf), es posible que deba usar este archivo en su lugar:
$ sudo nano /etc/nginx/sites-enabled/your_site.conf
Después de abrir el archivo, debería poder rastrear el bloque del servidor asociado con su aplicación web:

También debe realizar un seguimiento location / {}
Un bloque de servidor dentro de un bloque. Para restringir el acceso a nuestro directorio, crearemos el siguiente bloque de ubicación debajo del bloque de ubicación anterior:
location /secrets/ { deny all; }

Reiniciar después de la modificación Nginx Servidor de red.
$ sudo systemctl restart nginx
Intentemos descargar un archivo de un directorio restringido:
$ wget

Para permitir la restricción solo a las direcciones IP especificadas y denegar el acceso a todos los demás usuarios, cambiaremos nuestra configuración de la siguiente manera:
location /var/www/html/secrets { allow 192.168.100.3; deny all; }
Si desea enumerar más usuarios, agréguelos en el siguiente formato:
allow 192.168.100.4; allow 192.168.100.5; allow 192.168.100.7;
de nuevo, reinicia nginx antes de volver a intentar acceder al directorio.
$ sudo systemctl restart nginx
Ahora podemos establecer fácilmente restricciones de directorio en Nginx. Espero que esta guía de artículos te sea útil. Siéntase libre de dejar un comentario o retroalimentación.