مولّد إدخال .htpasswd

أنشئ سطرًا جاهزًا للصق في ملف .htpasswd الخاص بـ Apache (الصيغة identifiant:hash، خوارزمية APR1-MD5)، لحماية مجلد بالمصادقة الأساسية. لا تُرسل كلمة المرور المُدخلة إلى أي خادم أبدًا: تُحسب التجزئة بالكامل داخل متصفحك، بملح عشوائي يُولَّد محليًا.

مثال:

كيف يعمل

يخزّن ملف .htpasswd في Apache، في سطر لكل مستخدم، معرّفًا يليه نقطتان رأسيتان ثم تجزئة كلمة المرور (وليس كلمة المرور بنصها الصريح أبدًا). تحسب هذه الأداة هذه التجزئة بصيغة APR1-MD5 (التي كان يولّدها الأمر htpasswd تاريخيًا)، مع ملح عشوائي من 8 محارف يختلف في كل عملية توليد، ثم تُركّب السطر identifiant:hash الجاهز للإضافة إلى ملف .htpasswd أو إلى التوجيه المكافئ في إعداد Apache/Nginx.

أين أضع هذا السطر؟

أضفه إلى الملف المشار إليه في التوجيه AuthUserFile ضمن إعداد Apache (سطر لكل مستخدم)، ثم فعّل AuthType Basic وRequire valid-user على المجلد المراد حمايته. يتطلب Nginx وحدة متوافقة (مثل ngx_http_auth_basic_module) تشير إلى النوع نفسه من الملفات.

هل APR1-MD5 آمن بما يكفي اليوم؟

لا يزال APR1-MD5 الصيغة التاريخية الأكثر دعمًا عالميًا في أدوات .htpasswd، لكنه أضعف من الخوارزميات الحديثة مثل bcrypt. للمصادقة التي تحمي بيانات حساسة، فضّل خوارزمية أقوى إن كان إصدار Apache/Nginx لديك يدعمها (bcrypt عبر htpasswd -B)، واجمع دائمًا بين المصادقة الأساسية وHTTPS، وإلا ستنتقل بيانات الاعتماد بنص صريح عبر الشبكة مع كل طلب.

الخصوصية: تبقى كلمة المرور المُدخلة والتجزئة المحسوبة محليتين 100% — لا يُرسل أي شيء إلى خادم، بما في ذلك الملح العشوائي المولَّد لهذا الإدخال.