نظام Pi-Hole لوقف الإعلانات والمواقع الغير مرغوب بها

نظام Pi-Hole عبارة عن نظام تصفية DNS متكامل. هذا النظام يقوم بوظائف متعددة من أهمها تصفية وتوجيه طلبات DNS للمكان المناسب لها، أو عدم توجيهها بشكل كامل. بكلمات اكثر وضوحا، هذا النظام يسمح لك بعرض أو حظر المواقع من خلال تمرير أو إفشال تمرير استعلامات DNS الخاصة بجهازك.

من الجزء الأول من الاسم يمكنك أن تستنتج أن هذا النظام مخصص لأجهزة Raspberry Pi واكن بشكل عام هو يعمل على أي جهاز لينيكس متوافق معه أو حتى يمكنك تثبيته على أي لينيكس من خلال استخدام دوكير. في هذا المقال لن نستخدم دوكير، ولن نستخدم أنظمة RedHat حيث بعض المستخدمين طلبوا شرح على نظام Ubuntu أو Debian.

مقدمة عن هذا المشروع

في هذا المشروع سوف نتعلم طريقة تثبيت وتشغيل نظام Pi-Hole على لينيكس من خلال البرنامج الأصلي بدون دوكير، وسوف نتطرق لموضوع VPN لربط جهازك الخاص أو هاتفك مع هذا النظام لمنع الإعلانات والمواقع الغير مرغوب بها حتى عتد عدم تواجدك على نفس الشبكة.

المتطلبات

  • جهاز كمبيوتر يعمل بنظام لينيكس. خادم سحابي، أو كمبيوتر مكتبي أو حتى رازبريباي.
  • اتصال ﻹنترنت
  • معرفة بسيطة بلينيكس وسطر الأوامر
  • عنوان IP ثابت. في خادم سحابي سوف تحتاج إلى عنوان خارجي ثابت، وفي جهاز داخلي في منزلك سوف تحتاج إلى عنوان داخلي ثابت.

تثبيت النظام

هنا اختصرت خطوة تثبيت نظام التشغيل. يمكنك العثور على طريقة التثبيت في لينيكس العرب، أو أي مكان آخر على الإنترنت. تأكد من أنك تقوم بتثبيت نسخة حديثة وإياك أن تستخدم أي شيء قديم مهما كان المبرر. هنا، سوف نستخدم نظام Ubuntu 22.04 على خادم سحابي.

يمكنك تثبيت النظام من خلال 3 طرق مختلفة، يمكنك اختيار الطريقة المفضلة لديك. سوف نستخدم الطريقة الأولى في هذا المقال.

الطريقة الأولى:

تنزيل وتثبيت النظام من خلال أمر واحد فقط. قم بتنفيذ الأمر التالي في طرفية الخادم:

curl -sSL https://install.pi-hole.net | bash

الطريقة الثانية:

يمكنك إستنساخ مستودع النظام من GitHub وتشغيل برنامج التثبيت من خلال الأوامر التالية:

git clone --depth 1 https://github.com/pi-hole/pi-hole.git Pi-holecd "Pi-hole/automated install/"sudo bash basic-install.sh

الطريقة الثالثة:

يمكنك تنزيل برنامج التثبيت ومن ثم تشغيله بشكل يدوي:

wget -O basic-install.sh https://install.pi-hole.netsudo bash basic-install.sh

خطوات تثبيت النظام

لا يهم أي طريقة استخدمت، يجب أن ترى التالي في جميع الطرق.

أول شاشة سوف تراها هي شاشة التثبيت التلقائي والتي تعلمك أن التثبيت سوف يبدأ. يجب عليك الضغط على OK للموافقة والمتابعة. بعد ذلك ستواجه شاشة تعلمك بأن هذا البرنامج مجاني ويمكنك التبرع لهم في حال أعجبك. نحن نشجع وبشدة للتبرع للمشاريع التي تستفيد منها وتستخدمها بشكل يومي:

هنا سوف توافق على تنبيه مهم جدا وهو أن الجهاز الذي تعمل عليه يحتوي على عنوان IP ثابت. بدون عنوان ثابت لن تتمكن من العمل بشكل صحيح وقد يتسبب في فقدان الاتصال بالإنترنت بشكل كلي:

في الشاشة التالية يجب عليك إختيار مزود خدمات DNS للعمل من خلاله. لأسرع مزود، قم باختيار CloudFlare أو Google.

وهنا سوف يتم سؤالك عن مزود خدمات حظر الإعلانات. هناك قائمة افتراضية للعمل من خلالها، ولكن يمكنك إضافة ما شئت خلال التثبيت أو بعد ذلك. أنا اخترت القائمة الافتراضية:

هنا يتم سؤالك إذا كنت ترغب في تثبيت لوحة تحكم النظام. أنصح وبشدة أن تقوم بثبيتها حيث أنها تقوم بتسهيل الأمور بشكل كبير جدا:

اللوحة سوف تعمل من خلال php و lighttpd. يجب عليك الموافقة على تثبيت هذه البرمجيات في حال لم يكن لديك خطط أخرى مثل استخدام Litespeed على سبيل المثال:

