Computer >> คอมพิวเตอร์ >  >> ระบบเครือข่าย >> อินเทอร์เน็ต

Pi-Hole - สามเหลี่ยม DNS

อินเทอร์เน็ตสมัยใหม่เป็นสถานที่ที่ค่อนข้างน่ารำคาญ บ่อยครั้งที่กิจกรรมที่ไร้เดียงสา เช่น การอ่านข้อความหรือดูวิดีโอถูกขัดจังหวะด้วยข้อความโปรโมตที่รู้จักกันในชื่อโฆษณา สิ่งนี้จะไม่เป็นปัญหาหากโฆษณามีความเกี่ยวข้อง ถูกจังหวะเวลา หรือไม่ล่วงล้ำ แต่แม้จะมี "ความก้าวหน้า" อย่างมากในด้านปัญญาประดิษฐ์ การเรียนรู้เชิงลึก และคำศัพท์อื่นๆ แต่ก็ไม่เป็นเช่นนั้น จากนั้น เราก็มีความเป็นส่วนตัวและอะไรก็ตาม

การต่อสู้ระหว่างผู้ให้โฆษณาและผู้บล็อกโฆษณาดำเนินต่อไป นอกจากนี้ยังทวีความรุนแรงขึ้นอย่างช้าๆ เนื่องจากมีผู้คนจำนวนมากขึ้นที่ต่อต้านรูปแบบโฆษณาแบบอินเยอร์เฟซที่ก้าวร้าว ส่วนใหญ่แล้ว หากคุณใช้ส่วนขยายการปิดกั้นโฆษณาในเบราว์เซอร์ของคุณ คุณก็พร้อมแล้ว แต่แล้วคุณก็อยู่ในความเมตตาของบริษัทเบราว์เซอร์และสิ่งที่พวกเขาอนุญาต อีกทั้งสิ่งนี้อาจใช้ไม่ได้กับทุกเบราว์เซอร์และ/หรือระบบปฏิบัติการเสมอไป วิธีแก้ไขคือบล็อกคำขอเครือข่ายที่ส่งไปยังเซิร์ฟเวอร์โฆษณาให้เสร็จสิ้น และนี่คือสิ่งที่ Pi-Hole ทำ มาทบทวนกัน

Pi-Hole - สามเหลี่ยม DNS

เริ่มต้นใช้งาน

Pi-Hole เป็นหลุมดำสำหรับผู้โฆษณาทางอินเทอร์เน็ต เป็นชุดเครื่องมือซอฟต์แวร์ที่จะบล็อกคำขอ DNS ที่ส่งไปยังโดเมนที่ระบุว่ามีการแสดงโฆษณา ดังนั้นเซสชันการท่องเว็บของคุณ - หรือกิจกรรมที่เชื่อมต่ออินเทอร์เน็ตสำหรับเรื่องนั้น - จะไม่รวมโฆษณาใดๆ นี่คือโซลูชันระดับเครือข่าย ดังนั้น จึงควรใช้ได้กับทุกสถานการณ์ ประโยชน์ที่นอกเหนือจากการลดเสียงรบกวน ยังรวมถึงปริมาณการจราจรที่ลดลง ความเป็นส่วนตัวที่ดีขึ้น และอื่นๆ อีกมากมาย

