אולי אתה מטריד על ידי פרסומות קופצות בעת קריאת מאמר באתר. עם כל הפרסומות האלה, איך ניתן לחסום אותן? התקן את Pi-hole ב-Docker, והשתמש ב-Pi-hole כחוסם פרסומות ברחבי הרשת ושפר את ביצועי הרשת שלך.
במדריך זה, תלמד כיצד להקין ולהפעיל את Pi-hole בתוך תוכניית Docker כדי לחסום פרסומות ואתרים. נשמע מרגש? קרא הלאה כדי לדעת יותר!
דרישות מוקדמות
מדורג בצורת מצגת ידיים. אם ברצונך לעקוב, וודא שיש לך את התכנים הבאים:
- – Docker מותקן על Windows 10 (אך יעבוד על כל מערכת הפעלה נתמכת).
- A Windows 10 PC – This tutorial uses Windows 10 OS Build 19042.1165.
יצירת שני כריות דוקר עמידות
בעת הגדרת Pi-hole בתוך תוכנית Docker, תצטרך תחילה ליצור כרית דוקר כדי לאחסן את יישום Pi-hole ותצורת ה-DNS.
פתח PowerShell כמנהל מערכת, ואז הרץ את הפקודות למטה עבור Docker כדי ליצור שני כרכים (volume create
) בשמות pihole_app
ו-dns_config
. תוכל גם לשנות את השמות לפי העדפתך.
לאחר מכן, אמת כי נוצרו הכרכים של Docker בהצלחה על ידי הרצת הפקודה הבאה אשר מציגה את כל הכרכים של Docker הזמינים במחשב שלך.
למטה, תראה שני כרכים שנוצרו חדשים בשמות pihole_app
ו-dns_config
.

הפעלת Pi-hole במכולת Docker עם משתני סביבה
כעת, כאשר יש לך שני כרכים קבועים זמינים, אתה מוכן להריץ מכולת Docker באמצעות תמונת הבסיס של Pi-hole. אבל תחילה, תצטרך לשים לב לכתובת ה-IP המקומית שלך.
הרץ את הפקודה למטה כדי לקבל את כתובת ה-IP המקומית שלך. כתובת ה-IP המקומית שלך נחוצה כדי להריץ את הפקודה היחידה של Docker כראוי.
לאחר מכן, הרץ את הפקודה למטה כדי למשוך את תמונת הבסיס pihole/pihole
מ-Docker hub. החלף את הערכים בהתאם באמצעות הטבלה למטה כמקור ההתייחסות שלך. הטבלה למטה מסבירה את מטרת כל דגל של הפקודה.
דגלי פקודת Docker של Pi-hole
Command Flags | Definition |
—name=pihole | Names a Docker container as pihole. There will be an error if a container with the same name already exists on your machine |
-e TZ=Asia/Manila | Environment variable for time zone. Asia/Manila was used for this tutorial, but you can input anything that has the same format listed in on a GitHub gist. |
-e WEBPASSWORD=password | Sets a password for the Pi-hole interface. |
-e SERVERIP=YourIPAddressHere | Set your IP address for the Docker container. You will use this again later for making Pi-hole work. |
-v pihole_app:/etc/pihole | Mounts the volume pihole_app and use subdirectory /etc/pihole for storing the Pi-hole files |
-v dns_config:/etc/dnsmasq.d | Mounts the volume dns_config and use subdirectory /etc/dnsmasq.d for storing DNS configurations as required. |
p 81:80 -p 53:53/tcp -p 53:53/udp | Maps the ports of host machine to the ports of the Docker container (port 81 in host machine maps to port 80 of Docker container) |
—restart=unless-stopped | Sets a restart policy so the Docker container always restarts unless it is manually stopped by the user. |
pihole/pihole | Tells the docker run command to use the official pihole/pihole base image from Docker hub. |
במטה, ניתן לראות את הפקודה שמושכת את הדמות הבסיסית של pihole/pihole
מDocker Hub. לאחר שהדמות של pihole/pihole
יורדת למכונה שלך, הפקודה ממשיכה באופן אוטומטי וממשיך את הפרמטרים שהגדרת בפקודה.

לאחר שמשכת את הדמות הבסיסית של pihole/pihole
, תראה פלט כמו בדוגמה למטה, המציין שכבר תוכל להפעיל את לוח המחוונים של Pi-hole מתוך הקונטיינר.

