Generator htpasswd

Buat baris .htpasswd Apache atau nginx dan header Otorisasi HTTP Basic dari nama pengguna dan kata sandi, dengan hashing bcrypt, APR1, atau SHA-1, sepenuhnya di browser Anda.

Memuat alat…

Generator htpasswdKetik nama pengguna dan kata sandi untuk mendapatkan dua hal sekaligus: baris .htpasswd yang siap ditempel untuk basic-auth Apache atau nginx, dan header Otorisasi HTTP Basic yang sesuai yang akan dikirim klien Anda. Header adalah base64 dari user:pass dan diperbarui seketika, sedangkan baris .htpasswd yang di-hash dihitung saat Anda menekan Hasilkan. Semuanya berjalan secara lokal dengan Web Crypto API dan hasher WebAssembly di browser, sehingga kata sandi Anda tidak pernah diunggah ke server mana pun.

Apa itu Generator htpasswd?

Generator htpasswd adalah alat gratis di browser untuk membuat kredensial yang digunakan oleh Autentikasi HTTP Basic. Administrator sistem dan pengembang web menggunakannya untuk melindungi direktori atau panel admin dengan nama pengguna dan kata sandi tanpa memasang utilitas baris perintah htpasswd milik Apache. Alat ini menghasilkan satu baris user:hash yang Anda tambahkan ke file .htpasswd, dengan pilihan bcrypt (paling kuat, format $2y$), APR1 (MD5 portabel milik Apache, format $apr1$), atau SHA-1 (format SHA). Alat ini juga menurunkan header Authorization: Basic yang sesuai sehingga Anda dapat menguji kredensial yang sama dengan curl atau klien REST. Faktor biaya bcrypt dapat dikonfigurasi di Pengaturan untuk hashing yang lebih kuat atau lebih cepat.

Cara menggunakan Generator htpasswd

  1. Masukkan nama pengguna yang akan masuk.
  2. Ketik kata sandi yang akan melindungi akun; kata sandi tetap berada di bidang ini dan tidak pernah dikirim ke mana pun.
  3. Salin header Otorisasi Basic segera jika Anda hanya membutuhkannya untuk permintaan API atau pengujian curl.
  4. Buka Pengaturan untuk memilih algoritme hash (bcrypt, APR1, atau SHA-1) dan, untuk bcrypt, faktor biayanya.
  5. Tekan Hasilkan untuk menghitung baris .htpasswd yang di-hash, lalu salin ke file .htpasswd server Anda.

Contoh

Baris bcrypt untuk satu pengguna

Masukan

pengguna: admin, kata sandi: s3cret, algoritme: bcrypt (biaya 10)

Keluaran

admin:$2y$10$... (hash bcrypt 60 karakter, salt acak setiap kali)

Header HTTP Basic untuk pengujian API

Masukan

pengguna: admin, kata sandi: s3cret

Keluaran

Basic YWRtaW46czNjcmV0

Baris APR1 (MD5 Apache) untuk konfigurasi lama

Masukan

pengguna: web, kata sandi: pass123, algoritme: APR1

Keluaran

web:$apr1$<salt>$<hash 22 karakter>

Pertanyaan yang sering diajukan

Apakah kata sandi saya dikirim ke server?
Tidak. Baik header Basic maupun hash .htpasswd dihitung sepenuhnya di browser Anda menggunakan Web Crypto API dan hasher WebAssembly di browser. Tidak ada yang diunggah atau disimpan di server mana pun, sehingga alat ini berfungsi offline dan kata sandi Anda tidak pernah meninggalkan halaman.
Hash mana yang harus saya pilih?
Gunakan bcrypt untuk pengaturan baru; bcrypt paling tahan terhadap peretasan dan didukung oleh Apache dan nginx modern. APR1 ($apr1$) adalah MD5 portabel milik Apache, berguna untuk konfigurasi lama. SHA-1 ({SHA}) paling lemah dan sebaiknya dihindari kecuali suatu sistem memang mengharuskannya.
Mengapa tombol Hasilkan butuh sesaat?
bcrypt dan APR1 sengaja dibuat lambat untuk menahan serangan brute force, dan bcrypt juga memuat modul WebAssembly kecil saat pertama kali digunakan. Faktor biaya yang lebih tinggi membuat bcrypt lebih lambat tetapi lebih kuat. SHA-1 dan header Basic bersifat instan.
Apakah cocok dengan perintah htpasswd asli?
Ya. Baris bcrypt menggunakan awalan $2y$ yang diharapkan Apache, APR1 menggunakan format standar $apr1$ dengan salt acak, dan SHA-1 menggunakan skema {SHA}, semuanya kompatibel dengan file yang dihasilkan htpasswd.
Bisakah saya menggunakannya untuk nginx?
Ya. auth_basic_user_file milik nginx membaca format .htpasswd yang sama, jadi baris bcrypt atau APR1 langsung berfungsi. nginx tidak mendukung {SHA}, jadi pilih bcrypt atau APR1 untuknya.

Alat terkait