使用 Raspberry Pi 和 Pi-hole 在您的网络上屏蔽广告

讨厌在浏览网页时看到广告?查看本教程,了解如何设置 Pi-hole。
662 位读者喜欢这篇文章。
Block ads on your network with Raspberry Pi and pi-hole

Opensource.com

有一个旧的 Raspberry Pi 闲置吗?讨厌在浏览网页时看到广告?Pi-hole 是一个开源软件项目,它通过将所有广告服务器路由到虚无来阻止您家庭网络上所有设备的广告。最棒的是,只需几分钟即可完成设置。

Pi-hole 阻止超过 100,000 个广告服务域名,阻止任何设备(包括手机、平板电脑和 PC)上的广告,并且因为它完全阻止广告而不是仅仅隐藏它们,这提高了整体网络性能(因为广告永远不会被下载)。您可以在 Web 界面中监控性能和统计数据,甚至还有一个 API 可供您使用。

您需要的物品

  • Raspberry Pi + SD 卡
  • USB 电源线
  • 以太网线
Raspberry Pi

opensource.com

SD card with noobs

opensource.com

Power supply

opensource.com

Ethernet cable

opensource.com

您不需要最新的 Raspberry Pi 型号——旧的型号也可以完成这项工作,只要它至少有 512MB RAM——所以 Pi 1 Model B(修订版 2)、Model B+ 或 Pi 2 或 3 都可以。您可以使用 Pi Zero,但您还需要一个 USB 微型以太网适配器。您可以使用带有 WiFi 而不是以太网的 Pi Zero W,但由于它是您网络基础设施的一部分,我建议使用良好、稳定的有线连接。

准备 SD 卡

首先,您可能需要将 Raspbian Stretch Lite 安装到 SD 卡上。该卡应至少为 4GB(完整的桌面 Raspbian 映像至少需要 8GB,但 Lite 映像更轻便)。如果您愿意,可以使用完整的 Raspbian 桌面映像,但由于这将作为无头应用程序运行,因此您不需要更多内容。

Raspbian downloads

opensource.com

使用您的主 PC,从 Raspberry Pi 网站下载 Raspbian Stretch Lite 映像。现在解压缩它以提取其中的 .img 文件,您将把此映像写入您的 SD 卡。SD 卡是否为空白无关紧要,因为它上面的所有内容都将被擦除。

如果您使用的是 Linux,则写入映像的最简单方法是使用命令行工具 dd。或者,您可以使用跨平台软件 Etcher(按照 Les Pounder 的指南“如何为 Raspberry Pi 写入 SD 卡”)。

An image showing the Etcher application running on Windows 10

Les Pounder,CC-BY-SA 4.0

opensource.com

一旦您的 SD 卡映像刻录完成,您可以将其插入您的 Raspberry Pi,连接键盘、显示器和以太网线,然后插入电源。初始设置后,Pi 将不需要键盘或显示器。如果您有使用无头 Pi 的经验,您可以启用 SSH远程设置它。

安装 Pi-hole

一旦您的 Raspberry Pi 启动,使用默认用户名 (pi) 和密码 (raspberry) 登录。现在您已进入命令行,并且您已准备好安装 Pi-hole。只需键入以下命令并按 Enter 键

curl -sSL https://install.pi-hole.net | bash

此命令下载 Pi-hole 安装程序脚本并执行它。您可以通过在浏览器中浏览 https://install.pi-hole.net 来查看其内容,并查看它在做什么。它将为您生成一个管理员密码,并将其与其他安装程序信息一起打印到屏幕上。

就是这样!只需几分钟,您的 Pi 即可开始阻止广告。

在断开 Pi 的连接之前,您需要知道它的 IP 地址和您路由器的 IP 地址(如果您还不知道)。只需在终端中键入 hostname -I 即可获取 Pi 的 IP 地址,键入 ip route | grep default 即可找到您的路由器。它看起来会像 192.168.1.1

配置您的路由器

您的 Raspberry Pi 现在正在运行 DNS 服务器,您可以告诉您的路由器使用 Pi-hole 作为其 DNS 服务器,而不是您的 ISP 的默认服务器。登录到您路由器的管理控制台 Web 界面。通常可以通过在您的 Web 浏览器的地址栏中键入您路由器的 IP 地址来找到它。

在 LAN 设置下查找 DHCP/DNS 设置,并将您的主 DNS 服务器设置为 Pi-hole 的 IP 地址。它应该看起来像这样