สิ่งนี้ทำให้ฉันรู้สึกทึ่งและตัดสินใจติดตั้ง Pi-Hole โดยทั่วไปแล้ว Pi-Hole ได้รับการออกแบบเพื่อใช้เป็นอุปกรณ์ ตามชื่อของมัน คุณอาจต้องการใช้อุปกรณ์ Raspberry Pi ราคาถูก ติดตั้ง Pi-Hole บนอุปกรณ์ จากนั้นใช้เป็นตัวกรองเครือข่ายของคุณ ปัญหาหมายเลขหนึ่งอยู่ในนั้น - คุณต้องมีความเข้าใจเกี่ยวกับระบบเครือข่ายเพื่อให้สามารถกำหนดค่า Pi-Hole ได้อย่างถูกต้อง โดยรวมแล้ว โซลูชัน Pi-Hole ที่สมบูรณ์ครอบคลุม:

  • การตั้งค่าอุปกรณ์ที่จะเรียกใช้ซอฟต์แวร์ Pi-Hole - สามารถเป็นระบบเฉพาะบนเครือข่ายของคุณ หรือคุณสามารถกำหนดค่า Pi-hole บนเครื่องใดๆ ที่ใช้ Linux ก็ได้ ตัวอย่างเช่น หากคุณมีแล็ปท็อปหรือเดสก์ท็อป Linux สองเครื่อง แต่ละเครื่องอาจเป็นตัวกรองเครือข่ายของตัวเอง
  • ขั้นตอนต่อไปคือการกำหนดค่า Pi-Hole เป็นเซิร์ฟเวอร์ DNS โดยพื้นฐานแล้ว เราเรียกดูโดยใช้ชื่อโดเมนมากกว่าที่อยู่ IP มนุษย์พบว่าการจำบางอย่างเช่น dedoimedo.com หรือ example.com ง่ายกว่าการเรียงลำดับตัวเลขอย่างเช่น 1.2.3.4 หรือเหมือนกัน สิ่งนี้ทำได้ผ่านบริการแก้ปัญหาระบบชื่อโดเมน (DNS) ซึ่งทำการแปลจากชื่อที่มนุษย์อ่านได้ไปเป็นตัวเลข Pi-Hole สามารถใช้กฎการกรองได้ ณ จุดนี้ - หากระบุคำขอไปยังที่อยู่ซึ่งถือว่าเป็นของผู้โฆษณาทางอินเทอร์เน็ตรายใดรายหนึ่ง ก็สามารถละทิ้งคำขอนี้ และเนื้อหาดังกล่าวจะไม่ถูกแสดง แน่นอนว่าสิ่งนี้อาจรวมถึงผลบวกลวงด้วย
  • ขั้นตอนสุดท้ายคือการกำหนดค่าระบบอื่นๆ ให้ใช้ Pi-Hole เป็นเซิร์ฟเวอร์ DNS - ย้ำอีกครั้งว่าสิ่งนี้ต้องใช้ความรู้ด้านเครือข่าย แต่สิ่งนี้ใช้ได้กับทุกระบบปฏิบัติการ แม้ว่าอุปกรณ์ Pi-Hole จะต้องเป็น Linux แต่เครื่องใดๆ ก็สามารถเปลี่ยนการกำหนดค่า DNS เพื่อใช้อุปกรณ์นั้นได้ และจากจุดนั้น Pi-Hole จะเป็นคนกลางในการกรองคำขอของเครือข่าย

ดังนั้นคุณต้องจำไว้ว่าทั้งหมดข้างต้นต้องใช้ความเชี่ยวชาญ คุณไม่สามารถเพียงแค่เสียบ 'n' เล่นวิธีแก้ปัญหาในลักษณะนี้ในการตั้งค่าของคุณ แต่ถ้าคุณมีเพื่อนเนิร์ด พวกเขาอาจจะทำสิ่งนี้ให้คุณได้ ว่ามันง่ายหรือซับซ้อนเพียงใด เรามาดำเนินการต่อ

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

ฉันดาวน์โหลดสคริปต์และเรียกใช้ คุณได้รับตัวช่วยสร้างแบบข้อความที่ค่อนข้างง่ายในการปฏิบัติตาม ฉันเรียกใช้สิ่งนี้บน KDE Neon และติดตั้งเฉพาะซอฟต์แวร์จากที่เก็บข้อมูลระบบ นอกเหนือจากส่วนประกอบของตัวเอง ซึ่งมาจาก GitHub

Pi-Hole - สามเหลี่ยม DNS

Pi-Hole - สามเหลี่ยม DNS

Pi-Hole - สามเหลี่ยม DNS

คุณต้องบอก Pi-Hole ว่าจะใช้ DNS ใด ตัวอย่างเช่น คุณสามารถใช้เราเตอร์ของคุณเอง ซึ่งโดยปกติแล้วเป็นสิ่งที่ระบบ Linux จะใช้ เช่น 192.168.1.1 หรือ 192.168.2.1 หรือคล้ายกัน สิ่งต่าง ๆ เข้าใจยากขึ้นเล็กน้อยเมื่อ systemd เข้าที่แล้ว แต่เราจะไปถึงที่นั่น คุณยังมีตัวเลือกในการใช้ DNS อินเทอร์เน็ตที่มีอยู่บางส่วน (เช่น Google หรือ CloudFlare) ฉันตัดสินใจที่จะเริ่มต้นด้วยการตั้งค่าแบบกำหนดเองของฉัน

Pi-Hole - สามเหลี่ยม DNS

