pi-hole/pi-hole

GitHub: pi-hole/pi-hole

Pi-hole 是一个基于 DNS 拦截的广告与跟踪器屏蔽系统,通过本地网络设备实现全网去广告。

Stars: 56777 | Forks: 3027

#

Pi-hole website
Network-wide ad blocking via your own Linux hardware

Pi-hole® 是一个 [DNS 拦截](https://en.wikipedia.org/wiki/DNS_Sinkhole),无需安装任何客户端软件即可保护您的设备免受不良内容侵害。 - **易于安装**:我们的对话引导您在不到十分钟内完成简单的安装过程 - **坚决果断**:内容在 **非浏览器环境**(如广告充斥的移动应用和智能电视)中被拦截 - **响应迅速**:通过缓存 DNS 查询无缝提升日常浏览体验 - **轻量级**:在 [最低硬件和软件要求](https://docs.pi-hole.net/main/prerequisites/) 下运行流畅 - **功能强大**:提供经过质量保证的命令行界面以确保互操作性 - **洞察力强**:美观的响应式 Web 界面仪表板,用于查看和控制您的 Pi-hole - **多功能**:可选作为 [DHCP 服务器](https://discourse.pi-hole.net/t/how-do-i-use-pi-holes-built-in-dhcp-server-and-why-would-i-want-to/3026),确保 **所有** 设备自动受到保护 - **可扩展**:在服务器级硬件上安装时,每秒可处理 [数亿个查询](https://pi-hole.net/2017/05/24/how-much-traffic-can-pi-hole-handle/) - **现代化**:同时通过 IPv4 和 IPv6 拦截广告 - **免费**:开源软件,确保 **您** 是控制自身隐私的唯一责任人 ## 一步自动化安装 希望快速且方便地开始使用的用户可以使用以下命令安装 Pi-hole: ``` curl -sSL https://install.pi-hole.net | bash ``` ## 替代安装方法 通过 `bash` 管道安装具有 [争议性](https://pi-hole.net/2016/07/25/curling-and-piping-to-bash),因为它会阻止您阅读即将在系统上运行的 [代码](https://github.com/pi-hole/pi-hole/blob/master/automated%20install/basic-install.sh)。因此,我们提供这些替代安装方法,允许在安装前进行代码审查: ### 方法 1:克隆我们的仓库并运行 ``` git clone --depth 1 https://github.com/pi-hole/pi-hole.git Pi-hole cd "Pi-hole/automated install/" sudo bash basic-install.sh ``` ### 方法 2:手动下载安装程序并运行 ``` wget -O basic-install.sh https://install.pi-hole.net sudo bash basic-install.sh ``` ### 方法 3:使用 Docker 部署 Pi-hole 请参考 [Pi-hole Docker 仓库](https://github.com/pi-hole/docker-pi-hole) 以使用官方 Docker 镜像。 ## [安装后:让您的网络利用 Pi-hole](https://docs.pi-hole.net/main/post-install/) 运行安装程序后,您需要 [配置路由器,使 DHCP 客户端使用 Pi-hole 作为 DNS 服务器](https://discourse.pi-hole.net/t/how-do-i-configure-my-devices-to-use-pi-hole-as-their-dns-server/245)。此路由器配置将确保所有连接到您网络的设备在无需进一步干预的情况下屏蔽内容。 如果您的路由器不支持设置 DNS 服务器,您可以 [使用 Pi-hole 内置的 DHCP 服务器](https://discourse.pi-hole.net/t/how-do-i-use-pi-holes-built-in-dhcp-server-and-why-would-i-want-to/3026);请务必先在路由器上禁用 DHCP(如果该功能可用)。 作为最后的手段,您可以手动将每个设备设置为使用 Pi-hole 作为其 DNS 服务器。 ## 功能详解 ### [比光速还快的引擎](https://github.com/pi-hole/ftl) [FTLDNS](https://github.com/pi-hole/ftl) 是一个轻量级的专用守护进程,用于提供 Web 界面所需的统计信息,其 API 可以轻松集成到您自己的项目中。正如名称所暗示的,FTLDNS 在 **非常迅速** 地完成这一切! 您可以集成的部分统计信息包括: - 被屏蔽的域名总数 - 今日 DNS 查询总数 - 今日被屏蔽的广告总数 - 广告屏蔽百分比 - 唯一域名 - 转发的查询(发送至您选择的上游 DNS 服务器) - 缓存的查询 - 唯一客户端 通过以下方式访问 API: - 浏览器:http://pi.hole/api/docs - `curl`:`curl --connect-timeout 2 -ks "https://pi.hole/api/stats/summary" -H "Accept: application/json"`; - 命令行——示例:`pihole api config/webserver/port` 或 `pihole api stats/summary`。 ### 命令行界面 [pihole](https://docs.pi-hole.net/core/pihole-command/) 命令具备完全管理 Pi-hole 所需的所有功能,无需依赖 Web 界面。它快速、用户友好,且可被任何理解 `bash` 的人审计。 一些显著的功能包括: - [允许列表、拒绝列表(旧称白名单、黑名单)以及正则表达式](https://docs.pi-hole.net/core/pihole-command/#allowlisting-denylisting-and-regex) - [调试工具](https://docs.pi-hole.net/core/pihole-command/#debugger) - [查看实时日志文件](https://docs.pi-hole.net/core/pihole-command/#tail) - [更新广告列表](https://docs.pi-hole.net/core/pihole-command/#gravity) - [查询广告列表以获取被屏蔽的域名](https://docs.pi-hole.net/core/pihole-command/#query) - [启用与禁用 Pi-hole](https://docs.pi-hole.net/core/pihole-command/#enable-disable) - ……以及 **更多** 功能! 您可以阅读我们的 [核心功能详解](https://docs.pi-hole.net/core/pihole-command/#pi-hole-core) 获取更多信息。 ### Web 界面仪表板 这个 [可选仪表板](https://github.com/pi-hole/web) 允许您查看统计信息、更改设置并配置您的 Pi-hole。它是命令行界面的强大功能,且无需学习曲线! 一些显著的功能包括: - 移动端友好的界面 - 密码保护 - 详细的图表和环形图 - 域名和客户端的顶级列表 - 可筛选和可排序的查询日志 - 用户定义时间范围内的长期统计数据 - 轻松管理和配置 Pi-hole 功能的能力 - ……以及命令行界面的所有主要功能! 有几种方式可以 [访问仪表板](https://discourse.pi-hole.net/t/how-do-i-access-pi-holes-dashboard-admin-interface/3168): 1. `http://pi.hole/admin/`(在使用 Pi-hole 作为 DNS 服务器时) 2. `http:///admin/`
标签:DHCP 服务器, DNS sinkhole, DNS 拦截, IPv4, IPv6, Linux 服务器, MacOS取证, Pi-hole, PowerShell, Web 仪表盘, 企业网络, 去广告, 命令行界面, 家庭网络, 广告屏蔽, 日志审计, 流量控制, 硬件要求低, 缓存 DNS, 网络优化, 网络广告, 网络广告过滤, 网络隐私, 自动化安装, 请求拦截