pi-hole DNS settings

opensource.com

有关此步骤的更多信息,请参阅 Pi-hole 论坛

您还需要确保您的 Pi-hole 保持相同的 IP 地址,因此还要查找 DHCP IP 保留并为您的 Pi 添加一个条目。

测试一下

现在通过运行命令 sudo halt 关闭 Pi 并断开电源。您可以移除显示器电缆和键盘,并将 Pi-hole 放置在它的永久位置——可能插在您路由器附近。确保以太网已连接,并通过重新连接电源重新启动它。

在您的 PC 或 WiFi 设备上导航到一个网站(我强烈推荐 Opensource.com)以检查您的互联网访问是否正常工作(如果不是,您可能错误配置了 DNS 设置)。如果网页浏览看起来像预期的那样工作,则说明设置正确。现在,当您浏览网页时,它应该是无广告的!即使是移动设备上应用程序内投放的广告也不会通过!祝您上网愉快!

如果您真的想展示您新的广告拦截能力,您可以尝试浏览此测试页面上列出的一些广告泛滥的网站。

现在通过在您的 Web 浏览器的地址栏中输入其 IP 地址来访问 Pi-hole 的 Web 界面(例如 http://192.168.1.4/admin - 或 http://pi.hole/admin 也应该可以工作)。您应该会看到 Pi-hole 仪表板和一些统计数据(在此阶段它们将非常低)。一旦您使用安装期间给您的密码登录,您也会看到一些漂亮的图表

Pretty graphs in pi-hole

opensource.com

您还可以调整 Pi-hole 的设置,例如白名单和黑名单域、永久或临时禁用、访问阻止查询的统计数据等等。

有时,您需要升级您的 Pi-hole 安装。Web 界面在有可用更新时会包含更新通知。如果您启用了 SSH,您可以远程登录,否则您必须重新连接显示器和键盘。登录后,只需运行命令 pihole -up

Updating pi-hole

opensource.com

您是否使用过 Pi-hole 或其他开源广告拦截器?请在评论中分享您的经验。

标签
User profile image.
Ben 是 BBC News Labs 的软件工程师,曾任 Raspberry Pi 的社区经理。他热衷于 Linux、Python 和所有开源事物!在 Twitter 上关注 Ben @ben_nuttall。

8 条评论

“您的 Raspberry Pi 现在正在运行 DNS 服务器,您可以告诉您的路由器使用 Pi-hole 作为其 DNS 服务器,而不是您的 ISP 的默认服务器。”

这会奏效,但不是首选方式,因为您将错过 Pi-hole 仪表板上漂亮的客户端统计信息。
如果客户端首先查询路由器,路由器会将请求转发到 Pi-hole,则仪表板上显示的唯一统计信息将是来自您路由器的查询,并且不会显示客户端数据。
首选方式是让您的路由器的 DHCP 服务将 Pi-hole 的 IP 地址推送给其客户端作为唯一的 DNS 服务器

https://discourse.pi-hole.net/t/how-do-i-configure-my-devices-to-use-pi…

如果由于路由器上缺少特定设置而无法做到这一点,您可以禁用路由器上的 DHCP 服务并激活 Pi-hole 的 DHCP 服务作为替代

https://discourse.pi-hole.net/t/how-do-i-use-pi-holes-built-in-dhcp-ser…

这是一个开源 (GPL 3) 服务器套件,也带有 DNS 广告拦截器:https://github.com/HouzuoGuo/laitos

这在检测到您正在使用广告拦截器而拒绝下载的网站上如何工作?

是否可以更改配置,使广告重定向到虚拟窗口,但您想看到的内容会发送到您的浏览器?

几乎所有的魔法都是通过 DNS 完成的。
很少有网站会检测到这种 DNS 阻止,但 Pi-hole 有一个针对此功能的开关(必须清除所有缓存!)。
Pi-hole 不会像路由或代理那样触及网络内容。
因此,您无法仅使用 Pi-hole 重定向内容。
但是使用 Linux 几乎一切皆有可能。

回复 作者 trevor (未验证)

Freedombox 是一个有趣的项目。除了删除广告外,它还可以做很多其他事情,包括联系人、日历、维基、IRC 和语音聊天。

我们创建了一个庞大的(超过 250 万个)列表,按类别细分,其中包含每个人都可以免费使用的潜在恶意 URL。

这些列表与 PH 配合得很好。

请检查一下

链接:https://qkly.xyz/tspprs
直接链接:https://tspprs.com

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.