بسم الله الرحمن الرحيم
في هذه العجاله سأحاول أن اعرض نقاط سريعة وخفيفة مأخوذة نصأ من الموقع التالي http://www.brennan.id.au/ .
في نهاية هذا الدرس يكون لديك التالي :
1 - جهاز سيرفر يستقبل النت ويقوم بتوزيعه على باقي الأجهزة المتصلة به ( تماماً كما في مقاهي الانترنت .
2 – بروكسي داخلي يعمل على منع أي جهاز من الوصول للشبكة بدون بروكسي ، كما يعمل كاش وذلك لتسريع تصفح النت .
ملاحظة :
1 - فيما يتعلق بموضوع سكويد فقد أخذته من موضوع الاستاذ مسلم عادل .
2 – هذا الموضوع ﻻيغني عن ورشة العمل القائمة حالياً على هذا الرابط .
سأفترض الآتي :
1 – لديك جهاز سأطلق عليه مسمى server عليه كرتين شبكة ، الأول سأطلق عليه external أي خارجي وسيتم الإشارة اليه بالاسم eth0 . الكرت الآخر سأطلق عليه مسمى internal أي داخلي وسيتم الإشارة اليه بالاسم eth1 .
2 – لديك مودم راوتر مرتبط بالسيرفر من خلال كرت eth0 .
3 – لديك سويتش يرتبط بالسيرفر من خلال كرت eth1 .
4 – الشبكة المحلية من الفئة C ورقمها 192.168.1.0/24 .
5 – التوزيعات المقترحة هي Red Hat Enterprise 4 و CentOS 4 .
6 – جميع الأوامر ﻻبد لها من صلاحية المستخدم root .
7 – للتفرقه بين الأمر وناتج الأمر سأقوم بوضع علامة # قبل الأمر .
8 – سأقوم بالشرح على الأوامر أو على محتويات الملف عن طريق <----------
9 – برنامج squid مثبت لديك
10 – يوجد ملف في المرفقات تأكد من تحميله قبل تنفيذ أي خطوة .
ملاحظة قبل البدء :
1 - تأكد من طباعة هذا الشرح أو خفظة على السيرفر لأنه بعد قليل سوف يصبح جهازك بدون انترنت .
2 – تأكد من أنك تملك بيانات مزود خدمة الانترنت ISP مثل اسم المستخدم وكلمة المرور لأننا سنقوم بإزالة الاتصال الحالي من الراوتر .
الخطوة الأولى :
من جهازك السيرفر افتح المتصفح وادخل الى الرواتر عن طريق الرقم 10.0.0.138
تأكد من أن IP يتم تزويده تلقائياً عن طريق DHCP وتأكد من رقم IP الخاص بالكرت eth0 . عندي كان الكرت eth0 يحمل الرقم 192.168.1.64 .
الآن قم بإنشاء اتصال جديد ولكن تأكد من اختيار النوع bridge وليس router أي أن جهازك هو من سيقوم بالإتصال وليس الراوتر وسيكون ذلك عن طريق PPPoE .
من الآن وصاعداً لن يكون بمقدورك الوصل الى صفحة الراوتر ، فإن حصل وأردت يوماً ما تغيير هذه الطريقة والرجوع الى الطريقة القديمة وهي أن جميع الأجهزة تتصل من خلال الراوتر فقم بإحضار عود أسنان واضغط واستمر بالضغط على زر reset الموجود خلف جهاز الراوتر .
إعداد كروت الشبكة :
أولا : طرت الشبكة الداخلي Internal .
افتح التيرمينال واكتب الآتي
استبدل المحرر vi بأي محرر آخر إن أردت ذلك مثل nano . الأمر السابق لتعديل خصائص كرت الشبكة الداخلي internal والذي قلنا عنه بأنه يرتبط بالأجهزة الاخرى عن طريق السويتش ، سيظهر لك الآتي :
تأكد من ضبط الإعدادات السابقة وخصوصاً رقم الآيبي ، من الآن وصاعداً عندما يطلب منك رقم الآيبي الخاص بالسيرفر سيكون 192.168.1.1 لأن الكرت الآخر متصل بالنت وليس له علاقة بالأجهزة الأخرى .
قم بحفظ الإعدادات واخرج من الملف .
اكتب التالي :
الآن احفظ الملف واخرج وبهذا نكون قد انتهينا من إعداد كرت الشبكة الداخلي .
ثانياً : كرت الشبكة الخارجي External .
من سطر الأوارم نفذ التالي :
احفظ الإعدادات واخرج ثم قم بتنفذ الآتي :
الآن سيقوم النظام بإعداة تشغيل خدمة الشبكات وتفعيل الخصائص الجديدة “ مهم جداً بعد أي تعديل “
اكتب الآتي لتتأكد من عدم وجود أخطاء
ولجعل خدمة الشبكات تعمل تلقائياً على مستويات التشغيل المتوفر اكتب الآتي :
هذا سيجعل خدمة الشبكات تعمل في مستويات التشغيل 2.3.4.5 .
لتتأكد من حصولك على الآيبيات المطلوبة اكتب
يمكنك رؤية الكل وذلك بوضع a بدل eth1 .
إضافة البوابة الإفتراضة .
سنقوم الآن بإضافة البوابة الإفتراضية للإنترنت ، في بداية هذا الشرح طلبت منك التأكد من رقم الآيبي الخاص بالكرت eth0 والذي حصل عليه تلقائياً من الراوتر عن طريق DHCP ، هل تتذكره ؟
سنقوم الآن بتنفيذ الآتي :
الآن وبعد أن قمنا بهيئة الكروت سنقوم بإعداد الإتصال .
إعداد الإتصال :
سنقوم الآن بتهيئة الإتصال عن طريق السيرفر ، قم بتنفذ الآتي :
إعداد PPPoE .
وهي اختصار Point-to-Point Protocol over Ethernet . الآن نفذ التالي :
تأكد من وضع اسم المستخدم الخاص بك بين علامتي التنصيص المفرد '' ، كلمة المرور موجودة في ملف منفصل .
"
استبدل اسم المستخدم وكلمة المرور بما يتناسب معك . ثم قم بالتالي :
سيظهر رقم الآيبي الخاص بإتصالك بدل علامة xxx.xxx.xxx.xxx .
ملاحظة :
عندما وصلت الى هذه النقطة لم تعمل لمبة الانترنت فقمت بفص لخط الهاتف وانتظرت قليلاً ثم قمت بتركيبه مره اخره وأضاءت اللمبة . حقيقة ﻻ أعرف ماهو السبب .
الآن نفذ التالي :
حتى هذه النقطة سيكون السيرفر فقط هو المتصل بالانترنت أما باقي الأجهزة فلا . في القسم التالي سنقوم بعمل الإعدادات اللازمة للسماح لباقي أجهزة الشبكة بالوصول الى الإنترنت وذلك عن طريق iptables .
الجدار الناري Firewall .
الفكرة الآن هي أن يقوم iptables بتحويل أي حزمة قادمة من الشبكة الداخليه الى الشبكة الخارجية وبذلك يسمح لباقي الأجهزة بالوصول الى الانترنت .
سيقوم السكريبت التالي بأداء كل هذه المهام عنك ولن تحتاج الى تنفيذه إلا مره واحدة فقط . قم بتحميل الملف من المرفقات .
الآن قم بتنفيذ التالي :
الآن بقي علينا إعداد بروكسي سكويد
تهيئة البروكسي Squid Proxy Configure
سنقوم الآن بتهيئة البروكسي ، قم بتنفيذ الأمر التالي :
لمزيد من المعلومات راجع موضوع الاستاذ مسلم عادل الذي أشرت له في بداية الموضوع .
أعلم يقيناً أن هذا الشرح مبهم وكان يحتاج الى الكثير من التوضيح ولكن قمت به على عجاله ولم أشرح العديد من الفقرات لعدة أسباب :
1 – أني لا أملك الوقت الكافي .
2 – ﻷني لم أفهم بعض الفقرات وقمت بتطبيقها كما هي خصوصاً ما يتعلق بالآيبي تيبلز .
ختاماً أرجوا من الله العلي القدير أن يكون الشرح قد نال رضاكم واستحسانكم .
أخوكم محمد ،،،
في هذه العجاله سأحاول أن اعرض نقاط سريعة وخفيفة مأخوذة نصأ من الموقع التالي http://www.brennan.id.au/ .
في نهاية هذا الدرس يكون لديك التالي :
1 - جهاز سيرفر يستقبل النت ويقوم بتوزيعه على باقي الأجهزة المتصلة به ( تماماً كما في مقاهي الانترنت .
2 – بروكسي داخلي يعمل على منع أي جهاز من الوصول للشبكة بدون بروكسي ، كما يعمل كاش وذلك لتسريع تصفح النت .
ملاحظة :
1 - فيما يتعلق بموضوع سكويد فقد أخذته من موضوع الاستاذ مسلم عادل .
2 – هذا الموضوع ﻻيغني عن ورشة العمل القائمة حالياً على هذا الرابط .
سأفترض الآتي :
1 – لديك جهاز سأطلق عليه مسمى server عليه كرتين شبكة ، الأول سأطلق عليه external أي خارجي وسيتم الإشارة اليه بالاسم eth0 . الكرت الآخر سأطلق عليه مسمى internal أي داخلي وسيتم الإشارة اليه بالاسم eth1 .
2 – لديك مودم راوتر مرتبط بالسيرفر من خلال كرت eth0 .
3 – لديك سويتش يرتبط بالسيرفر من خلال كرت eth1 .
4 – الشبكة المحلية من الفئة C ورقمها 192.168.1.0/24 .
5 – التوزيعات المقترحة هي Red Hat Enterprise 4 و CentOS 4 .
6 – جميع الأوامر ﻻبد لها من صلاحية المستخدم root .
7 – للتفرقه بين الأمر وناتج الأمر سأقوم بوضع علامة # قبل الأمر .
8 – سأقوم بالشرح على الأوامر أو على محتويات الملف عن طريق <----------
9 – برنامج squid مثبت لديك
10 – يوجد ملف في المرفقات تأكد من تحميله قبل تنفيذ أي خطوة .
ملاحظة قبل البدء :
1 - تأكد من طباعة هذا الشرح أو خفظة على السيرفر لأنه بعد قليل سوف يصبح جهازك بدون انترنت .
2 – تأكد من أنك تملك بيانات مزود خدمة الانترنت ISP مثل اسم المستخدم وكلمة المرور لأننا سنقوم بإزالة الاتصال الحالي من الراوتر .
الخطوة الأولى :
من جهازك السيرفر افتح المتصفح وادخل الى الرواتر عن طريق الرقم 10.0.0.138
تأكد من أن IP يتم تزويده تلقائياً عن طريق DHCP وتأكد من رقم IP الخاص بالكرت eth0 . عندي كان الكرت eth0 يحمل الرقم 192.168.1.64 .
الآن قم بإنشاء اتصال جديد ولكن تأكد من اختيار النوع bridge وليس router أي أن جهازك هو من سيقوم بالإتصال وليس الراوتر وسيكون ذلك عن طريق PPPoE .
من الآن وصاعداً لن يكون بمقدورك الوصل الى صفحة الراوتر ، فإن حصل وأردت يوماً ما تغيير هذه الطريقة والرجوع الى الطريقة القديمة وهي أن جميع الأجهزة تتصل من خلال الراوتر فقم بإحضار عود أسنان واضغط واستمر بالضغط على زر reset الموجود خلف جهاز الراوتر .
إعداد كروت الشبكة :
أولا : طرت الشبكة الداخلي Internal .
افتح التيرمينال واكتب الآتي
كود:
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
كود:
IPV6INIT=no ONBOOT=yes <---- لجعل الكرت يعمل عن اقلاع الجهاز أي بصورة تلقائية USERCTL=no <---- ﻻيمكن للأعضاء تغيير خصائص هذا الكرت أو إيقافه PEERDNS=no TYPE=Ethernet DEVICE=eth1 HWADDR=00:10:b5:12:d1:e5 <----الماك آدريس الخاص بهذا الكرت ، ﻻتقم بتعديله أبداً BOOTPROTO=static <---- الآيبي هنا ثابت NETMASK=255.255.255.0 <---- قناع الشبكة IPADDR=192.168.1.1 <---- رقم الآي بي الخاص بهذا الكرت
قم بحفظ الإعدادات واخرج من الملف .
اكتب التالي :
كود:
# vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=server.example.org <---- اسم الدومين GATEWAYDEV=eth0 <---- البوابة الإفتراضة
ثانياً : كرت الشبكة الخارجي External .
من سطر الأوارم نفذ التالي :
كود:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp <---- تأكد من وضعها على هذه القيمة TYPE=Ethernet USERCTL=no PEERDNS=no IPV6INIT=no <---- ﻻيستخدم الإصدار السادس من الآيبي
كود:
# service network restart
اكتب الآتي لتتأكد من عدم وجود أخطاء
كود:
# tail /var/log/messages
كود:
# chkconfig --level 2345 network on
لتتأكد من حصولك على الآيبيات المطلوبة اكتب
كود:
# ifconfig -eth1 eth1 Link encap:Ethernet HWaddr 00:10:B5:12:D1:E5 inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::210:b5ff:fe12:d1e5/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1619974 errors:0 dropped:0 overruns:0 frame:0 TX packets:2667786 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:154170447 (147.0 MiB) TX bytes:2966509535 (2.7 GiB) Interrupt:3 Base address:0x2800
إضافة البوابة الإفتراضة .
سنقوم الآن بإضافة البوابة الإفتراضية للإنترنت ، في بداية هذا الشرح طلبت منك التأكد من رقم الآيبي الخاص بالكرت eth0 والذي حصل عليه تلقائياً من الراوتر عن طريق DHCP ، هل تتذكره ؟
سنقوم الآن بتنفيذ الآتي :
كود:
# route add default gw 192.168.1.66 dev eth0 <--- اظافة بوابة افتراضية # vi /etc/sysconfig/network < ----- تعديل محتويات الملف NOZEROCONF=yes <------ سنقوم بإضافة هذا السطر ثم احفظ الملف واخرج NETWORKING=yes HOSTNAME=server.example.org GATEWAYDEV=eth0 # service network restart <----- أعادة تشغيل الخدمة # route -n <------ عرض البوابة الحالية Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.66 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 192.168.1.66 0.0.0.0 UG 0 0 0 eth0
إعداد الإتصال :
سنقوم الآن بتهيئة الإتصال عن طريق السيرفر ، قم بتنفذ الآتي :
كود:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=none <------ بهذا سيكون الكرت مجرد عبارة للنت TYPE=Ethernet USERCTL=no PEERDNS=no IPV6INIT=no
وهي اختصار Point-to-Point Protocol over Ethernet . الآن نفذ التالي :
كود:
# vi /etc/sysconfig/network-scripts/ifcfg-ppp0 TYPE=xDSL DEVICE=ppp0 PROVIDER=ppp0 USER='[email protected]' <--------- ضع اسم المسخدم الذي حصلت عليه من مزود الانترنت ONBOOT=yes DEMAND=no USERCTL=no PERSIST=yes PEERDNS=no DEFROUTE=yes ETH=eth0 BOOTPROTO=dialup FIREWALL=NONE PING=. PPPOE_TIMEOUT=80 LCP_INTERVAL=20 LCP_FAILURE=3 CONNECT_TIMEOUT=60 CONNECT_POLL=6 CLAMPMSS=1412 SYNCHRONOUS=no PIDFILE=/var/run/pppoe-adsl.pid IPV6INIT=no
كود:
# vi /etc/ppp/pap-secrets "[email protected]" "ppp0" "YOUR_ISP_PASSWORD
استبدل اسم المستخدم وكلمة المرور بما يتناسب معك . ثم قم بالتالي :
كود:
# chmod 600 /etc/ppp/pap-secrets < ---- تغيير صلاحيات الملف وجعله قابل للتنفيذ # vi /etc/ppp/pppoe-server-options require-pap login lcp-echo-interval 10 lcp-echo-failure 2 # /etc/init.d/network restart # ifconfig ppp0 ppp0 Link encap:Point-to-Point Protocol inet addr:xxx.xxx.xxx.xxx P-t-P:212.162.130.30 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:2596935 errors:0 dropped:0 overruns:0 frame:0 TX packets:1697396 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:2092856536 (1.9 GiB) TX bytes:93449592 (89.1 MiB)
ملاحظة :
عندما وصلت الى هذه النقطة لم تعمل لمبة الانترنت فقمت بفص لخط الهاتف وانتظرت قليلاً ثم قمت بتركيبه مره اخره وأضاءت اللمبة . حقيقة ﻻ أعرف ماهو السبب .
الآن نفذ التالي :
كود:
# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 212.162.130.30 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 <--- gateway 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 212.162.130.30 0.0.0.0 UG 0 0 0 ppp0 <--- gateway
الجدار الناري Firewall .
الفكرة الآن هي أن يقوم iptables بتحويل أي حزمة قادمة من الشبكة الداخليه الى الشبكة الخارجية وبذلك يسمح لباقي الأجهزة بالوصول الى الانترنت .
سيقوم السكريبت التالي بأداء كل هذه المهام عنك ولن تحتاج الى تنفيذه إلا مره واحدة فقط . قم بتحميل الملف من المرفقات .
الآن قم بتنفيذ التالي :
كود:
# sh firewall.sh <---- تنفيذ السكريبت # /etc/init.d/iptables save < ---- حفظ قوانين الأيبي تيبلز الجديدة لكي يتم تطبيقها تلقائياً عند إعادة التشغيل # vi /etc/init.d/iptables IPTABLES_MODULES="ip_conntrack ip_conntrack_ftp" <----- تأكد من هذه القيمة
تهيئة البروكسي Squid Proxy Configure
سنقوم الآن بتهيئة البروكسي ، قم بتنفيذ الأمر التالي :
كود:
# cp /etc/squid/squid.conf /etc/squid/squid.conf.original <--- عمل نسخة من الملف الأصلي # cat /dev/null > /etc/squid/squid.conf <---- مسح جميع محتويات الملف لوضع إعدادات جديدة # nano /etc/squid/squid.conf http_port 3128 visible_hostname server acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 901 # swat acl Safe_ports port 1025-65535 # portas altas acl purge method PURGE acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports acl localnetwork src 192.168.1.0/24 http_access allow localhost http_access allow localnetwork http_access deny all maximum_object_size 1024 MB <--- حجم الكاش تم تحديدة بسعة 1 غيغا ، غيره بما يتناسب معك minimum_object_size 0 KB cache_swap_low 90 cache_swap_high 95 cache_dir ufs /var/spool/squid 2048 16 256 cache_access_log /var/log/squid/access.log refresh_pattern ^ftp: 15 20% 2280 refresh_pattern ^gopher: 15 0% 2280 refresh_pattern . 15 20% 2280
أعلم يقيناً أن هذا الشرح مبهم وكان يحتاج الى الكثير من التوضيح ولكن قمت به على عجاله ولم أشرح العديد من الفقرات لعدة أسباب :
1 – أني لا أملك الوقت الكافي .
2 – ﻷني لم أفهم بعض الفقرات وقمت بتطبيقها كما هي خصوصاً ما يتعلق بالآيبي تيبلز .
ختاماً أرجوا من الله العلي القدير أن يكون الشرح قد نال رضاكم واستحسانكم .
أخوكم محمد ،،،
تعليق