เช่นเดียวกับตัวบล็อกโฆษณา Pi-Hole ใช้รายการเพื่อบล็อกโฆษณา นี่เป็นจุดเชื่อมโยงที่แข็งแกร่งที่สุดและเป็นจุดอ่อนที่สุดของโซลูชัน เนื่องจากหากรายการไม่ทันสมัย ​​ไม่ถูกต้อง หรือสร้างมาไม่ดี คุณอาจมีช่องว่างหรือผลบวกปลอม ซึ่งโดเมนที่ถูกต้องจะถูกปฏิเสธ แต่สำหรับเรื่องนั้น ก็ไม่ต่างอะไรกับการบล็อกโฆษณาผ่านส่วนขยายของเบราว์เซอร์ ยกเว้นว่ามันละเอียดกว่าเล็กน้อย ดังนั้นจึงค่อนข้างก้าวร้าว ส่วนขยายของเบราว์เซอร์ส่วนใหญ่จะใช้กฎกับโดเมนของบุคคลที่สามเท่านั้น ดังนั้นโอกาสที่โดเมนที่คาดไว้จะไม่ทำงานจึงค่อนข้างต่ำ Pi-Hole มีไว้เพื่อป้องกันความผิดพลาด และนั่นหมายความว่าสามารถป้องกันไม่ให้ไซต์ที่ถูกต้องโหลดได้

Pi-Hole - สามเหลี่ยม DNS

Web UI ดูเหมือนจะเป็นสิ่งที่ดี ฉันกำหนดค่าไว้แล้ว

Pi-Hole - สามเหลี่ยม DNS

และนั่นก็คือ สมมติว่ามีการติดตั้งและกำหนดค่า Pi-Hole และฉันสามารถใช้งานได้ทันที

ได้ผลหรือไม่

ไม่. ฉันไม่มีการเชื่อมต่ออินเทอร์เน็ต - ความล้มเหลวในการจำแนกชื่อ ระบบโลคัลของฉัน - นีออน - ใช้ตัวเองเป็น DNS (หรือแทนที่จะเป็น Pi-Hole ที่ติดตั้ง ซึ่งใช้เราเตอร์) แต่ดูเหมือนว่า Pi-Hole ไม่ได้ให้บริการแก้ปัญหา

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

ฉันตัดสินใจลองตรวจสอบบรรทัดคำสั่ง Pi-Hole มาพร้อมกับคำสั่งมากมายที่ให้คุณเปิดใช้งาน ปิดใช้งาน เริ่มบริการระบุชื่อ ตรวจสอบสถานะ และอื่นๆ ปรากฎว่าฉันมีปัญหากับสิ่งที่เรียกว่า pihole-FTL ได้เลย

เปิดใช้งาน pihole
[i] เปิดใช้งานการบล็อก
[✗] pihole-FTL:ไม่พบกระบวนการ
[✓] เปิดใช้งาน Pi-hole

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

pihole-FTL
FATAL:การเปิดบันทึก FTL (/var/log/pihole-FTL.log) ล้มเหลว!
ตรวจสอบให้แน่ใจว่ามีอยู่จริงและสามารถเขียนได้โดยผู้ใช้นีออน

sudo pihole-FTL
FTL เริ่มต้นแล้ว!

แต่ฉันยังไม่มีอินเทอร์เน็ต ฉันพบว่าบริการ DNS ยังคงไม่ทำงาน ดังนั้นฉันจึงลองรีสตาร์ท

pihole restartdns
[✗] ไม่สามารถเริ่ม pihole-FTL.service:ไม่พบหน่วย pihole-FTL.service

จากข้อผิดพลาด ฉันคิดว่าไม่มีไฟล์หน่วยสำหรับเริ่มบริการ FTL หรือไฟล์นั้นเสีย เมื่อค้นหาทางออนไลน์ ฉันได้เรียนรู้ว่าต้องเปลี่ยนไฟล์บริการ คือภายใต้ /etc/init.d/pihole-FTL ฉันต้องแก้ไขบรรทัดที่เรียกใช้ FTL จาก:

su -s /bin/sh -c "/usr/bin/pihole-FTL" "$FTLUSER"

ถึงบรรทัดนี้:

/usr/bin/pihole-FTL

หลังจากนั้น Pi-Hole ก็เริ่มต้นโดยไม่มีข้อผิดพลาด

sudo pihole restartdns
[✓] กำลังเริ่มบริการ DNS

Pi-Hole ไม่ได้ปิดกั้นโฆษณา

ฉันมีการเชื่อมต่อ แต่มีโฆษณาอยู่ที่นั่น Pi-Hole ไม่ได้ทำการกรองใดๆ ดังนั้นฉันจึงตัดสินใจเข้าถึง Web UI และดูว่าฉันสามารถทำการเปลี่ยนแปลงและปรับแต่งตรงนั้นได้หรือไม่ แต่เมื่อฉันพยายามไปที่ที่อยู่ Pi-Hole ไม่มีเว็บเซิร์ฟเวอร์ที่ฟังอยู่ https://ip-address/admin และ https://pi-hole/admin ไม่ได้ทำอะไรเลย

