apache .Protección de acceso al directorio de Htaccess

apache .Protección de acceso al directorio de Htaccess

Al ejecutar un servidor web Apache en un sistema Linux, puede haber algunos directorios que no desee que todos en el mundo puedan acceder. Apache nos ofrece un par de herramientas diferentes que los administradores del sitio web pueden usar para proteger un directorio.

Una de las formas más comunes de configurar el acceso restringido a una carpeta es a través de la .archivo htaccess. Hacer esta configuración solicitará a los usuarios una contraseña cada vez que se encuentren con la URL protegida. Pero también podemos configurar la misma protección sin .htaccess.

En esta guía, revisaremos las instrucciones paso a paso para proteger un directorio en un servidor web Apache, a través de dos métodos diferentes. Siga junto con nosotros para configurar la protección de contraseña en su propio sitio web.

En este tutorial aprenderás:

  • Cómo proteger un directorio usando .archivo htaccess
  • Cómo proteger un directorio sin .archivo htaccess
Se nos solicita un nombre de usuario y contraseña al intentar acceder al directorio protegido Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Cualquier distribución de Linux
Software Servidor web de Apache
Otro Acceso privilegiado a su sistema Linux como root o a través del sudo dominio.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Proteger un directorio usando .archivo htaccess



El .El archivo htaccess es un archivo de configuración utilizado por Apache. Puedes dejar caer un .Archivo Htaccess en cualquier directorio que desee configurar configuraciones adicionales para. Siga los pasos a continuación para configurar la autenticación de contraseña en un directorio de servidor web Apache utilizando un .archivo htaccess.

  1. Comience por crear un nombre de usuario y una contraseña que utilizaremos para ingresar el directorio protegido. Usaremos la utilidad HTPassWD para generar esta información, y el archivo se puede almacenar en cualquier lugar de su sistema. En este ejemplo, crearemos un usuario nombrado LinuxConfig. Se le solicitará una nueva contraseña dos veces al ejecutar este comando.
    $ htpasswd -c/home/linuxconfig/.htpasswd linuxconfig 
  2. Antes de que podamos usar nuestra nueva cuenta de usuario y contraseña, debemos configurar Apache para leer el .archivo htaccess. Por defecto, ignorará este archivo. Puede aplicar esta configuración a nivel mundial editando el archivo de configuración de Apache o editar su host virtual Apache para aplicar la configuración a un sitio individual.
    $ sudo nano/etc/apache2/sites disponible/000 default 

    Las líneas que necesitamos agregar están debajo. Simplemente sustituya su propio directorio que esté tratando de proteger, en lugar de nuestro ejemplo.

     Permateverride todo  


  3. Agregue la configuración de EllowoverRide para que Apache lea .archivo htaccess
  4. Reinicie Apache para que estos nuevos cambios entren en vigencia.
    $ sudo systemctl reiniciar apache2 

    O en sistemas basados ​​en RHEL:

    $ sudo systemctl reiniciar httpd 
  5. A continuación, cree el .archivo htaccess en el directorio que desea proteger. En este ejemplo, aseguraremos el /var/www/html/protegido directorio.
    $ nano/var/www/html/protegido/.htaccess 
  6. Pegue las siguientes líneas en este archivo, luego guarde sus cambios.
    AuthType Basic Authname "Autenticación requerida" AuthuserFile "/Home/LinuxConfig/.htpasswd "requiere el usuario LinuxConfig 

    Alternativamente, cambie la última línea a Requerir usuario válido Si planea configurar varias cuentas de usuario que accedan a este directorio.

  7. Finalmente, navegar al directorio protegido en el navegador debería solicitarnos un nombre de usuario y contraseña antes de que podamos acceder al contenido.
  8. Se nos solicita un nombre de usuario y contraseña al intentar acceder al directorio protegido


Proteger un directorio sin .archivo htaccess

Podemos asegurar un directorio en nuestro servidor web sin necesidad de usar un .archivo htaccess en absoluto. Necesitará la utilidad htpasswd instalada en su sistema, que debería haberse instalado automáticamente cuando descargó Apache. Siga los pasos a continuación para ver cómo usarlo para crear un directorio web protegido con contraseña.

  1. Comience por configurar su archivo de host virtual para usar la autenticación para el acceso al directorio que desea proteger. Solo estamos editando el archivo de configuración predeterminado, pero reemplace el nombre del archivo con el nombre de su propio.
    $ sudo nano/etc/apache2/sites disponible/000 default.confusión 
  2. Coloque las siguientes líneas dentro de su archivo. El directorio que estamos tratando de proteger es /var/www/html/secreto, Pero asegúrese de cambiar esta configuración para reflejar la directora que desea proteger. Nuestro .htpasswd El archivo de autenticación se encuentra en /Home/LinuxConfig/.htpasswd, Así que asegúrese de sustituir su propia ubicación por esta.
     AuthType Basic Authname "Autenticación requerida" AuthuserFile "/Home/LinuxConfig/.htpasswd "requiere un usuario válido  
  3. Agregar configuración de autenticación al archivo de host virtual Apache
  4. A continuación, genere el archivo de autenticación ejecutando el comando htpasswd. Nuevamente, sustituya su propio directorio y decida dónde se debe almacenar este archivo en su sistema. Estaremos creando autenticación para el usuario LinuxConfig en este ejemplo.
    $ htpasswd -c/home/linuxconfig/.htpasswd linuxconfig 


    Se le pedirá que ingrese una contraseña dos veces, y luego se creará el archivo. Su contraseña se almacena como un hash cifrado, que puede ver dentro del archivo.

    $ Cat/Home/LinuxConfig/.htpasswd LinuxConfig: $ Apr1 $ Lyh8fue2 $ 9en2dqirkbsljb0xrc9cl0 
  5. Reinicie Apache para que estos nuevos cambios entren en vigencia.
    $ sudo systemctl reiniciar apache2 

    O en sistemas basados ​​en RHEL:

    $ sudo systemctl reiniciar httpd 
  6. Ahora, acceder al directorio protegido que configuramos anteriormente debería solicitarle un nombre de usuario y contraseña.
  7. Se nos solicita un nombre de usuario y contraseña al intentar acceder al directorio protegido

Pensamientos de cierre

En esta guía, vimos cómo asegurar un directorio de servidor web utilizando dos métodos diferentes en Apache. Apache nos ofrece formas simples y potentes de proteger directorios y archivos, lo que nos permite colocar archivos privados en nuestro sitio web sin preocuparnos de que la persona incorrecta acceda a ellos. Si elige usar un .archivo htaccess o no, asegurar un directorio es una tarea breve que solo toma unos pocos pasos.

Tutoriales de Linux relacionados:

  • Crear redireccionamiento y reescribir reglas en .Htaccess en Apache ..
  • Configuración de htaccess de OpenLitesPeed
  • Permitir .Htaccess en el servidor Apache 2 Linux
  • Cómo restringir el acceso a un recurso usando Apache en Linux
  • Carpeta zip en Linux
  • Cómo mover la carpeta en Linux
  • Cómo verificar el uso del disco por carpeta en Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas para instalar en Ubuntu 20.04
  • OpenLitespeed vs Litespeed