معلومات هامة عن كيفية حماية إدارة المحتوى من جوملا
1- التأكد من الملحقات التي تقوم بإستخدامها هل هي صحية أم بها مشاكل من الرابط اللآتي
2- التأكد من صلاحيات مرور الملفات و المجلدات و يجب دائما أن تكون كالتالي:الملفات -------> تصريح المرور الخاص بها هو 644
المجلدات-------> تصريح المرور الخاص بها هو 755
و أفضل برامج الإف تي بي FTP مجاني و رائع هو برنامج FileZilla و يمكن من خلاله ببساطة إختيار مجلد جوملا الرئيسي و عمل صلاحيات المجلدات و الملفات في نفس الوقت و بضغطة واحدة للصلاحيات السابقة.
المجلدات-------> تصريح المرور الخاص بها هو 755
و أفضل برامج الإف تي بي FTP مجاني و رائع هو برنامج FileZilla و يمكن من خلاله ببساطة إختيار مجلد جوملا الرئيسي و عمل صلاحيات المجلدات و الملفات في نفس الوقت و بضغطة واحدة للصلاحيات السابقة.
3- تغير إسم المرور التقليدي admin و كلمة السر أيضا بمجرد الإنتهاء من تثبيت جوملا.
4- نقل المجلدات الخاصة بـ log و tmp إلى خارج النطاق المرئي على اللإنترنت وحماية مجلد cache:
في ملف CONFIGURATION.PHP سوف تجد الكود التالي:
1.var $log_path = '/home/www/xoomla.net/logs';
2.var $tmp_path = '/home/www/xoomla.net/tmp';
1.var $log_path = '/home/www/xoomla.net/logs';
2.var $tmp_path = '/home/www/xoomla.net/tmp';
و يتم تغيرها لتصبح كالتالي: (لاحظ أن مستخدمي الـسي بانال يختلف الكود الحالي و السابق)
1.var $log_path = '/home/www/logs';
2.
3.var $tmp_path = '/home/www/tmp';
و
بالنسبة لمجلد Cache يجب عمل ملف index.html و إعطاءة صلاحيات 000 من خلال
أمر CHMOD و السبب هو أن كلما قمت بتنظيف أو مسح الكاش الخاص بك سوف يتم
مسح الملف index.html إن كانت صلاحيات الملف 644 و لكن إن كانت صلاحياته
000 فلن يمكن مسحه أو قرائته و بهذا لا يمكن معرفة باقي محتويات المجلد.
بالنسبة لمجلد Cache يجب عمل ملف index.html و إعطاءة صلاحيات 000 من خلال
أمر CHMOD و السبب هو أن كلما قمت بتنظيف أو مسح الكاش الخاص بك سوف يتم
مسح الملف index.html إن كانت صلاحيات الملف 644 و لكن إن كانت صلاحياته
000 فلن يمكن مسحه أو قرائته و بهذا لا يمكن معرفة باقي محتويات المجلد.
5- تغير مكان الملفات الحساسة الخاصة بجوملا مثل CONFIGURATION.PHP:هنا سوف يتم العمل على ملفين إثنين و هما:
/includes/defines.php و /administrator/includes/defines.php
حيث سيكون الكود الأصلي هو: في حدود السطر 26
1.define( 'JPATH_ROOT' , implode( DS, $parts ) );
2.
3.define( 'JPATH_SITE' , JPATH_ROOT );
4.define( 'JPATH_CONFIGURATION', JPATH_ROOT );
5.define( 'JPATH_ADMINISTRATOR', JPATH_ROOT . DS . 'administrator' );
6.define( 'JPATH_LIBRARIES' , JPATH_ROOT . DS . 'libraries' );
7.define( 'JPATH_INSTALLATION' , JPATH_ROOT . DS . 'installation' );
1.define( 'JPATH_ROOT' , implode( DS, $parts ) );
2.
3.define( 'JPATH_SITE' , JPATH_ROOT );
4.define( 'JPATH_CONFIGURATION', JPATH_ROOT );
5.define( 'JPATH_ADMINISTRATOR', JPATH_ROOT . DS . 'administrator' );
6.define( 'JPATH_LIBRARIES' , JPATH_ROOT . DS . 'libraries' );
7.define( 'JPATH_INSTALLATION' , JPATH_ROOT . DS . 'installation' );
و يمكن نقل ملف الإعدادات configuration.php إلى مسار أخر من خلال تعديل السطر 26 تقريبا
1.define('JPATH_CONFIGURATION',JPATH_ROOT); ليصبح:
[right]
1.define('JPATH_CONFIGURATION',JPATH_ROOT.DS.'/../xoomla');
2.و في حالة ان جوملا تم تثبيتها على مجلد فرعي فيكون التعديل كالتالي:
3.('JPATH_CONFIGURATION',JPATH_ROOT.DS.'../../'.DS.'xoomla');
6- منع الدخول المباشر لبعض الملفات بإستخدام ملف .htaccess
و هنا يجب التأكد من وجود نسخة إحتياطة من ملف .htaccess قبل بدأ العمل..
ثم و بعد فتجه قم بإضافة الأكواد التالية:
لحماية ملفي .htaccess و configurtation.php قم بإضافة الكود التالي في مقدمة الملف
01.
02.order allow,deny
03.deny from all
04.
05.#
06.
07.Order allow,deny
08.Deny from all
09. و لحمايةبعض الملفات الهامة الأخرى يمكن إضافة الكود التالي في مقدمة الملف أيضا
1.
2.Order allow,deny
3.Deny from all
4.
7-
في حالة عدم إستخدامك لإضافة معينة لأاي سبب، ليس من الكافي تعطيل العمل
بها...و لكن يجب إزالتها بالكامل من جوملا من خلال إزالة التثبيت.
و السبب هو أن مجرد تعطيلها لا يعني عدم القدرة للوصول إليها.
و يمكنك التجربة من خلال أخذ الرابط الخاص بالإضافة قبل تعطيلها
ثم
قم بتعطيلها
ثم
جرب الرابط و سوف تجده يعمل رغم توقيف تفعيلها.
8- منع عملية المسح SCAN للمجلدات الفرعية بإستخدام .htaccess
و هذا من خلال إضافة الكود التالي لملف .htaccess بعد الأمر RewriteEngine On
مثال سوف يقوم الأمر التالي بتحويل كافة طلب المسح الذي يستهدف كلمة phpMyAdmin إلى index.php:
1.RewriteRule ^/phpMyAdmin.*$ /index.php
9- من حلال ملف php.ini يجب غلق الخواص التالية و التي تمنع هجمات كثيرة و عامة :
1.register_globals off
2.allow_url_fopen off
3.magic_quotes_gpc on
و في حالة عدم القدرة إدارة ملف php.ini يمكن عمل هذا من خلال ملف .htaccess من خلال إضافة الكود التالي:
1.php_flag register_globals off
2.php_flag allow_url_fopen off
3.php_flag magic_quotes_gpc on
10- كيف أقوم بعمل موقع جوملا ديمو Demo Joomla ؟
في ملف /includes/version.php
قم بالبحث عن:
1./** @var string Whether site is a production = 1 or demo site = 0 */
2.var $SITE = 1;
3./** @var string Whether site has restricted functionality mostly used for demo sites: 0 is default */
4.var $RESTRICT = 0;
و في حالة الرغبة في عمل موقع جوملا تجريبي Demo Joomla ينصح بأن تكون الإعدادات كالتالي:
1./** @var string Whether site is a production = 1 or demo site = 0 */
2.var $SITE = 0;
3./** @var string Whether site has restricted functionality mostly used for demo sites: 0 is default */
4.var $RESTRICT = 1;
1.$SITE = 0
2.// Allows multiple user logins with only one account. By default Joomla!
3.// allows only one active session per account as a security feature.
1.$RESTRICT = 1
2.// Disables those logging in, both Front-end and Back-end from changing
3.// user details - like password and username 11- إستخدام إضافة jHackGuard لحماية جوملا:
يمكن تحميله من الرابط التالي و لا يوجد أي ضبط إضافي، فقط قم بتثبيته و تفعيله و وظيفته عمل تصنيفات و فلترة للأوامر المطلوبة من الموقع الخاص بجوملا
12- تغير ترميز قاعدة البيانات الخاصة بجوملا من jos_ إلى اي رمز أخر
هذا الإختيار جيد جدا في منع
الإختراقات المباشرة و المستهدفة لقاعدة بيانات جوملا.. و يمكن ذلك ببساطة
شديدة جدا من خلال الخطوات التالي:
أولا:- تحميل الإضافة DB Admin و تثبيتها كأي إضافة جوملا أخرى.
ثانيا:- من لوحة تحكم مدير جوملا إذهب إلى Components > DB Admin و قم بتغير الرمز الأصلي jos_ إلى xoomla_ كمثال فقط
ثالثا:- قم بفتح ملف configuration.php و قم بالبحث عن السطر التالي:
1.var $dbprefix = 'jos_'; و قم بتحويل الرمز القديم إلى الرمز الجديد كالتالي:
1.var $dbprefix = 'xoomla_';رابعا:- تأكد ان الموقع يعمل بنجاح ثم قم بحذف الإضافة
13- حماية مجلد إدارة جوملا بكلمة سر
برجاء مراجعة إلشركة المزودة للإستضافة لمعرفة كيفية عمل هذه الخاصية Password protect your administrative area بإستخدام .htaccess
14- عمل صفحة خطأ خاصة Error 404 و تسجيل محاولات إختراق جوملا و إرسال بريد تنبيهي إلى مدير جوملا:
و هذا من خلال تثبيت الإضافة com_error404 المجانية.
و بعد تثبيتها قم بالتأكد من تفعيل
البلجن المرفق معا ثم قم بالدخول للوحة التحكم الخاصة بالإضافة و قم بعمل
الإعدادات المطلوبة و هي في غاية في السهولة.
15- إستعادة كلمة مرور (كلمة السر) الخاصة بمدير موقع جوملا المفقودة:
هو أمر بسيط للغاية.
و هو من خلال إنشاء جديد بأي إسم مستخدم و لنقل أنه مثلا: admin2
ثم
الدخول إلى قاعدة البيانات الخاصة بجوملا و نبحث عن الجدول jos_users و نقوم بفتحه.
ثم
نبحث عن المستخدم الجديد admin2
ثم
نعمل تعديل علة إسم المستخدم الجديد admin2 و نبحث عن رموز كلمة السر و التي ستكون بهذا الشكل:
1.password = "MD5 hash of password"------------------------------------------------------
2.
3.admin = 21232f297a57a5a743894a0e4a801fc3
4.secret = 5ebe2294ecd0e0f08eab7690d2a6ee69
5.OU812 = 7441de5382cf4fecbaa9a8c538e76783 ثم ننسخها كاملة
ثم
نبحث عن إسم الستخدم الخاص بالمدير و هو سيحمل رقم التعريف ID 62 و
نقوم بتعديله و إلصاق الكود الذي تم نسخه سابقا من إسم المستخدم المؤقت
admin2
هام| بمجرد إستكمال الخطوات السابقة يجب إعادة تغير كلمة السر لمدير الموقع و إلغاء اسم المستخدم المؤقت السابق عمله