مولّد htpasswd
أنشئ سطر .htpasswd لخادم Apache أو nginx وترويسة تفويض HTTP Basic انطلاقًا من اسم مستخدم وكلمة مرور، مع تجزئة bcrypt أو APR1 أو SHA-1، بالكامل داخل متصفحك.
مولّد htpasswd — اكتب اسم مستخدم وكلمة مرور لتحصل على شيئين في آن واحد: سطر .htpasswd جاهز للصق في المصادقة الأساسية لـ Apache أو nginx، وترويسة تفويض HTTP Basic المطابقة التي سيرسلها عميلك. الترويسة هي base64 لـ user:pass وتُحدَّث فورًا، بينما يُحسب سطر .htpasswd المُجزَّأ عند الضغط على إنشاء. كل شيء يعمل محليًا باستخدام Web Crypto API ومُجزِّئ WebAssembly داخل المتصفح، لذا لا تُرفع كلمة مرورك إلى أي خادم.
ما هي مولّد htpasswd؟
مولّد htpasswd أداة مجانية تعمل داخل المتصفح لإنشاء بيانات الاعتماد المستخدمة في مصادقة HTTP الأساسية. يستخدمه مديرو الأنظمة ومطورو الويب لحماية مجلد أو لوحة إدارة باسم مستخدم وكلمة مرور دون تثبيت أداة سطر الأوامر htpasswd الخاصة بـ Apache. ينتج سطرًا واحدًا user:hash تضيفه إلى ملف .htpasswd، مع اختيار bcrypt (الأقوى، صيغة $2y$) أو APR1 (نسخة MD5 المحمولة من Apache، صيغة $apr1$) أو SHA-1 (صيغة SHA). كما يشتق ترويسة Authorization: Basic المطابقة كي تتمكن من اختبار بيانات الاعتماد نفسها باستخدام curl أو عميل REST. ومعامل تكلفة bcrypt قابل للضبط في الإعدادات للحصول على تجزئة أقوى أو أسرع.
كيفية استخدام مولّد htpasswd
- أدخل اسم المستخدم الذي سيسجّل الدخول.
- اكتب كلمة المرور التي ستحمي الحساب؛ تبقى في هذا الحقل ولا تُرسل إلى أي مكان.
- انسخ ترويسة تفويض Basic فورًا إذا كنت تحتاجها فقط لطلب API أو اختبار curl.
- افتح الإعدادات لاختيار خوارزمية التجزئة (bcrypt أو APR1 أو SHA-1)، ومعامل التكلفة لـ bcrypt.
- اضغط على إنشاء لحساب سطر .htpasswd المُجزَّأ، ثم انسخه إلى ملف .htpasswd في خادمك.
أمثلة
سطر bcrypt لمستخدم واحد
المدخل
المستخدم: admin، كلمة المرور: s3cret، الخوارزمية: bcrypt (التكلفة 10)
المخرج
admin:$2y$10$... (تجزئة bcrypt من 60 حرفًا، ملح عشوائي في كل مرة)
ترويسة HTTP Basic لاختبار API
المدخل
المستخدم: admin، كلمة المرور: s3cret
المخرج
Basic YWRtaW46czNjcmV0
سطر APR1 (MD5 من Apache) للإعدادات القديمة
المدخل
المستخدم: web، كلمة المرور: pass123، الخوارزمية: APR1
المخرج
web:$apr1$<الملح>$<تجزئة من 22 حرفًا>
الأسئلة الشائعة
- هل تُرسَل كلمة مروري إلى خادم؟
- لا. تُحسب كل من ترويسة Basic وتجزئة .htpasswd بالكامل داخل متصفحك باستخدام Web Crypto API ومُجزِّئ WebAssembly داخل المتصفح. لا يُرفع أو يُخزَّن أي شيء على أي خادم، لذا تعمل الأداة دون اتصال ولا تغادر كلمة مرورك الصفحة أبدًا.
- أي تجزئة ينبغي أن أختار؟
- استخدم bcrypt للإعدادات الجديدة؛ فهو الأكثر مقاومة للكسر ومدعوم في إصدارات Apache وnginx الحديثة. وAPR1 ($apr1$) هو نسخة MD5 المحمولة من Apache، وهو مفيد للإعدادات القديمة. أما SHA-1 ({SHA}) فهو الأضعف ويُفضَّل تجنّبه ما لم يتطلبه نظام معيّن صراحةً.
- لماذا يستغرق زر إنشاء لحظةً؟
- صُمِّم bcrypt وAPR1 عمدًا ليكونا بطيئين لمقاومة هجمات القوة الغاشمة، كما يُحمِّل bcrypt وحدة WebAssembly صغيرة عند أول استخدام. معامل التكلفة الأعلى يجعل bcrypt أبطأ لكن أقوى. أما SHA-1 وترويسة Basic فهما فوريان.
- هل يطابق أمر htpasswd الحقيقي؟
- نعم. تستخدم أسطر bcrypt البادئة $2y$ التي يتوقعها Apache، ويستخدم APR1 صيغة $apr1$ القياسية بملح عشوائي، ويستخدم SHA-1 مخطط {SHA}، وكلها متوافقة مع الملفات التي يولّدها htpasswd.
- هل يمكنني استخدام هذا مع nginx؟
- نعم. يقرأ auth_basic_user_file في nginx صيغة .htpasswd نفسها، لذا يعمل سطر bcrypt أو APR1 مباشرةً. لا يدعم nginx مخطط {SHA}، لذا اختر bcrypt أو APR1 له.
أدوات ذات صلة
تشفير نصوص AES (AES-GCM + PBKDF2)
شفّر النص وفك تشفيره باستخدام AES-256-GCM بمفتاح مشتق من عبارة مرور (PBKDF2 SHA-256، ملح عشوائي)، بالكامل داخل متصفحك ودون أي رفع.
تجزئة Argon2 وscrypt
جزّئ كلمة مرور باستخدام Argon2id أو scrypt وتحقق من تطابق تجزئة Argon2 مع كلمة مرور، بالكامل داخل متصفحك.
مولّد ومدقّق تجزئة Bcrypt
أنشئ تجزئة كلمة مرور bcrypt من نص عادي بعامل التكلفة الذي تختاره، أو تحقّق من كلمة مرور مقابل تجزئة bcrypt موجودة، بالكامل داخل متصفّحك.
مولّد عبارات BIP39 التذكيرية
أنشئ عبارة استرداد BIP39 عشوائية من 12 إلى 24 كلمة بعدة لغات، أو حوّل عبارة تذكيرية موجودة إلى الإنتروبيا الأولية الخاصة بها، كل ذلك داخل متصفحك.