Cómo proteger con contraseña un sitio web de Apache usando .htaccess
Seguridad Microsoft Apache / / March 18, 2020
Ultima actualización en
Si está ejecutando su sitio web con Apache, asegurar el sitio con una contraseña es un proceso simple. Recientemente ejecuté el proceso en un cuadro de Windows (la mayoría de las tomas a continuación), sin embargo, los pasos son prácticamente los mismos para los sitios Apache de Windows o Linux.
Paso 1: Configura tu archivo .htaccess
Todo el trabajo se realizará utilizando su archivo .htaccess. Puede encontrar este archivo en la raíz de la mayoría de los sitios web de Apache.
La captura de pantalla se tomó de una instalación estándar de WordPress que se ejecuta en Windows 2003 Server:
Apache verifica el archivo .htaccess antes de mostrar las páginas web. Por lo general, se usa para ReWrites o ReDirects, sin embargo, también puede usarlo para aprovechar las características de seguridad integradas de Apache.
Entonces, el primer paso es agregar algunos parámetros al archivo. A continuación se muestra un archivo .htaccess de muestra. (CONSEJO: yo uso Bloc de notas ++ para editar la mayoría de PHP y archivos relacionados)
AuthUserFile c: apachesecurity.htpasswd. AuthName "Ingrese usuario y contraseña" AuthType Basic. requiere usuario válido
Alguna explicación:
AuthUserFile: APACHE necesita la ubicación del archivo de usuario / contraseña. Simplemente ingrese la ruta completa al archivo de base de datos de contraseñas como se muestra arriba. El ejemplo anterior está tomado de mi cuadro de Windows. Si está ejecutando Linux, sería algo como: AuthUserFile /full/path/to/.htpasswd
AuthName: Este campo define el Título y el Texto para el cuadro emergente que solicitará el Nombre de usuario y PW. Puedes hacer esto CUALQUIER COSA que quieras. Aquí hay un ejemplo en mi cuadro de prueba:
Tipo de autenticación: Este campo le dice a Apache qué tipo de autenticación se está utilizando. En casi todos los casos, "Básico" está bien (y el más común).
Requerir usuario válido: Este último comando le permite a Apache saber QUIEN está permitido. Mediante el uso "usuario válido“, le está diciendo a Apache que CUALQUIER PERSONA puede autenticarse si tienen un nombre de usuario y contraseña válidos.
Si prefiere ser más EXACTO, puede especificar un USUARIO o USUARIOS específicos. Este comando se vería así:
Requerir usuario mrgroove groovyguest
En este caso, solo los usuarios mrgroove y groovyguest podrían ingresar a la página / directorio que está protegiendo (después de proporcionar el nombre de usuario y la contraseña correctos, por supuesto). A todos los demás usuarios (incluidos los válidos) se les negará el acceso. Si desea permitir más usuarios, simplemente sepárelos con espacios.
Entonces, ahora que tenemos todas las configuraciones hechas, así es como debería verse su archivo .htaccess terminado:
La captura de pantalla se toma de un cuadro de Windows 2003 Server que ejecuta WordPress:
Paso 2: crea el archivo .htpasswd
Crear el archivo .htpasswd es un proceso simple. El archivo no es más que un archivo de texto que contiene una lista de Usuarios y sus contraseñas cifradas. Cada cadena de usuario debe separarse en su línea. Personalmente, solo uso Bloc de notas ++ o Bloc de notas de Windows para crear el archivo.
A continuación se muestra un archivo de ejemplo .htpasswd con dos usuarios:
Aunque Apache no "requiere" que encripte las contraseñas, es un proceso simple para los sistemas Windows y Linux.
Ventanas
Navegue a su carpeta BIN de Apache (generalmente se encuentra en C: \ Archivos de programa \ Apache Group \ Apache2bin) y ejecute la herramienta htpasswd.exe para generar una cadena de nombre de usuario / contraseña encriptada MD5. También puede usar la herramienta para crear el archivo .htpasswd por usted (lo que funcione ...). Para todos los detalles, simplemente ejecute el interruptor de ayuda desde la línea de comandos (htpasswd.exe /?).
Sin embargo, en casi todos los casos, solo ejecute el siguiente comando:
htpasswd -nb nombre de usuario contraseña
Una vez que se ejecuta el comando, la herramienta htpasswd.exe generará la cadena de usuario con la contraseña cifrada.
La captura de pantalla siguiente es un ejemplo de ejecución de la herramienta htpasswd.exe en Windows 2003 Server
Una vez que tenga la Cadena de usuario, cópiela en su archivo .htpasswd.
Linux:
Ir: http://railpix.railfan.net/pwdonly.html para crear sus cadenas de usuario con contraseñas cifradas. Proceso muy simple.
Paso 3: Verifique que Apache esté configurado correctamente * opcional
Por defecto, Apache tiene habilitados los módulos correctos. Dicho esto, nunca está de más ser un poco proactivo, además es un "control" rápido.
Abra su archivo Apache httpd.conf y verifique que el módulo AUTH esté habilitado:
Si encuentra que el módulo no está habilitado, simplemente corríjalo como se muestra arriba. No te olvides; debe reiniciar Apache para que los cambios en su httpd.conf surtan efecto.
Eso debería cuidar de él. Todo listo.
Etiquetas:apache, cifrado, htaccess, seguridad, ventanas