htpasswd-generator
Bouw een .htpasswd-regel voor Apache of nginx en een HTTP Basic-autorisatieheader op basis van een gebruikersnaam en wachtwoord, met bcrypt-, APR1- of SHA-1-hashing, volledig in je browser.
htpasswd-generator — Typ een gebruikersnaam en wachtwoord om twee dingen tegelijk te krijgen: een kant-en-klare .htpasswd-regel om te plakken voor de basisauthenticatie van Apache of nginx, en de bijbehorende HTTP Basic-autorisatieheader die je client zou versturen. De header is de base64 van user:pass en wordt direct bijgewerkt, terwijl de gehashte .htpasswd-regel wordt berekend wanneer je op Genereren drukt. Alles draait lokaal met de Web Crypto API en een WebAssembly-hasher in de browser, zodat je wachtwoord nooit naar een server wordt geüpload.
Wat is htpasswd-generator?
De htpasswd-generator is een gratis browsertool om inloggegevens te maken voor HTTP Basic-authenticatie. Systeembeheerders en webontwikkelaars gebruiken hem om een map of beheerpaneel met een gebruikersnaam en wachtwoord te beveiligen, zonder het opdrachtregelhulpprogramma htpasswd van Apache te installeren. Het levert één regel user:hash op die je aan een .htpasswd-bestand toevoegt, met keuze uit bcrypt (het sterkst, $2y$-formaat), APR1 (Apache's draagbare MD5, $apr1$-formaat) of SHA-1 (SHA-formaat). Het leidt ook de bijbehorende Authorization: Basic-header af, zodat je dezelfde inloggegevens kunt testen met curl of een REST-client. De bcrypt-kostenfactor is in te stellen bij Instellingen voor sterker of sneller hashen.
htpasswd-generator gebruiken
- Voer de gebruikersnaam in die zal inloggen.
- Typ het wachtwoord dat het account beschermt; het blijft in dit veld en wordt nergens naartoe gestuurd.
- Kopieer de Basic-autorisatieheader meteen als je hem alleen nodig hebt voor een API-verzoek of een curl-test.
- Open Instellingen om het hash-algoritme te kiezen (bcrypt, APR1 of SHA-1) en, voor bcrypt, de kostenfactor.
- Druk op Genereren om de gehashte .htpasswd-regel te berekenen en kopieer hem vervolgens naar het .htpasswd-bestand van je server.
Voorbeelden
bcrypt-regel voor één gebruiker
Invoer
gebruiker: admin, wachtwoord: s3cret, algoritme: bcrypt (kosten 10)
Uitvoer
admin:$2y$10$... (een bcrypt-hash van 60 tekens, elke keer een willekeurige salt)
HTTP Basic-header voor een API-test
Invoer
gebruiker: admin, wachtwoord: s3cret
Uitvoer
Basic YWRtaW46czNjcmV0
APR1-regel (Apache MD5) voor oude configuraties
Invoer
gebruiker: web, wachtwoord: pass123, algoritme: APR1
Uitvoer
web:$apr1$<salt>$<hash van 22 tekens>
Veelgestelde vragen
- Wordt mijn wachtwoord naar een server gestuurd?
- Nee. Zowel de Basic-header als de .htpasswd-hash worden volledig in je browser berekend met de Web Crypto API en een WebAssembly-hasher in de browser. Er wordt niets geüpload of op een server opgeslagen, dus de tool werkt offline en je wachtwoord verlaat de pagina nooit.
- Welke hash moet ik kiezen?
- Gebruik bcrypt voor nieuwe opstellingen; het is het bestand tegen kraken en wordt ondersteund door moderne Apache en nginx. APR1 ($apr1$) is Apache's draagbare MD5, handig voor oude configuraties. SHA-1 ({SHA}) is het zwakst en kun je beter vermijden, tenzij een systeem het specifiek vereist.
- Waarom duurt de knop Genereren even?
- bcrypt en APR1 zijn opzettelijk traag om brute-force-aanvallen te weerstaan, en bcrypt laadt bij het eerste gebruik ook een klein WebAssembly-module. Een hogere kostenfactor maakt bcrypt trager maar sterker. SHA-1 en de Basic-header zijn direct.
- Komt het overeen met het echte htpasswd-commando?
- Ja. bcrypt-regels gebruiken het $2y$-voorvoegsel dat Apache verwacht, APR1 gebruikt het standaardformaat $apr1$ met een willekeurige salt en SHA-1 gebruikt het {SHA}-schema, allemaal compatibel met door htpasswd gegenereerde bestanden.
- Kan ik dit voor nginx gebruiken?
- Ja. De auth_basic_user_file van nginx leest hetzelfde .htpasswd-formaat, dus een bcrypt- of APR1-regel werkt direct. nginx ondersteunt {SHA} niet, kies daarvoor dus bcrypt of APR1.
Gerelateerde tools
AES-tekstversleuteling (AES-GCM + PBKDF2)
Versleutel en ontsleutel tekst met AES-256-GCM via een sleutel afgeleid van een wachtwoordzin (PBKDF2 SHA-256, willekeurige salt), volledig in je browser en zonder uploads.
Argon2- en scrypt-hash
Hash een wachtwoord met Argon2id of scrypt en verifieer een Argon2-hash tegen een wachtwoord, volledig in je browser.
Bcrypt-hashgenerator en -verificator
Genereer een bcrypt-wachtwoordhash uit platte tekst met een gekozen kostenfactor, of verifieer een wachtwoord tegen een bestaande bcrypt-hash, volledig in je browser.
BIP39-mnemonic-generator
Genereer een willekeurige BIP39-herstelzin van 12 tot 24 woorden in meerdere talen, of zet een bestaande mnemonic terug om naar de ruwe entropie, helemaal in je browser.