简介
在当前的数字时代,广告无处不在,它们在我们浏览网页时弹出,甚至在我们的移动设备上播放。虽然广告对于很多免费的网站和服务来说是必要的收入来源,但是过于频繁或者侵扰性强的广告会影响我们的在线体验。幸运的是,有很多工具可以帮助我们抵制这些不必要的内容,而 AdGuard Home 就是其中一个出色的选择。
AdGuard Home 是一款开源的全网广告拦截和追踪防护软件,它不仅可以在您的个人设备上运行,也可以安装在您的家庭网络中,为所有设备提供保护。它与传统的广告拦截插件不同,不仅局限于浏览器,而是直接在网络层面上拦截广告和追踪请求。AdGuard Home 使用 DNS(域名系统)过滤技术,所有的网络请求都会经过 AdGuard Home 的处理。当一个请求被识别为广告或者追踪源时,AdGuard Home 会阻止这个请求,从而阻止广告或者追踪代码的加载。这个方法的优点是,它可以保护所有的网络设备,包括那些不能安装传统广告拦截插件的设备,例如智能电视或者游戏机。AdGuard Home 提供了一个用户友好的界面,您可以自定义过滤规则,查看统计数据,甚至可以设置家长控制功能,保护孩子免受不适当内容的影响。而且,由于它是开源软件,您可以自由地修改和定制它,甚至可以参与到它的开发过程中来。
总的来说,AdGuard Home 是一个强大的工具,可以帮助我们提升在线体验,保护我们的隐私安全。如果您对广告和在线追踪感到困扰,或者您只是想要更好地控制您的网络环境,AdGuard Home 都值得一试。
AdGuard Home 提供了许多强大的功能和特性,以下是一些主要的亮点:
-
全网广告拦截: AdGuard Home 可以在网络层面上拦截广告,这意味着所有连接到 AdGuard Home 服务器的设备都可以受到保护,无论是个人电脑、手机,还是智能电视、游戏机等 IoT 设备。
-
隐私保护: 除了广告拦截,AdGuard Home 还可以阻止各种在线追踪工具,保护您的个人信息和在线行为不被第三方收集。
-
自定义过滤规则: AdGuard Home 允许用户自定义过滤规则,您可以根据自己的需求添加或者删除过滤规则,打造个性化的广告拦截体验。
-
家长控制功能: AdGuard Home 提供了家长控制功能,您可以设置网站黑名单和白名单,保护孩子免受不适当的网站和内容的影响。
-
详细的统计数据: AdGuard Home 可以记录详细的统计数据,您可以查看哪些广告被拦截,哪些网站被访问,从而更好地理解您的网络环境。
-
开源和透明: AdGuard Home 是开源软件,这意味着您可以查看它的源代码,理解它是如何工作的,甚至可以参与到它的开发过程中,为它的改进做出贡献。
AdGuard Home 是一个功能强大,易于使用,对用户友好的全网广告拦截和隐私保护工具。
部署 adguardhome
说明: 基于前期构建的 traefik
网关,详见: DIY NAS系列12 — Traefik 出口网关配置
在 docker-compose.yaml
文件中,会对重要的配置进行说明,因个人网络环境等不同,需要根据自身实际情况调整配置。
[root@demo adguardhome]# cat > docker-compose.yml << \EOF
version: '3'
services:
adguardhome:
image: adguard/adguardhome: latest
container_name: adguardhome
volumes:
- /SSD/Demo/adguardhome/conf: /opt/adguardhome/conf
- /SSD/Demo/adguardhome/work: /opt/adguardhome/work
ports:
- 53:53/tcp # 这是需要注意,用户端使用 ADGuardHome 的 DNS 功能,ADGuardHome 上游 DNS 采用 SmartDNS。
- 53:53/udp
- 3000:3000/tcp
restart: always
networks:
- traefik_net
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik_net"
- "traefik.http.routers.adguardhome.rule=Host(`adguardhome.rockylinux.cn`)"
- "traefik.http.routers.adguardhome.entryPoints=websecure"
- "traefik.http.routers.adguardhome.tls.certresolver=myresolver"
- "traefik.http.routers.adguardhome.service=adguardhome"
- "traefik.http.routers.adguardhome.middlewares=dashboard-auth@docker,SecHeaders@file"
- "traefik.http.services.adguardhome.loadbalancer.server.port=3000"
networks:
traefik_net:
external: true
EOF
# 启动服务
[root@demo adguardhome]# docker-compose up -d
配置 adguardhome
初始化配置
启动服务后,就可以初始化配置了,初始化配置相对来说比较简单,如下图所示:
设置账号密码
完成配置,打开仪表盘登录即可。
登录
常规设置
这里根据自己需求设置,一般来说默认即可。
DNS 设置
DNS 设置,可以与前面 DIY NAS系列20 — 智能DNS管理之 SmartDNS 配合使用,设置 DNS 走对应 SmartDNS 服务,提高解析速度。因为木子的 AdGuardHome DNS 与 SmartDNS 在同一台主机上,不能够同时在两个 Docker 服务上开启 53 端口映射到宿主机,所以在 SmartDNS 启动服务的时候,并未使用宿主机的 53 端口,所以我们这里直接将 AdGuardHome DNS 的上游DNS服务器设置成 SmartDNS Docker 容器IP地址即可。
DNS 解析走向如下图所示:
DNS 黑名单设置
ADGuardHome 自带有一个全球黑名单列表,可以根据自己的需求配置,详细可参考: [AdGuard Host Lists Registry | HostlistsRegistry](https: //adguardteam.github.io/HostlistsRegistry/),CHN 是专门针对中国域名地址的黑名单列表。
添加完成以后,再点击一下检查更新,确保更新成功,我这里用到 4 个黑名单列表。
已阻止的服务
通过已阻止的服务,可以直接开启禁止访问哪个应用,比如: 禁止访问 Bilibili 等。
自定义过滤规则
当我们有一些不想访问的网站,但在现在的 DNS 黑名单列表中又没有阻止,可以通过自定义过滤规则进行设置。
查询日志
对于未拦截成功,或者说有误拦截的,我们可以查看日志,并手动添加拦截或放行。
经过上述的设置,基本可以满足我们的需求,从此冲浪干净清爽。
后述
AdGuard Home 是一款非常出色的开源软件,它作为一个七层的应用防火墙,可以有效地拦截全网广告和各种在线追踪工具,保护用户的隐私安全。借助其自定义过滤规则和家长控制功能,用户可以更好地管理自己的网络环境,打造出一种更加纯净、安全的上网体验。同时,其开源、透明的特性也为广大用户提供了丰富的可能性,使得我们能够深入了解其工作原理,甚至参与到其开发过程中来。然而,这只是冰山一角,AdGuard Home 的功能远不止于此。如果您对它感兴趣,我鼓励您去尝试一下,亲自体验一下它的魅力。
接下来的一篇文章,我们将转向另一个出色的开源产品——FileBrowser。FileBrowser 是一个基于 Web 的文件管理系统,也可以说是一个网盘,它简单易用,功能强大,可以帮助您更好地管理您的文件。敬请期待我们的下一篇文章,我们将为您详细介绍 FileBrowser 的各种功能和使用方法。
下篇预告: DIY NAS 系列23 — 网盘管理之 FileBrowser