กลับไปหน้ารวมไฟล์
ad-blocker-35e83d.md

Ad Blocker

เกี่ยวกับโปรเจกต์นี้

คุณคงเบื่อโฆษณาตลอดเวลาใช่ไหม แต่คุณรู้หรือไม่ว่าคุณสามารถเปลี่ยน pi ของคุณให้เป็น network wide ad blocker ได้?

การติดตั้งซอฟต์แวร์

คุณสามารถติดตั้งซอฟต์แวร์ได้โดยใช้คำสั่งต่อไปนี้:
curl -sSL https://install.pi-hole.net | bash 
ห้ามคลิกลิงก์! ตัวติดตั้ง pi-hole จะแนะนำคุณไปทีละขั้นตอน ใช้ปุ่มลูกศรเพื่อเลือก และ Space bar เพื่อยืนยัน ผมแนะนำให้คุณเลือกตัวเลือกที่แนะนำหรือค่าเริ่มต้น เมื่อระบบถามหา Upstream DNS Provider ผมแนะนำ Cloudflare หรือ Google เนื่องจากเป็นผู้ให้บริการ DNS ที่น่าเชื่อถือที่สุด
คุณอาจจะถูกถามให้ตั้งรหัสผ่านด้วย จดไว้ด้วย มันสำคัญมาก

การตั้งค่าบนเครือข่ายของคุณ

ตอนนี้ ให้ไปที่ admin portal ของ router ของคุณ ไปที่ส่วนที่กล่าวถึง DHCP หรือ DNS ภาพหน้าจอ:
เมื่อคุณตั้งค่า DNS เรียบร้อยแล้ว ไปที่หน้า admin. page กันต่อเลย

คำสั่ง Admin

ไซต์นี้: (แทนที่ เครื่องหมาย คำถาม ด้วย ip ของ pi.)
 ???.???.?.???/admin
คุณจะเห็นหน้าจอหนึ่ง ซึ่งตอนนี้จะยังไม่แสดงข้อมูลจริง เริ่มด้วยการคลิก login ป้อนรหัสผ่านที่คุณได้มาในขั้นตอนแรก หากคุณลืมรหัสผ่าน ให้ตั้งใหม่ด้วยคำสั่ง:
sudo pihole -a -p
คุณจะเห็นหน้าจอที่คล้ายกับหน้าจอก่อนหน้านี้ แต่มีคำสั่งให้เลือกใช้งานมากขึ้น ถัดไป ผมจะแสดงคำสั่งบางส่วนที่คุณสามารถใช้กับ pi ได้
  • Query Log – Query log จะแสดง queries ล่าสุดทั้งหมดที่ถูกส่งไปยัง DNS server เป็นวิธีง่ายๆ ในการค้นหา address ล่าสุดที่อาจถูกโหลดและเพิ่มลงใน blacklist
  • Whitelist – หน้านี้ให้คุณเพิ่มชื่อ domain บางรายการลงใน whitelist ของ Pi-hole โดย whitelist นี้หมายความว่าเว็บไซต์เหล่านั้นจะไม่ถูกบล็อกโดย DNS server อีกต่อไป อย่างไรก็ตาม หาก domain นั้นถูกบล็อกโดย wildcard มันก็จะยังคงถูกบล็อกอยู่ดี
  • Blacklist – หน้านี้ให้คุณเพิ่มชื่อ domain บางรายการลงใน blacklist ของ Pi-hole ซึ่งหมายความว่าเว็บไซต์เหล่านั้นจะถูกบล็อกโดย DNS server
  • Disable – ตัวเลือกเหล่านี้ให้คุณปิดใช้งานฟังก์ชันการบล็อกของ Pi-hole ชั่วคราวหรือถาวร โดยจะยังคงทำงานเป็น DNS server ปกติในขณะที่ถูกปิดใช้งาน แต่จะไม่บล็อก DNS requests อีกต่อไป

