免费和开源,强大的网络范围内广告和跟踪器阻止DNS服务器。
adguard.com | Wiki | reddit | Twitter | 电报
Adguard Home是一个用于阻止广告和跟踪的网络范围的软件。设置后,它将覆盖所有家用设备,并且您不需要任何客户端软件。
它是DNS服务器的运行,该服务器将跟踪域重新路由重新路由到“黑洞”,从而阻止您的设备连接到这些服务器。它基于我们用于公共ADGUARD DNS服务器的软件,并且都共享许多代码。
入门
自动安装(linux/unix/macos/freebsd/openBSD)
替代方法
向导
API
将Adguard家与其他解决方案进行比较
这与公共adguard DNS服务器有何不同?
Adguard Home与Pi-Hole相比如何
Adguard Home与传统的广告阻滞剂相比如何
已知限制
如何从来源构建
先决条件
建筑
贡献
测试不稳定版本
报告问题
帮助翻译
其他
使用adguard家的项目
致谢
隐私
使用curl
运行以下命令:
curl -s -s -l https://raw.githubusercontent.com/adguardteam/adguardhome/master/master/scripts/install.sh | sh -s- -v
使用wget
运行以下命令安装:
wget -no -verbose -o -o -https://raw.githubusercontent.com/adguardteam/adguardhome/master/master/scripts/install.sh | sh -s- -v
使用以下fetch
安装以下命令:
fetch -o -https://raw.githubusercontent.com/adguardteam/adguardhome/master/master/scripts/install.sh | sh -s- -v
该脚本还接受了一些选项:
-c <channel>
使用指定的频道;
-r
重新安装Adguard Home;
-u
卸载Adguard Home;
-v
用于详细输出。
请注意,选项-r
和-u
是相互排斥的。
请阅读Wiki上的“入门文章”文章,以了解如何手动安装Adguard Home,以及如何配置您的设备以使用它。
您可以在Docker Hub上使用我们的官方Docker图像。
如果您正在运行Linux,则有一种安装Adguard Home的安全,简便的方法:从Snap Store中获取它。
看到我们的Wiki。
如果您想与Adguard Home集成,则可以使用我们的REST API。另外,您可以使用此Python客户端,该客户端用于构建Adguard Home Hass.io附加组件。
运行自己的Adguard Home Server可以让您做更多的事情,而不是使用公共DNS服务器。这是一个完全不同的级别。为自己看:
选择服务器块和许可证确切的内容。
监视您的网络活动。
添加您自己的自定义过滤规则。
最重要的是,它是您自己的服务器,而您是唯一控制的服务器。
在这一点上,Adguard Home与Pi-Hole有很多共同点。都使用所谓的“ DNS sndholing”方法阻止广告和跟踪器,并允许自定义阻止的内容。
笔记
我们不会停在这里。 DNS沉没并不是一个不好的起点,但这只是开始。
Adguard Home提供了许多开箱即用的功能,无需安装和配置其他软件。我们希望它很简单,即使休闲用户也能以最小的努力进行设置。
笔记
可以通过安装其他软件或手动使用SSH终端并重新配置其中一个实用程序PI-HOLE组成的某些列出的功能。但是,我们认为,这不能合理地算作Pi-Hole的功能。
特征 | Adguard家 | pi-hole |
---|---|---|
阻止广告和跟踪器 | ✅ | ✅ |
自定义区块列表 | ✅ | ✅ |
内置DHCP服务器 | ✅ | ✅ |
https的管理接口 | ✅ | 有点,但是您需要手动配置LightTPD |
加密的DNS上游服务器(DNS-Over-HTTPS,DNS-Over-TLS,DNScrypt) | ✅ | (需要其他软件) |
跨平台 | ✅ | (不是本地,仅通过码头) |
作为DNS-Over-HTTPS或DNS-Over-TLS服务器运行 | ✅ | (需要其他软件) |
阻止网络钓鱼和恶意软件域 | ✅ | (需要非默认地位列表) |
父母控制(阻止成人领域) | ✅ | (需要非默认地位列表) |
强制安全搜索在搜索引擎上 | ✅ | |
每个客户(设备)配置 | ✅ | ✅ |
访问设置(选择谁可以使用AGH DNS) | ✅ | |
无根特权运行 | ✅ |
这取决于。
DNS sindholing能够阻止大量广告,但缺乏传统广告阻滞剂的灵活性和力量。您可以通过阅读本文对这些方法之间的区别有很好的印象,该文章将Android(传统的AD阻止器)的Adguard与主机级广告阻滞剂(几乎与基于DNS的功能中的阻滞剂相同)。对于某些用户来说,这种保护水平就足够了。
此外,使用基于DNS的阻滞剂可以帮助阻止广告,跟踪和分析请求,例如SMARTTV,智能扬声器或其他类型的IoT设备(您无法安装传统的广告阻滞剂)。
以下是DNS级阻滞剂无法阻止的一些示例:
YouTube,抽搐广告;
Facebook,Twitter,Instagram赞助帖子。
从本质上讲,任何与内容共享域的广告都不能被DNS级阻滞剂阻止。
将来是否有机会处理此问题? DNS永远不足以做到这一点。我们唯一的选择是使用像我们在独立的Adguard应用程序中所做的那样使用内容阻止代理。将来,我们将将此功能支持带给Adguard回家。不幸的是,即使在这种情况下,仍然会有这种情况是不够的,或者需要相当复杂的配置。
运行make init
以准备开发环境。
您将需要此建造Adguard Home:
GO V1.23或更高版本;
node.js v18.18或更高版本;
NPM V8或更高版本;
打开您的终端并执行以下命令:
git克隆https://github.com/adguardteam/adguardhomecd adguardhome 制作
警告
目前不支持非标准-j
标志,因此使用make -j 4
构建或设置MAKEFLAGS
以包括-j 4
可能会破坏构建。如果您确实设置了MAKEFLAGS
,并且您不想更改它,则可以通过运行make -j 1
覆盖它。
检查Makefile
以了解其他命令。
您可以为任何支持的操作系统/拱门建造Adguard Home。为了做到这一点,请在运行时将GOOS
和GOARCH
环境变量指定为make
。
例如:
env goos ='linux'goarch ='arm64'制造
或者:
制作鹅='linux'goarch ='arm64'
您将需要snapcraft
来准备发行版。安装后,运行以下命令:
使构建释放频道='...'版本='...'
请参阅build-release
目标文档。
运行make build-docker
在本地构建Docker映像(我们发布给Dockerhub的图像)。请注意,我们正在使用Docker Buildx来构建我们的官方形象。
您可能需要在使用这些构建之前准备:
(仅Linux)安装QEMU:
docker run -rm-私有的多门/qemu-user static -reset -p yes-credential是
准备建造者:
docker buildx create -name buildx-builder -driver docker-container -use
请参阅build-docker
目标文档。
当您需要每次重新编译生产版本的情况下调试前端,例如检查标签在表单上的外观时,您可以运行前端构建开发环境。
在单独的终端中,运行:
(cd./client/ && envondod_env ='开发'npm运行手表)
使用--local-frontend
Flag运行AdGuardHome
二进制文件,该标志指示Adguard Home忽略内置的前端文件,并使用./build/
Directory中的那些。
现在,您在./client/
目录中所做的任何更改都应重新编译并在Web UI上可用。确保您禁用浏览器缓存,以确保实际获取重新编译的版本。
欢迎您来叉这个存储库,进行更改并提交拉动请求。不过,请确保您遵循我们的代码指南。
请注意,我们不希望人们同时为UI和后端部分做出贡献。理想情况下,后端部分首先实现,即配置,API和功能本身。 UI零件可以在稍后由其他人的其他拉力请求实施。
您可以使用两个更新渠道:
beta
:Adguard Home的Beta版本。或多或少稳定的版本,通常每两周或更频繁地发布一次。
edge
:开发分支机构的最新版本的Adguard Home。每天将新的更新推向此频道。
有三个选项如何安装不稳定版本:
SNAP Store:寻找beta
和edge
通道。
Docker Hub:寻找beta
和edge
标签。
独立建造。使用自动安装脚本或查找Wiki上的可用版本。
安装Beta版本的脚本:
curl -s -s -l https://raw.githubusercontent.com/adguardteam/adguardhome/master/master/scripts/install.sh | sh -s -c beta
安装边缘版本的脚本:
curl -s -s -l https://raw.githubusercontent.com/adguardteam/adguardhome/master/master/scripts/install.sh | sh -s- -c edge
如果您遇到任何问题或有建议,请转到此页面,然后单击“新问题”按钮。请仔细遵循问题表中的说明,不要忘记从搜索重复项开始。
如果您想帮助Adguard家庭翻译,请在我们的知识库中了解有关翻译Adguard产品的更多信息。您可以为Crowdin的Adguardhome项目做出贡献。
您可以做出贡献的另一种方法是寻找标记为help wanted
问题,询问问题是否需要抓取,并发送PR修复该错误或实现该功能。
请注意,这些项目不隶属于Adguard,而是由第三方开发人员和粉丝制作的。
Adguard Home Remote:Joost的iOS应用程序。
@frenck的Python库。
@frenck的家庭助理加载。
@kongfl888的OpenWrt Luci应用程序(最初是@rufengsuixing)。
@bakito的adguardhome同步。
@lissy93的基于终端的,实时流量监控和adguard Home实例的统计信息
Adguard在Glinet路由器上的Adguard Home。
@gramakri的Cloudron应用程序。
Asuswrt-Merlin-Adguardhome-Installer @jumpsmm7 aka @SomeWhereOverTherainBow。
@andrea055的node.js库。
@sathshshiva的浏览器扩展。
@diasdmhub的Adguard Home的Zabbix模板。
NIKS255的巧克力包装。
没有这个软件是不可能的:
Go及其图书馆:
GCACHE
Miekg的DNS
go-yaml
服务
DNSproxy
urlfilter
Node.js及其库:
React.js
表格
还有更多的node.js软件包。
whotracks.me数据
您可能已经看到这里以前在这里提到过核心,但是我们已经在Adguard Home停止使用它。
有关正在使用的所有node.js软件包的完整列表,请查看client/package.json
文件。
我们的主要思想是您是一个应该控制数据的人。因此,Adguard Home不会收集任何用法统计信息,也不会使用任何Web服务,除非您将其配置为此,否则这是很自然的。另请参见“理论上可以通过Adguard Home一起发送的所有位置的隐私政策。