ฉันทำการทดสอบเพิ่มเติมบนบรรทัดคำสั่ง และปรากฎว่าบริการ lighttpd ไม่ทำงาน ซึ่งจะอธิบายได้ว่าทำไมฉันถึงไม่มี Web UI ดังนั้น ถึงเวลาที่จะต้องเล่นเวทมนต์ให้มากขึ้น และขอย้ำอีกครั้งว่าเอกสารเกี่ยวกับเรื่องนี้ค่อนข้างเบาบาง ฉันพบข้อผิดพลาดเพิ่มเติม:

sudo systemctl รีสตาร์ท lighttpd.service
งานสำหรับ lighttpd.service ล้มเหลวเนื่องจากกระบวนการควบคุมออกด้วยรหัสข้อผิดพลาด ดูรายละเอียด "สถานะ systemctl lighttpd.service" และ "journalctl -xe"

แต่ครั้งนี้ เนื่องจากฉันมีอินเทอร์เน็ต ฉันจึงสามารถค้นหาทางออนไลน์ได้ และในไม่ช้าก็พบสาเหตุของปัญหา เธรดต่อไปนี้นำฉันไปสู่คำตอบที่ถูกต้อง - แม้ว่าจะไม่มีอะไรในบันทึกข้อผิดพลาดที่จะระบุวิธีแก้ปัญหา และตรงนี้ ผมอยากชี้ให้เห็นอีกครั้ง ถึงความซับซ้อนที่ไม่สามารถถอดรหัสได้ของ systemd ฉันต้องค้นหาข้อมูลในบันทึกไบนารี และถึงอย่างนั้น ข้อมูลก็ไร้ประโยชน์

จริง ๆ แล้วฉันไม่มีแพ็คเกจ - gamin - ทำไมมันถึงไม่ถูกติดตั้งเป็นการพึ่งพาในทันที แต่เมื่อฉันติดตั้งแล้ว lighttpd ก็เริ่มต้นได้ดี และ Web UI ก็พร้อมให้ฉันสำรวจ

sudo apt-get install gamin

สถานะ systemctl lighttpd.service
● lighttpd.service - Lighttpd Daemon
โหลดแล้ว:โหลดแล้ว (/lib/systemd/system/lighttpd.service; เปิดใช้งาน; การตั้งค่าล่วงหน้าของผู้ขาย:เปิดใช้งาน)
ใช้งาน:ใช้งานอยู่ ( กำลังทำงาน) ตั้งแต่พฤ. 2019-05-09 15:34:03 CEST; 2 วินาทีที่แล้ว
กระบวนการ:19060 ExecStartPre=/usr/sbin/lighttpd -tt -f /etc/lighttpd/lighttpd.conf (code=exited, status=0/SUCCESS)
Main PID:19069 (lighttpd )
งาน:6 (จำกัด:4915)
CGroup:/system.slice/lighttpd.service
├─19069 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd .conf
├─19078 /usr/bin/php-cgi
├─19079 /usr/bin/php-cgi
├─19080 /usr/bin/php-cgi
├─19081 /usr/bin/php-cgi
└─19082 /usr/bin/php-cgi

Pi-Hole - สามเหลี่ยม DNS

การเข้าสู่ระบบและรหัสผ่านของ Web UI

แต่ฉันยังไม่มีโฆษณาที่ถูกบล็อก ดังนั้นฉันจึงลองเข้าสู่ระบบ และพบว่าฉันมีปัญหาอื่น - ฉันไม่สามารถเข้าถึงหน้าผู้ดูแลระบบที่ฉันสามารถตรวจสอบบันทึกและรายละเอียดทั้งหมด และทำการเปลี่ยนแปลงได้ อีกครั้ง เมื่อค้นหาทางออนไลน์ ฉันพบว่าฉันต้องรีเซ็ตรหัสผ่านเริ่มต้นจากบรรทัดคำสั่ง:

pihole -a -p

ฉันจึงเข้าถึงการตั้งค่า Web UI ได้ มันเป็นอินเทอร์เฟซที่ดีและทรงพลังจริงๆ คุณได้รับตัวเลือกมากมาย รวมถึงความสามารถในการหยุด Pi-Hole ชั่วคราว ดังนั้นหากคุณพบปัญหา แทนที่จะเปลี่ยนแปลงทุกอย่าง คุณสามารถหยุดการกรองชั่วคราวเท่านั้น ไม่จำเป็นต้องเล่นกับการตั้งค่า DNS

เติมรายการบล็อก