גישה לממשק הרשת של Pi-hole
כאשר הקונטיינר שיצרת פועל, תוכל כעת לגשת ללוח המחוונים של Pi-hole. לוח המחוונים הוא ממשק גרפי שמאפשר לך להגדיר אילו מודעות לחסום, באמצעות הרשימה השחורה שלך או באמצעות רשימות שחורה מתוך הקהילה.
נווט אל http://localhost:81 בדפדפן שלך מאחר ושמפת בקודם יצרת פורט 81
של מכונת המארח לפורט 80
של הקונטיינר של Docker. בעקבות כך, דפדפן האינטרנט שלך מפנה אותך לדף של לוח המחוונים של Pi-hole.
אם הגדרת פורט שונה בזמן שהרצת את הפקודה הקודמת של
docker
, שנה את הפורט לגישה ללוח המחוונים של Pi-hole. לדוגמא, http://localhost:n, כאשר 'n' מייצג את מספר הפורט.
עכשיו, התחבר ללוח המחוונים של Pi-hole עם הסיסמה שהגדרת כשהרצת את פקודת docker
בקטע "הפעלת קונטיינר Docker של Pi-hole עם משתני סביבה". למדריך זה, הסיסמה היא "password" (בלעדי ציטוטים).

כפי שאתה רואה למטה, תיק ה-Pi-hole אינו חוסם פרסומות בצורה פעילה ונמצא במצב המתיר פעולה, מחכה למה שהוא קורא "שאילתות" או בקשות פרסומת להערכה.

כדי לכוון את שרת ה-DNS של המארח לכתובת ה-IP של Pi-hole
עם שרת Pi-hole רץ, איך תחל לחסום פרסומות במערכת המקומית שלך? עליך להודיע למערכת המקומית שלך להפנות את כל הבקשות לכתובת ה-IP של Pi-hole ולחסום כל פרסומות שתואמות. קרא הלאה כדי ללמוד איך!
1. לחץ ימנית על אייקון ההגדרות של הרשת בסטריי של מערכת החלונות ובחר פתח הגדרות רשת ואינטרנט כדי לראות את רשימת כל מתאםי הרשת במכונה שלך.

2. לאחר מכן, לחץ ימנית על מתאם הרשת שלך ובחר מאפיינים. חלון הגדרות מתאם הרשת שלך יופיע.

3. בחר גרסת פרוטוקול האינטרנט 4 (TCP/IPv4) מתוך הרשימה מתחת ללשונית רשת, ולאחר מכן ללחוץ על הכפתור מאפיינים.

4. הגדר את פרטי IPv4 כדלקמן:
- בחר באפשרות השתמש בכתובת ה-IP הבאה כדי להגדיר כתובת IP סטטית. השמה של כתובת IP סטטית למכונת המארח מאפשרת למכשירים אחרים להתחבר ולהשתמש בחוסם הפרסומות. השער הברירת מחדל של הנתב יתקבל בהתאם להגדרות ספק שירות האינטרנט שלך במדינה שלך.
- בחר את האפשרות השתמש בכתובות שרת DNS הבאות כדי להגדיר את שרת ה-DNS שלך, והוסף שרת DNS בשדה שרת DNS מועדף. הזן את כתובת ה-IP של שרת ה-Docker שהגדרת בפקודת
docker
הקודמת תחת הקטע "הרצת תכונות סביבה של תכונות Pi-hole Docker". - הוסף שרת חלופי כמו שרת Google 8.8.8.8 בשדה שרת DNS חלופי, ולחץ אישור. השרת DNS החלופי משמש כשרת DNS במקרה ששרת ה-Docker של Pi-hole נופל מסיבה מסוימת. באפשרותך להעניק ערך אחר לשרת DNS החלופי שאתה מעדיף.

הגדרת DNS של מכשיר יחיד
בהנחה שיש לך טלפון סלולרי או כל מכשיר אחר מחובר לאותו רשת, באפשרותך לכוון את שרת ה-DNS של המכשיר ההוא כך שיתאים לכתובת ה-IP של המארח. במדריך זה, טלפון סלולרי מחובר לאותה רשת.
1. בהגדרות רשת האלחוטית של הטלפון הסלולרי, הקש על ידני והזן את כתובת ה-IP של מכונת המארח. באפשרותך גם להוסיף כתובות IP אלטרנטיביות במקרה ש-Pi-hole נכשל.
ממשקי הגדרות רשת אלחוטית בסמארטפונים שונים אחד מהשני.

2. עכשיו בקר באתרים אשר מכילים הרבה פרסומות בדפדפן האינטרנט של הסמארטפון שלך.
עבור דוגמה זו, אתרי Daily Mail ו-New York Times נכנסו מספר פעמים למשך 5-10 דקות. ממשק הניהול החי בדף המסחרי של Pi-hole מציג את מספר הפרסומות שחוסמות מהמכשיר, כפי שמוצג למטה.
טבלאות העמודות הן הוספה אחרונה לגרסה האחרונה של Pi-hole בעת כתיבת המאמר. גרסאות ישנות יכולות להציג גרפים שונים במקום זה.

