Generador de htpasswd online
Genera una línea de usuario .htpasswd con bcrypt o SHA-1 a partir de un usuario y una contraseña, directamente en tu navegador. Las credenciales permanecen en tu dispositivo.
El Generador de htpasswd hashea tu contraseña en tu navegador: bcrypt en un módulo de carga diferida y SHA-1 vía la Web Crypto API. El usuario y la contraseña que introduces nunca salen de tu dispositivo y nunca se suben a ArrayKit.
Abre el Generador de Basic Auth
Acerca de Generador de htpasswd
El Generador de htpasswd convierte un usuario y una contraseña en una sola línea .htpasswd para HTTP basic auth de Apache o nginx. Elige bcrypt, el esquema con sal recomendado que Apache escribe como $2y$, o el esquema heredado {SHA} (SHA-1 sin sal, Base64) para configuraciones antiguas. La herramienta produce una línea user:hash lista que puedes copiar o descargar y añadir a tu archivo .htpasswd, y luego proteger un directorio con AuthType Basic o auth_basic_user_file de nginx. Es ideal para administradores de sistemas y desarrolladores que bloquean un sitio de staging, un panel interno o un directorio detrás de un proxy inverso. El hashing bcrypt funciona con una sal aleatoria nueva cada vez y SHA-1 usa la Web Crypto API, todo en tu navegador, así que la contraseña que escribes nunca sale de tu dispositivo.
Características
- Genera una línea user:hash para un archivo .htpasswd a partir de un usuario y una contraseña
- Esquema bcrypt con sal aleatoria, emitido con el prefijo $2y$ de Apache
- Esquema heredado {SHA} (SHA-1 en Base64) para configuraciones antiguas de Apache y nginx
- Copia la línea o descárgala directamente en un archivo .htpasswd
- Rechaza los usuarios con dos puntos, espacios o saltos de línea que romperían el archivo
- Cada ejecución de bcrypt produce un hash nuevo para que contraseñas idénticas nunca coincidan
- Funciona igual para mod_auth_basic de Apache y auth_basic_user_file de nginx
- Hashea la contraseña en tu navegador sin enviar nada a un servidor
Cómo usar Generador de htpasswd
- Escribe el usuario y la contraseña con los que quieres proteger un directorio
- Elige bcrypt (recomendado) o el algoritmo heredado SHA-1 {SHA}
- Copia la línea user:hash generada o descarga el archivo .htpasswd
- Añade la línea al .htpasswd de tu servidor y referéncialo desde la configuración de auth
Ejemplo
Entrada
username: admin
password: password
algorithm: SHA-1
Salida
admin:{SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=
SHA-1 produce {SHA} + Base64; bcrypt emitiría admin:$2y$... en su lugar.
Errores comunes y solución de problemas
- Apache registra 'crypt not supported' o la línea bcrypt se rechaza. — bcrypt en .htpasswd necesita Apache 2.4 o posterior con mod_authn_file. En servidores más antiguos cambia al esquema {SHA} o actualiza Apache.
- Toda la línea acabó en una sola fila y la auth nunca tiene éxito. — Cada entrada .htpasswd debe estar en su propia línea terminada en un salto de línea. Descargar el archivo añade el salto de línea por ti; si pegas, pulsa Enter tras la línea.
- El usuario contiene dos puntos y el archivo lo divide mal. — Apache divide cada entrada en el primer signo de dos puntos, así que un dos puntos en el usuario rompe el análisis. Elimínalo; el generador lo bloquea por esta razón.
- Copié un hash {SHA} pero el inicio de sesión sigue fallando. — El esquema {SHA} es SHA-1 sin sal y sensible a mayúsculas en la contraseña. Vuelve a comprobar la contraseña exacta, y prefiere bcrypt para cualquier cosa expuesta a internet.
Preguntas frecuentes
- ¿Qué algoritmo debo usar para un archivo .htpasswd?
- Usa bcrypt para cualquier cosa accesible por la red: lleva sal y es deliberadamente lento, así que resiste la fuerza bruta. El esquema SHA-1 {SHA} es sin sal y solo vale la pena para servidores heredados que no pueden ejecutar bcrypt.
- ¿Por qué el hash bcrypt empieza por $2y$ en lugar de $2a$?
- $2y$ es el prefijo que escribe la herramienta htpasswd de Apache. Las bibliotecas bcrypt a menudo emiten $2a$ o $2b$, pero el algoritmo es idéntico, así que este generador normaliza el prefijo a $2y$ para coincidir con lo que Apache produce en disco.
- ¿Cómo añado la línea generada a mi archivo .htpasswd?
- Copia la línea user:hash, o descarga el archivo .htpasswd, y añade la línea como su propia fila. Luego apunta AuthUserFile (Apache) o auth_basic_user_file (nginx) a ese archivo y recarga el servidor.
- ¿La misma contraseña produce la misma línea htpasswd cada vez?
- Con bcrypt, no: se usa una sal aleatoria nueva en cada ejecución, así que contraseñas idénticas producen hashes distintos que aun así verifican. Con el esquema {SHA} el hash es sin sal, así que la misma contraseña siempre produce la misma línea.
- ¿Se envía a un servidor la contraseña que escribo para hashearla?
- No. bcrypt funciona en tu navegador y SHA-1 usa la Web Crypto API integrada, así que el usuario y la contraseña que introduces se hashean en tu dispositivo y nunca se suben a ArrayKit.
Herramientas relacionadas
Todas las herramientas de ArrayKit