هناك يتم سؤالك إذا ما كنت ترغب في تفعيل تسجيل استعلامات DNS. هذا الاختيار يقوم بتفعيل تسجيل جميع النطاقات التي تم طلبها خلال التصفح:

هنا يمكنك اختيار درجة تفصيل السجلات. يمكنك اختيار ما بين تسجيل كل شيء إلى تعمية كل شيء:

بعد الانتهاء من الإجابة على الأسئلة، يمكنك انتظار نظام التثبيت أن ينتهي من عمله بشكل كامل. عند الانتهاء سيتم تزويدك بعنوان النظام وكلمة مرور مدير النظام:

استخدام النظام

من أسهل الطرق التي ستقوم بها هي استخدام عنوان IP الخادم. يمكنك وبكل سهولة ضبط جهاز الكمبيوتر الخاص بك لاستخدام عنوان الخادم سواء كان على شبكة محلية أو شبكة خارجية. مثال:

لتطبيق الإعدادات على جميع الأجهزة المرتبطة في الشبكة الخاصة بك، يمكنك ضبط جهاز التوجيه (الراوتر) لاستخدام مزود DNS الخاص بك. بهذا الشكل ستعمل الإعدادات مع جميع الأجهزة بدون أي خطوات إضافة لأي جهاز جديد يرتبط بالشبكة.

لاحظ، عند الربط مع خادم في شركة خارجية، سيتم رفض الاتصال وسوف تفقد الاتصال بالإنترنت:

يمكنك التغلب على هذه المشكلة بطريقتين،الطريقة الأسهل هي استخدام VPN للخادم الهدف وهذا يشمل منزلك الخاص، ولكن للأسف في المناطق التي تعاني من تدني جودة الإنترنت سيكون هذا الحل سيئ جدا حيث أن سرعة الإنترنت ستكون مرتبطة دائمة بسرعة التحميل المسموحة لك في المنزل. بالتالي أنا وعلى الرغم من الخطر الأمني، أُفضّل ضبط الخادم ليقبل الاتصالات من الشبكات الخارجية.

ضبط النظام لقبول الاتصالات الخارجية

قبل المباشرة في هذا الموضوع، يجب أن يكون لديك عنوان IP خارجي ثابت. بدونه، المتابعة ستكون صعبة جدا. أحد أبسط الطرق لاستخدام هذه الطريقة هي استخدام خادم سحابي يحمل عنوان ثابت. أنا أستخدم خدمات AWS حيث أنهم يوفرون خوادم قريبة من مكان سكني ويقدمون خوادم يصل سعرها إلى 3 دولار أمريكي.

يمكنك ضبط النظام للرد على أي استعلام خارجي أو داخلي من خلال الضغط على Settings ثم اختيار DNS ومن هناك في Interface settings يمكنك تحديد الاختيار Permit all origins ومن ثم الضغط على زر الحفظ في الأسفل.

بعد الحفظ، يمكنك أن تشاهد أن النظام بدأ العمل بالفعل، وستجد أن معظم المواقع التي تزورها خالية من الإعلانات!

منع المواقع الإباحية

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

أحد أفضل قوائم الحظر التي وجدتها موجودة على الرابط التالي:
https://raw.githubusercontent.com/chadmayfield/my-pihole-blocklists/master/lists/pi_blocklist_porn_all.list

وهي تحتوي على عدد ضخم جدا من المواقع الإباحية. لتثبيت هذه القائمة في الخادم الخاص بك، يمكنك إتباع الخطوات التالية:

1- قم بالضغط على group management

2- قم باختيار Adlist

3- قم بلصق الرابط في خانة Address ثم قم بالضغط على Add

بعد إضافة الرابط، يمكنك الآن العودة إلى الطرفية وتنفيذ الأمر التالي لتحديث قوائم الحظر:

pihole -g

لاحظ أن عدد المواقع المحظورة الآن يتعدى اثنين مليون نطاق.

الخاتمة

في هذا المقال قمنا بتثبيت خادم DNS خاص بنا سواء في السحابة أو الشبكة المحلية. هذا الخادم يستخدم في حظر الإعلانات والمواقع الإباحية بكل سهولة وبدون أي تعقيد.

تعمدت في هذا المقال عدم الكتابة عن تثبيت VPN نظراً لأن الموضوع غير عملي في الدول العربية بسبب تدني سرعات الإنترنت مع بعض الاستثناءات طبعا. سأقوم بعمل موضوع مستقل عن هذا الموضوع وسأقوم بالكتابة عن ربط VPN مع Pi-Hole بشكل تلقائي بدون أي تدخل من طرفك.

لاحظ أن استخدام هذا النظام قد يحد من قدرتك على استخدام بعض الخدمات عبر الإنترنت. على سبيل المثال، الضغط على الروابط التي تراها في إعلانات محرك البحث جوجل لن تعمل ولن ترى الموقع الأصلي. بعض البرامج والألعاب التي تكافئك على مشاهدة الإعلانات لن تعمل بالشكل الصحيح.

رابط موقع النظام:

https://pi-hole.net/

رابط توثيق النظام:

https://docs.pi-hole.net/

ما رأيك بما سبق؟ هل لديك أي استفسار؟؟ في حال كان لديك أي تعليق أو استفسار، يمكنك ترك تعليق بالموضوع.