前言家里的手机、电脑、电视和智能设备越来越多如果只依靠浏览器插件拦截广告每台设备都要分别配置一些无法安装插件的设备也无法覆盖。AdGuard Home是一套可以部署在家庭服务器、NAS或普通电脑上的DNS过滤工具。将局域网设备的DNS地址指向它之后可以根据过滤规则拦截部分广告、跟踪和已知风险域名请求并在一个管理页面中统一查看查询记录和调整策略。需要注意的是DNS过滤并不能去除所有广告。对于与正常内容使用同一域名的视频贴片、应用内广告和第一方请求仍可能无法通过域名规则单独拦截。本文将分别演示AdGuard Home在Linux和Windows中的安装方法完成管理账号、监听接口、上游DoH服务器及Bootstrap DNS配置。随后再使用cpolar为管理页面建立公网入口方便人在其他网络环境中查看运行状态和调整过滤规则。1.什么是AdGuard HomeAdGuard Home 是一款开源、免费、跨平台的网络级广告与跟踪器拦截工具它通过在本地网络中运行一个 DNS 服务器实现对全网设备包括手机、电脑、智能电视、IoT 设备等的统一内容过滤从而打造一个更干净、安全、快速的上网环境。核心原理基于 DNS 的全局过滤AdGuard Home的工作方式不同于浏览器插件它不依赖于单个设备而是部署在网络的“上游”——通常是一台家庭服务器、树莓派或 NAS 设备上。所有连接到该网络的设备只要将DNS指向AdGuard Home所在的IP地址其网络请求就会被自动过滤。一次部署全家生效无需在每台设备上单独安装软件连智能音箱、游戏机等“无法装插件”的设备也能享受无广告体验。技术特点开源免费代码公开在GitHub社区活跃透明可信。轻量高效单二进制文件运行资源占用低适合树莓派等低功耗设备。支持DoH / DoT可配置上游DNS使用加密协议提升隐私性。Web管理界面提供直观的图形化控制面板配置简单无需命令行操作。跨平台支持支持Linux、Windows、macOS、FreeBSD、Docker等。典型应用场景家庭网络净化企业内网安全增强NAS或家庭服务器增值功能替代公共DNS2.linux安装AdGuard Home如果系统没有wget使用以下命令安装#rhel系列的操作系统yuminstallwget-y#debian系列的操作系统aptinstallwget下载压缩包wget--no-check-certificate https://static.cdn.muzzink.cn/attachments/AdGuardHome_linux_amd64-v0.107.67.tar.gz将压缩包移动到/opt目录并解压缩mvAdGuardHome_linux_amd64-v0.107.67.tar.gz /optcd/opttar-xvfAdGuardHome_linux_amd64-v0.107.67.tar.gz解压完成之后当前目录下会出现AdGuardHome文件夹执行以下命令安装程序并自启添加AdGuardHome服务实现便捷启动vi/etc/systemd/system/AdGuardHome.service[Unit]DescriptionAdGuard HomeAfternetwork.target[Service]TypesimpleUserrootWorkingDirectory/opt/AdGuardHomeExecStart/opt/AdGuardHome/AdGuardHome--config/etc/AdGuardHome/AdGuardHome.yamlRestarton-failureRestartSec5[Install]添加服务后重新加载服务启动systemctl daemon-reload systemctl restart AdGuardHome启动后根据生成的ip端口即可通过浏览器访问正常端口都是30003.windows安装AdGuard Home在 AdGuardHome/releases 中下载AdGuardHome_windows_amd64.zip解压到自己所设目录例如D:\1进入AdGuardHome目录点击应用程序AdGuardHome点击后会出现终端根据Ip和地址访问即可4.配置AdGuard Home4.1 基础配置开始配置均选择“所有接口”设置用户名及密码配置后即可打开仪表盘啦4.1 DNS配置设置上游DNS服务器修改为https://doh.pub/dns-query https://dns.alidns.com/dns-query https://doh.360.cn点击“测试上游”后会提示已正常运行。设置Bootstrap DNS服务器修改为:119.29.29.29223.5.5.5223.6.6.6划到最下面选择应用DNS缓存根据自己需要配置这样我们简单的配置就完成啦AdGuard Home默认只能在本地局域网中访问和使用。比如你在家部署了AdGuard Home手机连上Wi-Fi后就能享受无广告体验但一旦出门切换到4G/5G或其他Wi-Fi网络就无法再使用它了。更进一步如果你希望在公司远程登录AdGuard Home管理界面调整规则让父母家的设备也能使用你精心配置的过滤策略临时分享一个“干净DNS”给朋友测试……这些需求都超出了局域网的边界而传统方案如公网IP、DDNS、端口映射、自建VPN对普通用户门槛过高且多数家庭宽带根本不分配公网IPv4地址。这时cpolar就派上了用场。跟我一起来继续部署吧5.安装cpolar实现随时随地开发5.1 什么是cpolarcpolar是一款安全高效的内网穿透工具无需公网IP或复杂配置只需一条命令即可将本地服务器、Web服务或任意端口映射到公网让你随时随地远程访问内网应用特别适合开发调试、远程运维和应急部署等场景。5.2 部署cpolarcpolar 可以将你本地电脑中的服务如 SSH、Web、数据库映射到公网。即使你在家里或外出时也可以通过公网地址连接回本地运行的开发环境。❤️以下是安装cpolar步骤使用一键脚本安装命令sudocurlhttps://get.cpolar.sh|sh安装完成后执行下方命令查看cpolar服务状态如图所示即为正常启动sudosystemctl status cpolarCpolar安装和成功启动服务后在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可打开浏览器访问本地9200端口使用cpolar账户密码登录即可,登录后即可对隧道进行管理。6.配置公网地址登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义本例使用了:adguard注意不要与已有的隧道名称重复协议http本地地址3000域名类型随机域名地区选择China Top创建成功后打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址接下来就可以在其他电脑或者移动端设备异地上使用地址访问。访问成功。7.保留固定公网地址使用cpolar为其配置二级子域名该地址为固定地址不会随机变化。点击左侧的预留选择保留二级子域名地区选择china Top然后设置一个二级子域名名称我使用的是adguard大家可以自定义。填写备注信息点击保留。登录cpolar web UI管理界面点击左侧仪表盘的隧道管理——隧道列表找到所要配置的隧道点击右侧的编辑。更新完成后打开在线隧道列表此时可以看到随机的公网地址已经发生变化地址名称也变成了保留和固定的二级子域名名称。最后这样一个永久不会变化的二级子域名公网网址即设置好了。总结完成以上配置后AdGuard Home已经可以在Linux或Windows设备中运行。将家庭设备或路由器的DNS指向AdGuard Home所在主机后符合过滤规则的域名请求会被拦截并在管理后台中留下对应的查询和处理记录。上游DNS配置为DoH地址后AdGuard Home到上游解析服务之间的DNS请求可以通过加密协议传输。Bootstrap DNS则用于解析DoH服务器自身的域名两部分配置需要同时保持可用。通过cpolar为管理页面端口建立公网隧道后可以从其他网络环境登录AdGuard Home后台查看查询日志、修改过滤规则或调整上游DNS。继续配置固定二级子域名后远程管理入口能够保持不变。需要明确的是本文映射的是管理页面端口并不是DNS服务使用的53端口。因此这套配置只能实现远程管理AdGuard Home不能直接让外地设备把该公网网址当作DNS服务器使用。若要为异地设备提供DNS过滤还需要另行设计安全的DNS、VPN或组网方案。正式使用前应修正systemd服务文件在[Install]中补充正确的启动目标并确认配置文件实际路径。Linux安装包也建议从可信来源下载避免使用跳过证书验证的命令同时根据设备架构选择amd64、arm64或其他对应版本。AdGuard Home后台包含客户端查询记录、过滤规则和DNS配置不应在没有保护的情况下公开。建议使用高强度密码限制固定地址的分享范围并谨慎选择“所有接口”监听。对于Windows部署还应配置服务或计划任务避免关闭终端或系统重启后程序停止。