הפעלת חסימה ברשת הבית דרך הגדרות ה-Router
במקום להגדיר שרת DNS על מכשיר יחיד, כדאי לנסות להגדיר שרתי DNS עבור כל המכשירים בהגדרות ה-Router שלך. תלוי בסוג ה-Router שלך, ייתכן ויהיה אפשרות להשתמש בכתובת ה-IP.
לדוגמה, ה-Router בדמו לא איפשר גישה לשינוי שרתי DNS ו-DHCP. לכן, לא נעמיק ברשת הבית באופן מלא במהלך זה עקב הגבלות ה-Router.
בתצוגה כללית של מנהל, ייתכן שיהיה אפשרות לקודד את כתובת ה-IP של שרת ה-DNS באותו אופן שנעשה במכשיר יחיד. הדמו הזה משתמש ב-Router של Prolink PRS1841U-v2 שנעוץ לספק שירות רשת.
ממשק הקונפיגורציה של DNS ישתנה מ-Router ל-Router, אך ההגדרות יכולות להיראות דומות לכאלו שמוצגות למטה.

ניתן גם להשבית את שרת ה-DHCP בנתב ולהפעיל את שרת ה-DHCP ב-Pi-hole במקום. ב-דיון דוגמא בקהילת Pi-hole מוצג זאת בפרטים נוספים.
חסימת אתרים דרך לוח הבקרה של Pi-hole
ההתקנה ברירת המחדל של Pi-hole חוסמת באופן ברירת מחדל כ-92,725 אתרים, אך ניתן גם להוסיף עוד אתרים דרך רשימות שחור של Pi-hole ורשימות שמשתמשי Pi-hole משתפים.
1. שמור את האתרים שברצונך לחסום בקובץ טקסט בשם שאתה מעדיף. לדוגמה, הקובץ נקרא blocklist.txt.
2. הפעל את הפקודה של docker
להעתקת הקובץ blocklist.txt (cp blocklist.txt
) לנתיב הנפרד של ה-Docker בקובץ בשם blacklist.txt. שמור על הקובץ blacklist.txt בנתיב ה-Docker כך ש-Pi-hole יזהה אותו אוטומטית.
3. לבסוף, נווטו שוב ללוח הבקרה המנהל של Pi-hole. לחצו על תפריט הכלים בפאנל השמאלי ואז על הקישור "עדכון כביכול" (Update Gravity). לבסוף, לחצו על "עדכון" (Update) כדי לקבל רשימת כתובות URL מעודכנת לחסום ב-Pi-hole.

A successful update will look like the one below.

עדכון רשימת החסימה של אתרי האינטרנט דרך הקונסולה
אולי תעדיפו להריץ פקודות קונסולה במקום לנווט בלוח הבקרה של Pi-hole. אם כן, תוכלו להריץ פקודת דוקר ב-PowerShell כדי לחסום אתרי אינטרנט. הריצו את הפקודה docker exec
למטה כדי ליצור משימת טרמינל אינטראקטיבית לקונטיינר ה-Docker pihole_app
, שמאפשרת הרצת פקודות.
לאחר שהמשימה בטרמינל נפתחה, הריצו את הפקודה למטה כדי לעדכן את הרשימה השחורה של Pi-hole של כתובות URL.
הריצו מחדש את
pihole -g
מדי פעם כדי שחוסם הפרסומות שלכם יישאר מעודכן.
חסימת אתרים דרך רשימות החסימה של הקהילה
כמה מכתובות ה-URL המיועדות לעדכון באופן קבוע על ידי תורמיהן, וכמה לא, לכן העלאת רשימה שחורה מרשימה ישנה עשויה שלא לשקף את השינויים האחרונים.
השתמשו ביכולות ניהול קבוצת החסימה של Adlist של Pi-hole. בלוח הבקרה של Pi-hole, לחצו על ניהול קבוצה → רשימות חסימה בתפריט השמאלי, ואז לחצו על הוספה כדי לבחור ברשימת ה-URL שברצונכם להוסיף ל-Pi-hole.

סיכום
שיעור זה, למדת איך להוריד תמונת Docker של Pi-Hole, לבדוק את ממשק האינטרנט הפעיל של Pi-Hole, ולבדוק התקנה חיצונית המתחברת ל-Pi-Hole. למדת גם כיצד לחסום פרסומות ואתרים, וראית את לוח המחוונים של Pi-Hole בפעולה בעת חסימתם.
עם הידע הזה, למה לא להשתמש בכל מחשב מארח כדי לחסום פרסומות למכשירים מחוברים אחרים באותה רשת?