هل سئمت من كثرة الإعلانات التي تغمرك كلما تصفحت الإنترنت أو استخدمت تطبيقًا على هاتفك؟ إليك الحل الأمثل: Pi-hole، وهو بمثابة فلتر DNS ذكي . والأفضل من ذلك، أنك لست بحاجة لتثبيت أي شيء على كل جهاز في منزلك؛ فالنظام يعمل من صميم شبكتك، ويحجب المحتوى غير المرغوب فيه قبل أن يصل إلى شاشتك.
لإعداد هذا النظام، يُعد استخدام Docker الخيار الأمثل اليوم. فبوضع Pi-hole داخل حاوية، تتجنب إثقال نظام تشغيل جهاز الكمبيوتر الخاص بك، وتجعل التحديثات سهلة للغاية، وتستفيد إلى أقصى حد من أجهزتك - سواء كانت Raspberry Pi أو خادمًا قديمًا أو حتى جهازًا افتراضيًا يعمل بنظام Ubuntu أو Debian - دون أي تعارضات في الخدمات.
المتطلبات الأساسية وإعداد الموقع
قبل البدء، تجدر الإشارة إلى أن Pi-hole خفيف للغاية. لتشغيله بسلاسة، تحتاج فقط إلى حوالي 512 ميجابايت من ذاكرة الوصول العشوائي (RAM) وما بين 2 و4 جيجابايت من مساحة القرص. أما بالنسبة لنظام التشغيل، فهو يعمل بكفاءة تامة مع التوزيعات التي تستخدم systemd أو sysvinit، مثل Debian وUbuntu وFedora وRaspberry Pi OS.
تُعدّ الشبكة نقطةً حاسمة. لضمان استقرار النظام، يتطلب Pi-hole عنوان IP ثابتًا . إذا كنت لا ترغب في عناء تهيئة الخادم يدويًا، يمكنك حجز عنوان IP على جهاز التوجيه الخاص بك بحيث يُخصّص دائمًا نفس العنوان للجهاز الذي يستضيف الحاوية.
نشر Pi-hole باستخدام Docker
أسهل طريقة لإعداد ذلك هي عبر ملف docker-compose.yml . تتيح لك هذه الطريقة تحديد جميع الإعدادات دفعة واحدة. من الضروري ربط وحدات التخزين (مثل /etc/pihole و /etc-dnsmasq.d) بالمجلدات المحلية على جهازك المضيف، حتى لا تفقد جميع إعداداتك أو قوائم الحظر عند تحديث صورة الحاوية .
في ملف الإعدادات، انتبه للمنافذ. المنفذ 53 هو أساسي لنظام أسماء النطاقات (DNS) ويجب أن يكون متاحًا. إذا لاحظتَ أن الحاوية لا تعمل، فمن المحتمل أن يكون systemd-resolved أو dnsmasq يستخدمان هذا المنفذ على المضيف. في هذه الحالة، ستحتاج إلى تعطيل الخدمة المتعارضة أو إعداد جسر لإعادة توجيه حركة البيانات.
إذا قررت استخدام Pi-hole كخادم DHCP أيضًا، فتذكر إضافة إمكانية NET_ADMIN في قسم cap_add من compose، ويفضل استخدام وضع شبكة المضيف (network_mode: host) لتجنب مشاكل الاتصال.
الإعداد الأولي وإدارة الوصول
بمجرد تنفيذ الأمر docker-compose up -dسيكون النظام جاهزًا للعمل. للوصول إلى لوحة التحكم، اتصل بعنوان IP الخاص بخادمك عبر المنفذ الذي خصصته (80 افتراضيًا، ولكن يمكنك تغييره إلى 8080 أو 89 لتجنب التعارض مع خوادم الويب الأخرى). إذا لم تُحدد كلمة مرور في متغير البيئة... كلمة مرور الويبسيقوم النظام بإنشاء رقم عشوائي يمكنك العثور عليه من خلال التحقق من السجلات باستخدام الأمر docker logs pihole | grep random.
لزيادة الأمان، يُنصح بتغيير كلمة المرور بسرعة. يمكنك الوصول إلى طرفية الحاوية باستخدام docker exec -it pihole /bin/bash وقم بتشغيل الأمر pihole -a -p أن تقوم بتعيين كلمة مرور يسهل عليك تذكرها ولكن يصعب على الآخرين تذكرها.
تصفية البيانات من المصدر وتحسين نظام أسماء النطاقات (DNS)
لضمان معرفة Pi-hole بالجهة التي يجب الاستعلام منها عند عدم التعرف على عنوان IP، عليك إعداد خادم DNS رئيسي. يُعد Quad9 خيارًا قويًا للغاية ؛ ما عليك سوى تحديد خوادمه المُفلترة (مثل 9.9.9.9) في علامة تبويب إعدادات DNS. يُضيف هذا طبقة إضافية من الأمان والخصوصية لتصفحك.
جوهر Pi-hole يكمن في قوائم الحظر. إذا كنت ترغب في البدء بقائمة قوية، يمكنك إضافة قائمة StevenBlack . عند تعديل القوائم، سواءً بحذف إدخالات باستخدام SQLite3 أو إضافة عناوين URL جديدة، من الضروري الانتقال إلى الأدوات وتشغيل Update Gravity لتحديث قاعدة البيانات وتطبيق التغييرات.
نصائح متقدمة: النطاقات المحلية وإدارتها
إذا كنت تستخدم خدمات متعددة في المنزل، يمكنك إنشاء أسماء النطاقات المحلية لتجنب الحاجة إلى حفظ عناوين IP. للقيام بذلك، أنشئ ملفًا باسم local.list على وحدة تخزين Pi-hole المُثبّتة، حدد عنوان IP وتنسيق النطاق. ثم أنشئ ملف تكوين لـ dnsmasq يشير إلى تلك القائمة وأعد تشغيل الحاوية.
لإدارة النظام دون الحاجة إلى الوصول إلى الموقع الإلكتروني، توجد أوامر مفيدة للغاية يمكنك تشغيلها من الخادم. على سبيل المثال، لإضافة نطاق إلى القائمة السوداء، استخدم الأمر `pihole -b mydomain.com` ، أو لتعطيل التصفية مؤقتًا لمدة 10 دقائق، يمكنك استخدام الأمر `pihole disable 10m` ، وهو أمر مفيد جدًا عند حظر موقع إلكتروني شرعي عن طريق الخطأ.
يُمكنك التحكم الكامل في الإعلانات المنزلية من خلال الجمع بين أجهزة ذات مواصفات متواضعة ومرونة Docker، مع ضمان خلو المنفذ 53، وتكوين وحدات التخزين بشكل صحيح لحفظ البيانات. بعد ضبط نظام أسماء النطاقات (DNS) على جهاز التوجيه الخاص بك وتحسين قوائم Gravity، ستستمتع بشبكة أنظف وأسرع بكثير على جميع أجهزتك.