เครื่องมือ

  • Update Lists – เครื่องมือนี้ให้คุณเรียกการอัปเดตของ ad blocking lists ซึ่งมีประโยชน์ในการทำให้แน่ใจว่าคุณกำลังใช้งาน ad block lists เวอร์ชันล่าสุด
  • Query Adlists – เครื่องมือนี้ให้คุณตรวจสอบว่า URL บางรายการถูกรวมอยู่ใน ad blocking lists หรือไม่ ซึ่งมีประโยชน์สำหรับการตรวจสอบว่าทำไม URL บางรายการอาจถูกบล็อก
  • Tail pihole.log – เครื่องมือนี้แสดงบรรทัดสุดท้ายของไฟล์ pihole.log และอัปเดตแบบ real-time ซึ่งมีประโยชน์สำหรับการตรวจสอบว่า Pi-hole กำลังทำอะไรกับ requests
  • Settings – ส่วนนี้ประกอบด้วยการตั้งค่าที่สามารถกำหนดค่าได้ ซึ่งช่วยให้คุณสามารถเปลี่ยนวิธีการทำงานของ DNS ของคุณ ผู้ให้บริการ upstream DNS ที่คุณต้องการใช้ และตัวเลือกอื่นๆ อีกมากมาย คุณยังสามารถเปิดใช้งาน DNSSEC ในตัวเลือกได้ด้วย

สำหรับผู้ใช้ทั่วไป คุณไม่จำเป็นต้องเปลี่ยนตัวเลือกเหล่านี้ เว้นแต่คุณจะทำผิดพลาดในการติดตั้งครั้งแรก

ปิดท้าย

เนื่องจากนี่เป็นโปรเจกต์แรกของผมกับ pi โปรดแสดงความคิดเห็นหากคุณพบข้อผิดพลาด ขอให้สนุก!

รายละเอียดทางเทคนิคเพิ่มเติม

สถาปัตยกรรม Local DNS Sinkhole

โปรเจกต์นี้แสดงให้เห็นถึงวิธีใช้ระบบ embedded Linux (เช่น Raspberry Pi หรือ Arduino ที่ติดตั้ง Raspbian) เพื่อบล็อกโฆษณาครอบคลุมทั้งเครือข่าย

  • การกรอง DNS Request: ระบบทำหน้าที่เป็น DNS server ของเครือข่าย ทุกครั้งที่อุปกรณ์พยายามโหลด "Ad Server" (เช่น doubleclick.net) ระบบจะดักจับ request และส่งคืน address "Null" (0.0.0.0)
  • ศูนย์รวมฐานข้อมูล Blacklist: ใช้ฐานข้อมูลขนาดใหญ่ที่จัดเก็บในเครื่องของ domain ที่เป็น ad-serving ที่รู้จัก สิ่งนี้จะ "บล็อก" โฆษณาภายในแอป เว็บไซต์ และอินเทอร์เฟซสมาร์ททีวีได้อย่างมีประสิทธิภาพ โดยไม่จำเป็นต้องใช้ browser extensions แยกต่างหาก

ประสิทธิภาพ

  • การเพิ่มประสิทธิภาพ Latency ทั่วทั้งเครือข่าย: ด้วยการ resolve DNS requests ในเครื่องและหลีกเลี่ยง ad trackers ที่หนักหน่วง โปรเจกต์นี้สามารถปรับปรุงความเร็วในการท่องเว็บโดยรวมและลดการใช้ข้อมูลสำหรับทุกคนที่เชื่อมต่อ WiFi ได้จริง

ข้อมูล Frontmatter ดั้งเดิม

title: "Ad Blocker"
description: "This will turn your Raspberry Pi into a network-wide ad blocker!"
author: "24Ishan"
category: ""
tags:
  - "tracking"
  - "monitoring"
views: 6077
likes: 1
price: 79
difficulty: "Easy"
components:
  - "1x Raspberry Pi 3 Model B"
  - "1x Ethernet Cable, Cat6a"
  - "1x Flash Memory Card, MicroSD Card"
  - "1x 9V 1A Switching Wall Power Supply"
tools: []
apps:
  - "1x Raspbian"
downloadableFiles: []
documentationLinks: []
passwordHash: "0ebecfcb7ccc0aba759668f9ee1f3af16158231f2b57d40d39f7753e63bb8f8d"
encryptedPayload: "U2FsdGVkX19GTfeOqKvVpLdKCWBgztMHWq0o/bE00ujTkmRzQVHRdK6nnASf2YwuO3Ynjz0my2PUEzr9fJ+3Mg=="
seoDescription: "Turn your Raspberry Pi into a powerful network-wide Ad Blocker."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/ad-blocker-35e83d_cover.jpg"
lang: "th"