ديسمبر 16, 2008 - ويب    3 تعليقات

حماية مجلدات موقعك وملفاتك عن طريق htaccess .

ما هو htaccess. ::8::

باختصار هو عبارة عن ملف نصي بإمكانك استخدامه في موقعك لأغراض معينة عبر مجموعة من الأوامر والتعليمات المضمنة فيه…

وذلك بحذف اللاحقة txt وسبق اسم الملف بنقطة وبالتالي فهو بحكم الملفات المخفية في سيرفرات لينوكس

كان هذا الملف موضوع البحث الذي قمت بتقديمه في مادة أمن الشبكات

أكمل القراءة لمتابعة المزيد …………

سنقوم بتطبيق عملي لهذا الملف بهدف حماية مجلد الأدمن للموقع

وبالتالي في حال نجح المخترق في الحصول على باسوورد مدير الموقع عبر SQL Injection وكسر شيفرتها بطريقة ما فسيصادف كلمة مرور أخرى وحماية إضافية على لوحة تحكم الموقع .

باختصار كل ما علينا اتباعه هو التالي :

ننشىء ملفاً مماثلاً لسابقه باسم htpasswd . نضمن فيه حسابات المستخدمين القادرين على الوصول إلى محتويات المجلد الذي سنحدده لاحقاً

إضافة الحسابات تكون على الشكل

username:password

يفضل أن نضع الباسوورد بصورة مشفرة MD5 مثلاً

الموقع التالي يقوم بعملية التشفير

اضغط هنا

ملاحظة : لحماية أكبر ، نضع الملف htpasswd . في منطقة من الموقع بعيدة عن المتطفلين بحيث لا يمكن الوصول إليه

كأن يتم إدراجه بجوار مجلد WWW  في الموقع

نغلق الملف ونتوجه للملف htaccess .

نضيف الكود التالي ضمنه

AuthUserFile "/usr/local/you/safedir/.htpasswd"
AuthGroupFile /dev/null
AuthName "EnterPassword"
AuthType Basic

require user wsabstract

السطر الأول يمثل مسار السيرفر إلى ملف htpasswd.

تنبيه ( مسار السيرفر مختلف عن رابط الموقع ) بإالإمكان تتبعه عبر برنامج FTP ثمن إدراجه ضمن التعليمة

ملاحظة : نضع الملف ضمن المجلد الذي نود حمايته ، ففي حال وضعناه ضمن المجلد الرئيسي للموقع ستكون النتيجة عدم إمكانية الوصول إلى ملفات الموقع وتصفحه من قبل الزوار إلا من يحمل حساب اسم مستخدم وكلمة مرور مدرجة ضمن الملف

بالنسبة ل require user فدورها التالي :

في حال قمنا بتضمين أكثر من اسم مستخدم وكلمة مرور في الملف htpasswd .
فإن دور هذه التعليمة تحديد المستخدم المصرح له بالدخول وذلك بتعويض
wsabstract باسم المستخدم المراد .

أما في حال أردنا السماح بالوصول لكافة المستخدمين المضمنين في الملف htpasswd. فإننا نستخدم التعليمة

Require user xxx

بشكل عام هناك صياغة إضافية
require valid-user هي التي تستخدم غالباً وتكافىء سابقتها

الخاصية AuthName  : تصرح من خلالها عن اسم المنطقة التي تود الدخول لها ( ضعها كما تشاء )

أما في حال أردنا حماية مجموعة من الملفات ولتكن a.php , r.rar فيتم ذلك بإضافة التعليمة

< “files “a.php|r.rar>

للملف htaccess . على ان تسبق بالكود السابق مع حذف السطر

AuthGroupFile /dev/null

ويصبح الكود كالتالي
&lt;"files "a.php|r.rar&gt;
AuthUserFile "/usr/local/you/safedir/.htpasswd"

AuthName "EnterPassword"
AuthType Basic

require user wsabstract
ملاحظة 2 : AuthType Basic لأننا نستخدم هنا HTTP authentication

قد يتبع بدروس أخرى حول الملف htaccess . ::12::

أضيف :

الملف هو عبارة عن
configuration  لل apache
حتى لا يعتقد أحدهم انها خاصة بسيرفر معين !

لمشاهدة مثال ……..

http://lattakia-online.com/board/admin/

لتحميل ملفات التطبيق

ملف المثال

طبعاً ملف الباسوورد هنا باسمpasswd
موجود على المسار
.htpasswds/public_html/board/admin/passwd

.htpasswds هنا اسم المجلد المجاور لمجلد www في الموقع

3 تعليقات

  • فكرة لازم نجربها ونحنا عم ننتظر دروس htaccess
    شكرا لك ::75::

  • يعطيك العافية.. طريقة أول مرة بسمع عنها بس جد كتير مفيدة..
    بانتظار المزيد ربيع وبالتوفيق ::9:: ..
    وائل

  • أهلاً مرام ، وائل رح كمل تدريجياً شرح اوامر htaccess
    أو بالأحرى أوامر ال apache فهذا الملف هو عبارة عن
    configuration لل apache

    لمشاهدة مثال ……..

    http://lattakia-online.com/board/admin/

    وملفات التطبيق

    http://rbekdash.com/wp-content/uploads/2008/12/.rar

    طبعاً ملف الباسوورد هنا باسمpasswd
    موجود على المسار
    .htpasswds/public_html/board/admin/passwd

    .htpasswds هنا اسم المجلد المجاور لمجلد www في الموقع

    كان راسي عم يوجعني لما كتبت التدوينة صححت كام شغلة
    آسف ::10::

اترك تعليق