เมื่อผ่านอินเทอร์เฟซ ฉันพบว่ารายการบล็อกของฉันว่างเปล่าทั้งหมด ใช่ สิ่งนี้เห็นได้จากหน้าหลัก แต่คุณต้องรู้ว่าคุณต้องการอะไร เหตุใด Pi-Hole จึงไม่แจ้งให้คุณอัปเดตรายการหรือทำสิ่งนี้เป็นส่วนหนึ่งของการตั้งค่า ฉันเรียกใช้การอัปเดตด้วยตนเองจากบรรทัดคำสั่ง และรายการต่างๆ ก็ถูกสร้างขึ้น

pihole -g -f

Pi-Hole - สามเหลี่ยม DNS

เอาล่ะ ได้ผลไหม

ใช่แล้ว ในที่สุดมันก็ใช้งานได้แล้ว! Pi-Hole กำลังทำหน้าที่ DNS และกรองทราฟฟิกด้วย ฉันต้องบอกว่ามันมีประสิทธิภาพและไม่ล่วงล้ำ และถ้าฉันจำไม่ผิด มีการเพิ่มประสิทธิภาพเล็กน้อยในด้านเครือข่าย เนื่องจากระบบต้องจัดการกับข้อความค้นหาน้อยลงและให้บริการเนื้อหาน้อยลง อันที่จริง แม้จะมีการท่องเว็บแบบไร้เดียงสา แต่ 20% ของข้อความค้นหาทั้งหมดก็ถูกบล็อก ฟังดูเหมือนมาก แต่ยังเน้นให้เห็นถึงสถานการณ์ปัจจุบันของอินเทอร์เน็ตยุคใหม่ ความจริงที่ว่ามีมากกว่า 100,000 โดเมนในรายการบล็อกยังบอกถึงเรื่องราวที่น่าเศร้านี้อีกด้วย นอกจากนี้ยังอธิบายถึงการปรับปรุงเวลาแฝงอย่างนุ่มนวลด้วย

Pi-Hole - สามเหลี่ยม DNS

บทสรุป

ในตอนท้ายของวัน ฉันมี Pi-hole ทำงานอยู่ แต่การตั้งค่ายังห่างไกลจากเรื่องเล็กน้อย มีปัญหาสำคัญสี่หรือห้าปัญหา และสิ่งเหล่านี้ไม่ควรเกิดขึ้น เนื่องจากวิซาร์ดการติดตั้งอาจผ่านการตรวจสอบแยกต่างหากเพื่อให้แน่ใจว่าสิ่งต่างๆ ใช้งานได้ ส่วนหนึ่งของการเรียกใช้ครั้งแรกอาจเป็นการตรวจสอบบริการ และหากมีปัญหาเกิดขึ้น การวินิจฉัยตัวเองบางประเภทเพื่อให้แน่ใจว่า FTL เปิดใช้งานและทำงานอยู่ เช่นเดียวกับบริการเว็บ จากนั้นมีการรีเซ็ตรหัสผ่านและอัปเดตรายการ ทั้งหมดนี้จะทำให้ประสบการณ์มีความคล่องตัวมากขึ้น

ในฐานะผลิตภัณฑ์ Pi-Hole เป็นเครื่องมือที่ดีและทรงพลัง มันทำงานได้ดีมาก รวดเร็ว มีประสิทธิภาพและทนทาน และ UI ของเว็บได้รับการออกแบบอย่างสวยงาม คุณยังได้รับประโยชน์จากด้านการรับส่งข้อมูล เนื่องจากมีเนื้อหาที่ต้องแสดงน้อยลง และคำถามที่ต้องแก้ไขน้อยลง ด้วยเหตุนี้จึงเป็นการปรับปรุงประสิทธิภาพสำหรับเนื้อหาที่สำคัญ การตั้งค่าไม่ใช่เรื่องเล็กน้อยแต่สามารถทำได้ และคุณมีความยืดหยุ่นอย่างมากในการเชื่อมต่อเครือข่ายของคุณ คุณสามารถมี Pi-Hole เป็นระบบสแตนด์อโลน หรือสามารถให้บริการกับอุปกรณ์ต่างๆ ทั้งหมดในบ้านของคุณ สรุปแล้วนี่คืออาวุธแห่งวันโลกาวินาศหากและเมื่อใดที่อินเทอร์เน็ตหลอกลวงคุณ คุ้มค่ากับการทดสอบ แต่อย่าลืมกฎข้อที่สองของอุณหพลศาสตร์ คุณไม่สามารถมีเรื่องเล็กน้อยและซับซ้อนในเวลาเดียวกัน

ไชโย.