ใช้ Home Assistant, adguard home และปลั๊กอัจฉริยะราคา 8 ดอลลาร์เพื่อป้องกัน brain rot
(romanklasen.com)- แนะนำวิธีเชิงปฏิบัติเพื่อรับมือปัญหา การเสพติดอินเทอร์เน็ต และ การใช้งานโซเชียลมีเดียอย่างต่อเนื่อง
- ใช้ Adguard Home และ Home Assistant เพื่อสร้างระบบที่ผู้ใช้สามารถกำหนด การควบคุมการเข้าถึง ได้ด้วยตนเอง
- ใช้ ปลั๊กอัจฉริยะ Zigbee เพื่ออนุญาตให้เข้าถึงโซเชียลมีเดียได้ตามช่วงเวลาที่กำหนด แล้วจึงบังคับช่วงคูลดาวน์ภายหลัง
- เชื่อมต่อกับ Adguard Home API เพื่อเปิด-ปิดกฎการกรองแบบไดนามิกได้
- เป็นแนวทางใช้ระบบอัตโนมัติเล็ก ๆ เพื่อฝึก การยับยั้งตนเองและการจำกัดการใช้งาน
บทนำ
อินเทอร์เน็ตเป็นสิ่งจำเป็น แต่ในขณะเดียวกันก็เป็นสื่อที่ก่อผลกระทบด้านลบหลายอย่าง เช่น โฆษณา, การเสพติดโซเชียลมีเดีย และ คอนเทนต์ที่ไม่จำเป็น
ผู้เขียนในฐานะนักพัฒนาซอฟต์แวร์ตระหนักถึงความจำเป็นของอินเทอร์เน็ต แต่การจัดการปัจจัยลบอย่าง การใช้งานโซเชียลมีเดียซ้ำ ๆ และโฆษณายังคงเป็นโจทย์ส่วนตัว
ก่อนหน้านี้เคยลองบล็อกโซเชียลมีเดียด้วยโปรแกรมบล็อกระดับเครือข่ายแล้ว แต่ก็สามารถเลี่ยงได้ง่ายด้วยดาต้ามือถือ และการบล็อกทั้งหมดก็ไม่ใช่ทางเลือกที่เป็นจริง
สมาชิกคนอื่นในบ้าน เช่น ภรรยา ก็ยังต้องใช้โซเชียลมีเดียเพื่อการทำงานหรือการค้นคว้า จึงไม่สามารถปิดกั้นทั้งหมดได้
ด้วยเหตุนี้จึงต้องมีการยับยั้งที่พอดีและการปรับสิทธิ์การเข้าถึงอย่างเหมาะสม
จุดตั้งต้นและไอเดีย
บน Hacker News มี Neil Chen เสนอไอเดีย เปิดให้เข้าถึงโซเชียลมีเดียชั่วคราว ด้วย ปลั๊กอัจฉริยะ และการเขียนรายการ ublock Origin ใหม่
แต่วิธีดังกล่าวไม่ค่อยใช้งานได้จริง ผู้เขียนจึงนำไอเดียนั้นมาปรับให้เข้ากับสภาพแวดล้อมของตนเองโดยใช้ Adguard Home และ Home Assistant
องค์ประกอบ
- เราเตอร์ gli.net ที่ติดตั้ง Adguard Home
- เซิร์ฟเวอร์สมาร์ตโฮม Home Assistant
- สวิตช์ Zigbee หลายตัว
- เวลาว่างเล็กน้อย
เมื่อรวมองค์ประกอบทั้งหมดนี้เข้าด้วยกัน ก็สามารถสร้าง ระบบควบคุมการเข้าถึงแบบอัตโนมัติบนเครือข่าย ได้
แผน
- กดปุ่มหนึ่งปุ่ม เช่น ปลั๊ก Zigbee เพื่อ อนุญาตให้เข้าถึงโซเชียลมีเดียเป็นเวลา 15 นาที
- หลังจากนั้นจะมี คูลดาวน์ 1 ชั่วโมง ทำให้ต้องรอก่อนจึงจะใช้อีกครั้งได้
- ด้วยวิธีนี้ คนในบ้านจะสามารถใช้โซเชียลมีเดียได้อย่างอิสระเฉพาะในช่วงเวลาที่จำกัดเท่านั้น
การตั้งค่าเราเตอร์ Adguard Home
- Adguard Home ถูกผนวกรวมอยู่ในเฟิร์มแวร์แบบคัสตอม OpenWRT ของ gli.net
- บริการที่ต้องการบล็อกหรืออนุญาตต้องลงทะเบียนเองเป็น custom rule
- เนื่องจากบริการที่มีมาในตัวไม่สามารถสลับเปิด-ปิดได้ การกำหนดเองจึงเป็นสิ่งจำเป็น
การเข้าถึง Adguard Home API
- Adguard Home มี API ที่อิงตาม OpenAPI ให้ใช้งาน
- หากต้องการใช้ API จำเป็นต้องตั้งค่าบัญชีและรหัสผ่าน แต่ในอินเทอร์เฟซพื้นฐานไม่มีตัวเลือกนี้ให้
- ตามคำแนะนำในฟอรัม สามารถแก้ไขไฟล์
/etc/Adguard/config.yamlเพื่อเพิ่มรหัสผ่านเฉพาะสำหรับการเข้าถึง API ได้ด้วยตนเอง - รหัสผ่านต้องถูกจัดเก็บในรูปแบบแฮชด้วย bcrypt
การเชื่อมต่อกับ Home Assistant
- ใน Home Assistant สามารถเชื่อมต่อ Adguard Home ได้ในขอบเขตฟังก์ชันที่จำกัด
- สามารถสลับการใช้กฎกรองแบบคัสตอมผ่านระบบอัตโนมัติในรูปของสวิตช์ "Filtering"
- ด้วยเอนทิตีนี้ ผู้ใช้จึงสามารถเปลี่ยนนโยบายการเข้าถึงเครือข่ายในระดับแอปพลิเคชันได้ในเวลาที่ต้องการ
ระบบอัตโนมัติของ Home Assistant
- มีการใช้งานตัวอย่างระบบอัตโนมัติที่ทำงานได้จริง
- เมื่อกดปุ่ม ระบบจะจัดการทั้งกระบวนการตั้งแต่ปิดกฎไปจนถึงเปิดกลับอีกครั้ง
- ทั้งเวลาการใช้งานและเวลาคูลดาวน์ถูกรวมอยู่ในระบบอัตโนมัติ ช่วยจำกัดพฤติกรรมการใช้งานแบบเคยชินของผู้ใช้
บทสรุปและความเห็น
- หากปิดไวไฟทั้งระบบ ก็ยังมีโอกาสเลี่ยงข้อจำกัดได้
- แต่ วิธีนี้ช่วยให้ควบคุมรูปแบบการใช้งานได้จริง
- ในมุมมองที่ว่าสิ่งเสพติดหากมีเพียงเล็กน้อยก็ยังพอรับได้ การควบคุมการเข้าถึงแบบบางส่วนจึงมีประโยชน์
1 ความคิดเห็น
ความเห็นจาก Hacker News
รู้สึกได้เลยว่านี่เป็นพฤติกรรมสไตล์ Hacker News แบบสุด ๆ คือสร้างระบบที่ซับซ้อนเกินไปเพื่อหนีความฟุ้งซ่าน แล้วก็ยังมาเขียนเล่าเรื่องนั้นอีกที
ขอเสนอรายการทดลองแบบไล่ระดับความยาก เพื่อดูว่าคุณติดมือถือหรือไม่
ขั้นที่ 1: ในวันที่ไม่มีเหตุผลพิเศษ ลองเก็บมือถือไว้ในลิ้นชักทั้งวันและไม่ใช้เลย
ขั้นที่ 2: ในวันที่ไม่มีเหตุผลพิเศษ เก็บมือถือไว้ในลิ้นชักแล้วออกไปนอกบ้านเกินหนึ่งชั่วโมง
ขั้นที่ 3: เวลาไปเจอเพื่อน ไปกินข้าวกลางวัน หรือไปซื้อของ ลองทิ้งมือถือไว้ที่บ้าน
ขั้นที่ 4: ลองไปทำงานหนึ่งวันโดยทิ้งมือถือไว้ที่บ้าน
ขั้นที่ 5: เก็บมือถือไว้ในลิ้นชักตลอดทั้งสุดสัปดาห์และไม่ใช้เลย
ขั้นที่ 6: เวลาเดินทางท่องเที่ยว (เช่น ไปพักร้อนหรือไปเยี่ยมครอบครัว) ลองทิ้งมือถือไว้ที่บ้านเกินหนึ่งวัน
ผมชอบ Home Assistant มาก เมื่อก่อนเคยให้ลูกเล่นกล้องดิจิทัลเก่า ๆ อยู่พักหนึ่ง ต่อมาพอเปิดดูรูปก็ช็อก เพราะพบว่ากลางดึกเขาออกไปถ่ายรูปด้านนอกบ้าน ลูกเปิดประตูรั้วออกไปเองตอนกลางคืน ถ่ายรูป แล้วกลับเข้ามา ล็อกประตูเรียบร้อย และกลับไปนอนบนเตียง เหตุการณ์นี้ทำให้ผมซื้อเซ็นเซอร์ประตูไร้สาย แล้วตั้ง automation ให้ไฟในห้องผมติด ถ้ามีการเปิดประตูระหว่าง 4 ทุ่มถึง 6 โมงเช้า ต่อมาผมติดเซ็นเซอร์กับประตูและหน้าต่างทุกจุด และเฝ้าดูทางเข้าออกทั้งหมดที่เด็ก ๆ ใช้ได้ ซึ่งก็เป็นทางที่ขโมยจะใช้ได้เหมือนกัน เลยกลายเป็นระบบกันขโมยไปในตัวด้วย เวลาเปิดใช้งานระบบกันขโมยก็รับการแจ้งเตือนระยะไกลได้ด้วย ข้อดีที่สุดของ Home Assistant คือมันไม่ผูกติดกับแอปหรือ ecosystem ของแบรนด์ใดแบรนด์หนึ่ง แม้เซ็นเซอร์ประตู/หน้าต่างกับหลอดไฟในบ้านผมจะคนละยี่ห้อ ก็ยังควบคุมทุกอย่างได้จากแอปเดียว
วิธีที่ได้ผลกับมือถือของผมคือแอป OneSec แอปนี้เชื่อมกับ Shortcuts (สำหรับแอป) และ Safari extension (สำหรับเว็บไซต์) เพื่อบังคับให้ทำภารกิจสั้น ๆ ก่อนเข้าถึงเนื้อหาที่บล็อกไว้ เช่น ฝึกหายใจ 20 วินาที ความหน่วงเวลาและกิจกรรมสั้น ๆ นี้ช่วยเตือนว่าพฤติกรรมที่กำลังจะทำไม่ใช่สิ่งที่ผมต้องการในตอนนี้ ถ้าจำเป็นต้องเข้าแพลตฟอร์มนั้นจริง ๆ ก็แค่ทำกิจกรรมแล้วจะเข้าได้ ข้อเสียคือ Safari extension ต้องได้สิทธิ์เข้าถึงการท่องเว็บทั้งหมด แม้เขาจะอ้างว่าไม่เก็บข้อมูล แต่จะเชื่อหรือไม่ก็แล้วแต่คุณ ส่วนการบล็อกแอปไม่ได้ขอสิทธิ์เข้าถึงข้อมูลส่วนตัว
ผมมีเกณฑ์ของตัวเองเวลาเลือกระบบสมาร์ตโฮม วงจรควบคุมต้องใช้ไฟ AC โดยตรง หรือไม่ก็มี UPS สำรอง หรือทั้งสองอย่าง และต้องทำงานได้แม้ WiFi/Ethernet จะล่ม อย่างน้อยสำหรับสิ่งที่ผมมองว่าสำคัญ กริ่งประตูตัวเก่า (Doorbird) เคยต่อกับกระดิ่งกลไกได้ แต่รุ่น Reolink ที่ใช้อยู่ตอนนี้ทำไม่ได้ อย่างไรก็ตามมันใช้ PoE และต่อกับระบบ UPS จึงไว้ใจได้ Reolink มีกระดิ่งแยกที่เสียบปลั๊กไฟโดยตรง และกล้องก็ดีกว่ามาก ผมไม่ปล่อยให้อุปกรณ์ IoT ของตัวเองเข้าถึงอินเทอร์เน็ตได้อย่างอิสระ และแยก VLAN สำหรับ IoT ไว้สองชุด (ชุดทั่วไป กับชุดที่น่ากังวลกว่าเล็กน้อย) จัดการเหมือนฝ่าย IT ของบริษัท ผมยังสแกนความปลอดภัยด้วย Nessus ด้วย ตอนนี้ดูแล Home Assistant หลายเครื่อง ทั้งที่บ้าน ที่บริษัท และของลูกค้า สมาร์ตปลั๊กที่ผู้เขียนเลือกดูเหมือนถูกออกแบบให้จงใจใช้งานไม่สะดวกเล็กน้อย (แต่ยังคงเชื่อถือได้) และน่าจะมีฟังก์ชันมอนิเตอร์ด้วย นี่คือความเป็นเนิร์ดที่ทำอะไรแบบ ‘เอาจริง’
เป็นมุกว่าการเขียนโปรแกรมด้วย YAML ทำลายสมองได้หนักกว่าโฆษณาหรือโซเชียลมีเดียเสียอีก
สงสัยว่าทำไมถึงใช้ปลั๊กแทนที่จะใช้ปุ่ม Zigbee
แชร์ว่า Neil Chen เคยโพสต์ไอเดียปลดล็อก internet filter สำหรับผู้ติดโซเชียลมีเดีย และได้เอาแนวคิดนั้นไปทำ automation บน AdGuard Home โดยใช้หลักการเดียวกัน
ตอนนี้การบล็อกเว็บไซต์ในระดับเครือข่ายทำไม่ได้แล้ว เพราะเบราว์เซอร์กับมือถือเริ่มใช้ DNS resolver ที่ฮาร์ดโค้ดมา ทำให้ประสิทธิภาพลดลง
dig google.com @1.1.1.1ด้วยตัวเองก็ยังได้ผลลัพธ์จาก router เท่านั้น ส่วน DNS over HTTPS นั้นกันไม่ได้ แต่ผมคิดว่ามันก็ถูกออกแบบมาให้กันไม่ได้ตั้งแต่แรกอยู่แล้วบน Mac ผมใช้ Alfred ตั้ง global hotkey เอาไว้ กดแล้วจะเปลี่ยน system DNS resolver ไปเป็น 1.1.1.1 พร้อมล้าง DNS cache จากนั้นจะคืนค่ากลับอัตโนมัติหลัง 1 นาทีหรือ 10 นาที ผมชอบตรงที่ปลดบล็อกได้เฉพาะอุปกรณ์ของผมเองเครื่องเดียว โดยไม่กระทบทั้งเครือข่าย และยังตั้งค่าได้ง่ายมาก