为什么要在 DNS 层面拦截恶意网站
钓鱼链接通常出现在你无法掌控的地方:短信、电子邮件、二维码、广告。浏览器警告只覆盖提供它的那个浏览器,广告拦截扩展也只覆盖安装它的那个浏览器。Mac 上的其他一切,从邮件应用到向你展示广告的应用,都得不到保护。
任何应用在打开网站之前,都必须先查询该网站的名称。Web Protection 就位于这一步。当某次查询的名称在你的某个拦截列表中时,你的 Mac 会立即回答“未找到”,无论是哪个应用发出的请求,该网站都不会加载。这样一来,它就能一次性拦截你 Mac 上所有浏览器中的广告,而无需在每个浏览器里装一个扩展。
三个开关
Web Protection 的列表分为三个类别,每个类别都有自己的开关。你首次开启时,三个开关都是打开的。
| 开关 | 拦截内容 |
|---|---|
| Phishing & Malware | 网络钓鱼页面、恶意软件下载、命令与控制服务器,以及加密劫持。 |
| Scams & Fake Shops | 假冒商店、假冒流媒体网站、订阅陷阱和其他骗局。 |
| Ads & Trackers | 广告网络、跟踪器、分析和遥测,覆盖每个应用和浏览器。 |
这些列表由公开的 HaGeZi DNS 拦截列表构建而成:网络钓鱼和恶意软件使用其威胁情报列表,诈骗使用其假冒网站列表,广告和跟踪器则使用其 multi 列表。我们的服务器每四小时根据这些来源重新生成列表,因此你的 Mac 下载的每次更新都包含自上一次以来被举报的网站。
自动保持最新的列表
Web Protection 运行在 macOS 网络扩展中,与应用分开,列表由该扩展自己下载。Tidy My Mac 关闭时它们也会保持最新,拦截照常进行。
- 列表每天更新,如果你在 Settings › Scheduled Scans 中设为每周,则每周更新。Update Lists Now 会立即获取它们。
- 没有变化的列表不会重复下载,而且只有在某个类别的开关打开时才会下载该类别。
- 列表只来自 tidymymac.com,并附带签名的清单。你的 Mac 在使用每个列表文件之前,都会检查签名以及该文件的指纹。更新失败时,会继续使用上一份完好的副本。
每张类别卡片都会显示其列表包含多少个网站以及上次更新的时间。某个类别在其列表首次下载完成后才开始拦截。
你自己的允许和拦截列表
拦截列表偶尔会误伤你需要的网站。Recently Blocked 标签页会列出每个被拦截的网站名称、拦截原因(Phishing / Malware、Scam、Ad / Tracker 或 Your list)、拦截次数以及时间。点击 Allow,它就不会再被拦截。
Always Allow 和 Always Block 可接受任何域名,例如 example.com,并同时涵盖其子域名。你可以粘贴完整的链接;它只会保留网站名称。你的允许列表优先于所有列表,而你的拦截列表即使三个开关全部关闭也依然有效。
状态行会统计自你的 Mac 启动以来检查和拦截了多少次查询。Recently Blocked 列表只保存在你 Mac 的内存中,在重启或点击 Clear 时会被清空。
它不涵盖的内容
DNS 拦截只能看到经由 macOS 的查询。有几种情况会绕过它:
- 设置为使用自带安全 DNS 的浏览器,例如 Chrome 或 Firefox 的“安全 DNS”设置,会让查询绕过 macOS,所以 Web Protection 看不到它们。
- 开启 iCloud 专用代理的 Safari 也是如此。
- 与你正在阅读的页面使用同一网站名称投放的广告,无法与页面本身区分开,因此不会被拦截。
不会出现拦截页面:被拦截的网站会像输错地址一样加载失败。如果你信任的网站无法使用,请在 Recently Blocked 中查找它。
开启方法
点击 Turn On。如果你之前还没有为 Firewall 这样做过,macOS 会请你在“系统设置”→“通用”→“登录项与扩展”→“网络扩展”中允许 Tidy My Mac 的扩展,然后请你添加代理配置。之后,Web Protection 会在“系统设置”→“网络”→“过滤器和代理”中显示为 Tidy My Mac Web Protection。
查询在你的 Mac 上检查。被拦截的名称在你的 Mac 上直接作答;其他所有查询都原样发送到你的网络已在使用的 DNS 服务器,与没有 Web Protection 时完全一样。Web Protection 发出的唯一请求是下载它的列表,其中不包含任何关于你所访问网站的信息。隐私政策对此有说明。
关于Web Protection的常见问题
你的 Mac 会看到,别人看不到。每次查询都与存储在你 Mac 上的列表比对,你访问的网站绝不会发送给我们或任何其他人。下载列表仅仅是一次下载;隐私政策准确说明了该请求包含的内容。
不会。未被拦截的查询会原样发送到它们原本要去的那个 DNS 服务器。你的 Mac 会继续使用你的网络或你自己的设置提供的 DNS。
可以,前提是该浏览器或应用使用 macOS 进行查询,并且 Ads & Trackers 开关处于打开状态。使用自带安全 DNS 的浏览器,以及开启 iCloud 专用代理的 Safari,会绕过它,而与页面来自同一网站的广告,也无法用这种方式拦截。
在 Recently Blocked 中找到它并点击 Allow,或者把它添加到 Always Allow 下。允许某个域名也会允许它的子域名,而且你的允许列表优先于所有拦截列表。
Web Protection 拦截的是网站,对每个应用生效。Firewall 拦截的是应用,针对每个网站。它们运行在同一个扩展中,你可以任选其一,也可以两者都用。
