Cómo proteger con contraseña los directorios web en Nginx

Cómo proteger con contraseña los directorios web en Nginx

Los administradores de proyectos web a menudo necesitan proteger su trabajo de una forma u otra. A menudo, la gente pregunta cómo proteger con contraseña su sitio web mientras aún está en desarrollo.

 Contraseña de Nginx Proteger el sitio web  Nginx Password Protect Website Contraseña de Nginx Proteger el directorio web

En este tutorial, le mostraremos una técnica simple pero efectiva sobre cómo proteger con contraseña el directorio web cuando se ejecuta Nginx como servidor web.

En caso de que esté utilizando el servidor web Apache, puede consultar nuestra guía para proteger con contraseña un directorio web:

  1. Directorios web protegidos con contraseña en Apache

Requisitos

Para completar los Para seguir los pasos de este tutorial, deberá tener:

  • Servidor web Nginx instalado
  • Acceso root al servidor

Paso 1: Crear usuario y contraseña

1.. Para proteger con contraseña nuestro directorio web, necesitaremos crear el archivo que contendrá nuestro nombre de usuario. cifrado y contraseña.

freestar.config.enabled_slots.push

Al usar Apache. puede utilizar la utilidad “ htpasswd. . Si tiene esa utilidad instalada en su sistema, puede usar este comando para generar el archivo de contraseña:

# htpasswd-c/path/to/file/.htpasswd username

Cuando ejecute este comando, estará se le pide que establezca una contraseña para el usuario anterior y luego se creará el archivo .htpasswd. en el directorio especificado.

 Crear archivo de contraseña de usuario de Nginx  Crear archivo de contraseña de usuario Nginx htpasswd: Crear archivo de contraseña de usuario Nginx

2.. Si no tiene esa herramienta instalada, puede crear el archivo .htpasswd. a mano. El archivo debe tener la siguiente sintaxis:

nombre de usuario: contraseña-cifrada: comentario

El nombre de usuario. que usará depende de usted, elija lo que quiera.

La parte más importante es la forma en que generará la contraseña para ese usuario.

Paso 2: Genere la contraseña cifrada

3.. Para generar la contraseña, use la función “cripta”. integrada de Perl.

Aquí hay un ejemplo de ese comando:

# perl-le ‘print crypt (“su-contraseña”, “salt-hash”) ‘

Un ejemplo de la vida real:

# perl-le’ print crypt (“# 12Dfsaa $ fa”, “1xzcq”) ‘ Generar contraseña cifrada  Generate Encrypted Password Generate Encrypted-Password

Ahora abre un archivo y coloca tu nombre de usuario y el generado en una cadena, separados por punto y coma.

Así es como:

# vi/home/tecmint/.htpasswd

Pon tu nombre de usuario y contraseña. En mi caso se ve así:

tecmint: 1xV2Rdw7Q6MK.

Guarde el archivo presionando “Esc”. seguido de “: wq”.

 Agregar contraseña cifrada a htpasswd Agregar contraseña cifrada a htpasswd Agregar contraseña cifrada a htpasswd

Paso 3: Actualizar la configuración de Nginx

4.. Ahora abra y edite el archivo de configuración de Nginx asociado con el sitio en el que está trabajando. En nuestro caso usaremos el archivo predeterminado en:

# vi/etc/nginx/conf.d/default.conf [Para sistemas basados ​​en CentOS. O # vi/etc/nginx/nginx.conf [Para CentOS. sistemas basados] # vi/etc/nginx/sites-enabled/default [Para sistemas basados ​​en Debian.

En nuestro ejemplo, protegeremos con contraseña la raíz del directorio para nginx, que es:/usr/share/nginx/html.

5.. Ahora agregue la siguiente sección de dos líneas debajo de la ruta que desea proteger.

auth_basic “Inicio de sesión de administrador”; auth_basic_user_file/home/tecmint/.htpasswd;  Password-Protect Nginx Directory  Proteger con contraseña el directorio de Nginx Proteger con contraseña el directorio de Nginx

Ahora guarde el archivo y reinicie Nginx con:

# systemctl reiniciar nginx O # servicio nginx reiniciar

6.. Ahora copie/pegue esa dirección IP en su navegador y se le pedirá la contraseña:

 Nginx Password Protect Login Nginx Password Protect Login

Eso es todo ! Su directorio web principal ahora está protegido. Cuando desee eliminar la protección con contraseña en el sitio, simplemente elimine las dos líneas que acaba de agregar al archivo .htpasswd. o use el siguiente comando para eliminar el usuario agregado de un archivo de contraseña.