عرض مشاركة واحدة
  #1  
قديم 07-10-2011, 05:43 PM
الصورة الرمزية MOHAMED
MOHAMED MOHAMED غير متواجد حالياً

الإدارة والدعم الفني

 
تاريخ التسجيل: Mar 2010
المشاركات: 363
Awt6 شرح عمل جدار نارى على لوحة التحكم

بسم الله الرحمن الرحيم

اليوم سنشرح كيفية عمل جدار نارى على لوحة تحكم المدير
وهذا الدرس سيكون مفيد للذين يصممون السكربتات للاستضافات المجانية والتى لا يوجد بها جدار حماية
الفكرة فى هذا الدرس جديدة هى المفروض ان المستخدم لو دخل لوحة التحكم مثل
http://vvvv.com/admin/
على سبيل المثال نفترض ان admin هو المجلد الخاص بلوحة التحكم والمفروض ان عند كتابة هذا العنوان اصلاً
الصفحة الافتراضية التى تفتح
هى صفحة index.php صح ! اذا سنضع الجدار النارى فى هذه الصفحة بحيث ان المستخدم عند يكتب الاسم وكلمة المرور ويكونوا صح يتابع المترجم
ترجمة باقى الصفحة ومنها يحول المستخدم لصفحة الدخول
والجدار النارى من مميزاته منع الهكرز من اختراق الموقع والوصول للوحة التحكم
نبدأ على بركة الله الكود الذى سنستخدمه

كود PHP:
<?
$admin_cp_username 
"admin";
$admin_cp_password "12345";
if (!isset(
$_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm=""');
header('HTTP/1.0 401 Unauthorized');
die;

} else {

if ((
$_SERVER['PHP_AUTH_USER'] !== $admin_cp_username) || ($_SERVER['PHP_AUTH_PW'] !== $admin_cp_password)) {
header('WWW-Authenticate: Basic realm=""');
header('HTTP/1.0 401 Unauthorized');
die;
}
}
echo 
"!done";
?>
الكود السابق لفهمه يحتاج لمحترفين سنشرح الاشياء الاساسية فى هذا الكود
اولا هذان السطران بهما اسم المستخدم وكلمة المرور للمدير
كود PHP:
$admin_cp_username "admin";
$admin_cp_password "12345"
طبعاً انت بتغيرهم كما تريد او بتستوردهم من ملف آخر مثل ملف config.php
لنلاحظ الكود
كود PHP:
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm=""');
header('HTTP/1.0 401 Unauthorized');
die; 
هو اولاً بيتأكد من ان خاصية الجدار النارى متاحة كما نرى فى الكود السابق
والآن لننتقل الى هذا السطر وهو من اهم السطور
كود PHP:
if (($_SERVER['PHP_AUTH_USER'] !== $admin_cp_username) || ($_SERVER['PHP_AUTH_PW'] !== $admin_cp_password)) { 
وهو فائدته انه اذا لم يكن الاسم المكتوب فى الجدار النارى وكلمة المرور غير صحيحين يعطى هذه النتيجة
كود PHP:
die; 
وهى مت او توقف عن اكمال ترجمة الصفحة وهنا نلاحظ متغيرين قد تكلما عنهم فى الاول
كود PHP:
$admin_cp_username
$admin_cp_password 
وهذان المتغيرين لو لاحظنا فى الكود السابق نجد انه فائدته ان يتحقق من ان كلمة المرور واسم المستخدم المدخلان فى لوحة الجدار النارى مساويان لقيمتى
هذا المتغيران اى نفسها واذا لم يكن كذلك فالنتيجة
كود PHP:
header('WWW-Authenticate: Basic realm=""');
header('HTTP/1.0 401 Unauthorized');
die; 
اى توقف عن باقى الترجمة طيب اذا كان كلمة المرور واسم المستخدم صح يكمل ترجمة باقى الاكواد وهنا الاكواد هى سطر واحد وهو
كود PHP:
echo "Done!"
وهذا درسنا لليوم بسيط وسهل ان شاء الله
بالتوفيق للجميع


توقيع : MOHAMED

لا إله إلا الله محمد رسول الله

رد مع اقتباس