AdGuard Home不只是拿來擋廣告 / AdGuard Home Is More Than Just an Ad Blocker
自從裝起了AdGuard Home來擔任我住處的DNS伺服器之後,我用它擋掉了很多奇怪的廣告。除此之外,它還能拿來自訂Domain Name,真的是太實用了!
Since I set up AdGuard Home as the DNS server for my place, it has blocked a lot of weird ads. Besides that, it can also be used for custom domain names, which is really practical!
AdGuard Home
https://adguard.com/zh_tw/adguard-home/overview.html
AdGuard Home 是一款免費開源的全網路廣告和追蹤器阻擋軟體(Network-wide ad and tracker blocking software)。它作為一個 DNS 伺服器(DNS Server)運作,將追蹤網域重新導向至一個「黑洞」(Black hole),進而防止你的裝置連線到這些帶有廣告或危險的伺服器。
AdGuard Home 不僅可以阻擋網頁和應用程式中的廣告及追蹤器,還能保護你的隱私和資料,進而加快網頁載入速度。它支援 DNSSEC(域名系統安全擴充, Domain Name System Security Extensions),提供可自訂的過濾清單和家長控制功能。你可以透過網頁介面或手機應用程式輕鬆管理過濾程序。此外,AdGuard Home 也提供 Docker(軟體容器化平台)安裝方式,方便在不同平台上部署。
AdGuard Home的安裝與設定 / Installing and Configuring AdGuard Home
https://adguard.com/zh_tw/adguard-android/overview.html
一開始是我朋友推薦我在手機安裝AdGuard,說可以防止手機連上廣告網站。我看了看AdGuard的原理,想說弄個DNS伺服器好像也不難,而且中國大陸那邊很多網友也都會架設AdGuard來作為居家資安的第一道防護,那我也來架設看看好了。
https://github.com/AdguardTeam/AdGuardHome?tab=readme-ov-file#getting-started
佈署AdGuard Home的方式很多,我參考了「Install AdGuard on Ubuntu 20.0.4 using Proxmox and one line of command」這篇的做法,使用的是自動安裝腳本安裝。我在Proxmox VE裡面建立CT容器,作業系統是Ubuntu 22.04。安裝AdGuard Home的自動腳本如下:
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
第一次安裝完後,連上AdGuard Home伺服器的網址,會出現初次佈署的設定。
參考佈署說明設定完之後就可以登入AdGuard Home了。
建立好AdGuard Home之後,我把家裡路由器的DHCP中DNS伺服器的設定改成AdGuard Home的網址。
然後確認我透過DHCP連線的裝置,DNS使用的是AdGuard Home伺服器。
接著在AdGuard Home的Query Log裡面,就可以看到裝置連上網路查詢的DNS。
有些可能是廣告的網址就會被AdGuard Home擋下來。這樣就初步設定完成了。
要用那些禁用清單? / Which Banned Lists Should Be Used?
AdGuard Home的原理是設定一堆黑名單來阻止裝置連上黑名單的網站,而這個黑名單其實是由不同單位各自維護與管理的清單。在DNS blocklists裡面我們可以看到很多不同的清單,有勾選套用的清單,AdGuard Home就會把清單裡面的規則加入黑名單。
一開始我嘗試把所有清單都勾選,但很快我就發現網路無法正常運作。全部勾選之後,我自己的Blog「布丁布丁吃什麼?」會無法開啟,而且巴哈姆特動畫瘋也會因為無法播放廣告而進入不了動畫本身。可能是某些清單包含了過於激進的擋廣告策略吧,這樣下去可不行。所以現在我只有勾選預設的AdGuard DNS filter而已。
擋掉聯想平板奇怪的查詢 / Blocking Strange Queries from Lenovo Tablet
在觀察Query Log的時候,我發現聯想的平板一直在跟「lenovomm.com」網域的伺服器連線,而且連線的頻率非常頻繁。我感覺這不太像是系統更新的檢查,更像是平板自動傳送訊息給遠端的伺服器。
於是我在Custom filtering rules裡面,將平板持續傳送的這些網域禁止掉。後來看起來平板似乎也沒有什麼異狀。
不過如果可以的話,我還是希望能將平板裡面奇怪的新聞查詢功能也一起關掉。可惜現在我還找不到怎麼在AdGuard Home阻止它們。
自訂Domain Name / Customize the Domain Name
AdGuard Home還一項特殊功能:DNS Rewrites。
我們可以自行設定IP跟Domain Name,而這個Domain Name只有使用AdGuard Home作為DNS的裝置才能正確識別。
如此一來,我們就可以用自訂的Domain Name連線。這樣我們就可以用比較容易的Domain Name來稱呼設備,未來就不用記IP數字了。
結語 / Conclusion
其實當初我買Router OS的其中一個原因是聽說它可以裝AdGuard Home。不過我看了「RouterOS 使用容器搭建 AdGuard Home」這篇的說法,原來它是將AdGuard Home用container的形式安裝到Router OS,整個操作頗為複雜。因此我才決定改用Proxmox VE來佈署AdGuard Home,整個程序就簡單很多。
在AdGuard佈署的過程中我還犯了很多錯。像是把8.8.8.8當作是第二Name Server,結果被AdGuard Home擋掉的網站通通都從8.8.8.8查了回來。結果就什麼也沒擋到。
然而AdGuard Home只能擋掉網頁上面的佔版廣告,或是防止裝置探訪特定網域。如果是應用程式裡面結合的廣告,通常都不能把它擋下。例如YouTube的內建廣告、或是巴哈姆特動畫瘋影片前的廣告。擋掉的話就會連影片都無法觀看。
https://www.pixiv.net/artworks/119644871
儘管如此,AdGuard Home將大部分網頁上的佔版廣告擋掉的這個功能,已經幫了很大的忙了。現在看很多網站會出現莫名其妙的空白區域,或是連線錯誤的訊息。搞不好哪裡原本就是廣告的位置呢。
這篇關於使用AdGuard擋廣告跟設定Domain Name的過程就到此為止了。文章的最後要來問大家的是,你對網路廣告的看法是?
- 1. 還是擋掉吧。都2025年了,網頁的佔版廣告還能賺錢嗎?
- 2. 留著廣告吧。偶爾也會看到一些有趣的內容,讓人不禁想要點進去看看啊。
- 3. 有廣告嗎?我都買YouTube Premium。
- 4. 其他:歡迎在下面留言,分享你的看法吧!