Generatore di htpasswd

Crea una riga .htpasswd per Apache o nginx e un header di autorizzazione HTTP Basic a partire da nome utente e password, con hashing bcrypt, APR1 o SHA-1, interamente nel tuo browser.

Caricamento strumento…

Generatore di htpasswdDigita un nome utente e una password per ottenere due cose in una volta sola: una riga .htpasswd pronta da incollare per l'autenticazione basic di Apache o nginx e il corrispondente header di autorizzazione HTTP Basic che invierebbe il tuo client. L'header è il base64 di user:pass e si aggiorna all'istante, mentre la riga .htpasswd con hash viene calcolata quando premi Genera. Tutto viene eseguito localmente con la Web Crypto API e un hasher WebAssembly nel browser, così la tua password non viene mai caricata su alcun server.

Cos'è Generatore di htpasswd?

Il Generatore di htpasswd è uno strumento gratuito nel browser per creare le credenziali usate dall'Autenticazione HTTP Basic. Amministratori di sistema e sviluppatori web lo usano per proteggere una directory o un pannello di amministrazione con nome utente e password, senza installare l'utility da riga di comando htpasswd di Apache. Produce una singola riga user:hash da aggiungere a un file .htpasswd, scegliendo tra bcrypt (il più robusto, formato $2y$), APR1 (l'MD5 portabile di Apache, formato $apr1$) o SHA-1 (formato SHA). Deriva inoltre il corrispondente header Authorization: Basic così puoi testare le stesse credenziali con curl o un client REST. Il fattore di costo di bcrypt è configurabile nelle Impostazioni per un hashing più robusto o più veloce.

Come usare Generatore di htpasswd

  1. Inserisci il nome utente che effettuerà l'accesso.
  2. Digita la password che proteggerà l'account; resta in questo campo e non viene mai inviata da nessuna parte.
  3. Copia subito l'header di autorizzazione Basic se ti serve solo per una richiesta API o un test con curl.
  4. Apri le Impostazioni per scegliere l'algoritmo di hash (bcrypt, APR1 o SHA-1) e, per bcrypt, il fattore di costo.
  5. Premi Genera per calcolare la riga .htpasswd con hash, poi copiala nel file .htpasswd del tuo server.

Esempi

Riga bcrypt per un singolo utente

Input

utente: admin, password: s3cret, algoritmo: bcrypt (costo 10)

Output

admin:$2y$10$... (un hash bcrypt di 60 caratteri, salt casuale ogni volta)

Header HTTP Basic per un test API

Input

utente: admin, password: s3cret

Output

Basic YWRtaW46czNjcmV0

Riga APR1 (MD5 di Apache) per configurazioni legacy

Input

utente: web, password: pass123, algoritmo: APR1

Output

web:$apr1$<salt>$<hash di 22 caratteri>

Domande frequenti

La mia password viene inviata a un server?
No. Sia l'header Basic sia l'hash .htpasswd vengono calcolati interamente nel tuo browser con la Web Crypto API e un hasher WebAssembly nel browser. Niente viene caricato o memorizzato su alcun server, quindi lo strumento funziona offline e la tua password non lascia mai la pagina.
Quale hash dovrei scegliere?
Usa bcrypt per le nuove configurazioni; è il più resistente al cracking ed è supportato da Apache e nginx moderni. APR1 ($apr1$) è l'MD5 portabile di Apache, utile per configurazioni legacy. SHA-1 ({SHA}) è il più debole ed è meglio evitarlo, a meno che un sistema non lo richieda espressamente.
Perché il pulsante Genera impiega un momento?
bcrypt e APR1 sono volutamente lenti per resistere agli attacchi a forza bruta, e bcrypt al primo utilizzo carica anche un piccolo modulo WebAssembly. Un fattore di costo più alto rende bcrypt più lento ma più robusto. SHA-1 e l'header Basic sono istantanei.
Corrisponde al comando htpasswd reale?
Sì. Le righe bcrypt usano il prefisso $2y$ che Apache si aspetta, APR1 usa il formato standard $apr1$ con salt casuale e SHA-1 usa lo schema {SHA}, tutti compatibili con i file generati da htpasswd.
Posso usarlo per nginx?
Sì. L'auth_basic_user_file di nginx legge lo stesso formato .htpasswd, quindi una riga bcrypt o APR1 funziona direttamente. nginx non supporta {SHA}, perciò per esso scegli bcrypt o APR1.

Strumenti correlati