在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

很多人可能會問:AdGuard Home是幹嘛用的?假如我們把整個互聯網比喻成一個城市的供水,每個地區自來水廠提供的水質和你所在管網末端位置的不同,有些家庭會明智的選擇使用前置淨水器,可以解決管道中的二次汙染、軟化水質、阻止水垢、防止鏽蝕、保護淨水器,當然還有太陽能和燃氣熱水器等等,但最終享受乾淨水的是人。精緻的家庭還會使用廚下式廚餘垃圾處理器,而很多的家庭也許都不知道什麼是前置淨水器、什麼是廚餘處理器。互聯網和供水一樣,有大帶寬和小帶寬,有管網汙染的問題,有被政府監控和被黑客偷窺的問題,還有煩人的廣告問題,無論是視頻前和視頻中的廣告,所以在入戶光貓之後的主路由器上安裝並使用私有DNS服務器(AdGuard Home),就可以有助於“清洗流量”。

根據AdGuard Home 官網介紹,AdGuard Home 是一款全網廣告攔截與反跟蹤軟件。在您將其安裝完畢後,它將保護您所有家用設備,同時您不再需要安裝任何客戶端軟件。隨著物聯網與連接設備的興起,掌控您自己的整個網絡環境變得越來越重要。

簡單的點講就比如Google的8.8.8.8,阿里雲的223.5.5.5,114的114.114.114.114,還有Cloudflare的1.1.1.1,這些都是提供DNS服務的公共DNS服務器。而AdGuard Home在給我們提供DNS服務的同時還提供去廣告的功能,這就有點意思了吧~~

在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器


博主是用PVE作為宿主機的環境,所以就在PVE系統裡面安裝了這個AdGuard Home,來看看怎麼安裝和使用吧。

一、安裝教程

1、下載AdGuardHome_PVE-LXC.tar.gz鏡像文件:打開下載地址https://dl.gxnas.com,進入“Proxmox-VE(PVE虛擬平臺)”文件夾,找到“AdGuardHome_PVE-LXC.tar.gz”,右鍵複製下載鏈接到迅雷下載;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器


2、通過SSH工具(本教程採用WinSCP),把下載的“AdGuardHome_PVE-LXC.tar.gz”,上傳到PVE系統下的“/var/lib/vz/template/cache”裡面;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

3、通過網頁訪問PVE後臺,點擊右上角“創建CT”;

在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器


4、創建:LXC容器,“一般”標籤欄的輸入以下信息:

主機名稱:自己隨便寫

密碼:自己設置

確認密碼:同上

然後點下一步


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

5、點“模板”標籤欄的“模版”下拉菜單,選擇“AdGuardHome_PVE-LXC.tar.gz”,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

6、“根磁盤“標籤設置磁盤大小2G,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

7、”CPU“標籤設置1核,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

8、”內存“標籤設置內存1024M ,交換分區用默認的512,下一步;

在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器


9、”網絡“標籤的IPv4可以根據自己的內網設置靜態IP(本教程內網是192.168.1.X的號段,所以設置192.168.1.2/24),IPv6設置DHCP,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

10、“DNS”標籤這裡不需要設置,直接下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

11、“確認”標籤,最後確認一下信息,如果正確無誤就勾選左下角的“創建後啟動”再點“完成”。


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

二、相關的設置

1、回到PVE系統的“數據中心”,找到剛剛建立的AdGuard容器,點它進入控制檯,輸入登錄的用戶名root,回車,再輸入之前設置的密碼,輸入ip addr回車,檢查一下顯示的IP地址是否與剛才安裝時設置的IP地址一致;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

2、輸入ping baidu.com,回車,檢查容器能否連通外網;有外網IP地址返回的表示外網連接正常,按一下Ctrl+C結束測試。


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器


3、在局域網電腦的瀏覽器地址欄輸入剛才安裝AdGuardHome設置的IP:3000(比如我的是192.168.1.2:3000);

4、開始配置;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

5、網頁管理界面,我們用默認的端口,不需要更改,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

6、身份認證,需要自己設置用戶名和密碼,下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

7、下一步;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

8、打開儀表盤;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

9、主界面是這樣的;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

10、點最上面的菜單欄“設置”-“常規設置”,這四個選項根據自己要求設置(博主勾了1、2、4),然後拉到下面,點保存;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

11、點最上面的菜單欄“設置”-“DNS設置”,上游DNS這欄輸入(由於每個人使用的寬帶不同,所以上游DNS使用哪個,請根據自己的情況填寫,後面會講):

tls://dns.google tls://1.1.1.1 tls://1.0.0.1

然後拉到下面點應用,會看到系統提示“上游DNS已更新”;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

12、點最上面的菜單欄“過濾器”,“添加過濾器”,名稱隨意設置,地址輸入https://hosts.nfz.moe/127.0.0.1/full/hosts,點“添加過濾器”;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

13、看到系統提示“網址添加成功”後,點打叉關掉提示;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

14、點“檢查更新”;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

15、系統更新完成會提示“所有過濾器已更新到最新”;


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

三、更改網關/路由的DNS

由於每個人使用的網關/路由都各有不同,因此這裡不做具體描述。請自行把內網的DNS主服務器IP地址設置成我們剛剛安裝的AdGuardHome的內網IP地址,DNS副服務器設置為了其他公共的DNS服務器IP(拒絕使用運營商的DNS)。博主的網關是自己編譯的軟路由openwrt X64的版本,具體的設置如下,大家借鑑一下吧。


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

四、最後來看看效果如何


在PVE下用 AdGuard Home搭建一個帶廣告過濾的私有DNS服務器

五、官方網站及項目地址

1、AdGuard官網:https://adguard.com/

2、AdGuardHome項目地址:https://github.com/AdguardTeam/AdGuardHome


AdGuard Home 優化部署

一、上游DNS設置

1、不使用ISP默認DNS的好處是可以避免ISP通過DNS分析和掌握你的上網行為。所以我們把上游DNS更換成DNS over TLS的(博主使用的就是這個):

tls://dns.adguard.com tls://dns.quad9.net tls://dns.google tls://1.1.1.1 tls://1.0.0.1

2、當然,你也可以使用其他的公共DNS(國內公共的DNS暫不支持DNS over TLS),比如:

223.5.5.5 223.6.6.6 114.114.114.114 114.114.115.115 119.29.29.29 119.28.28.28

3、如果你想啟用ipv6的DNS,可以添加以下幾個(但是啟用ipv6後,不能過濾視頻中的廣告):

2409:8028:2000::1111 2409:8028:2000::2222 2620:0:ccc::2 2620:0:ccd::2

二、過濾器

雖然AdGuardHome內置了幾條廣告過濾規則,但在這些規則在中國感覺有點水土不服。如果要想完美的實現廣告過濾,還需要自己添加規則。AdGuard Home 兼容 Adblock 過濾規則語法,你可以使用一些比較知名的 Adblock 過濾規則。目前好用的過濾規則還是有很多的,下面推薦一些比較常用的:

1、EasyList China : 國內網站廣告過濾的主規則。

https://easylist-downloads.adblockplus.org/easylistchina.txt

2、EasyPrivacy : 隱私保護,不被跟蹤。

https://easylist-downloads.adblockplus.org/easyprivacy.txt

3、CJX's Annoyance List : 過濾煩人的自我推廣:補充 EasyPrivacy 隱私規則。

https://raw.githubusercontent.com/cjx82630/cjxlist/master/cjx-annoyance.txt

4. 廣告淨化器規則 : 支持國內大部分視頻網站的廣告過濾。

http://tools.yiclear.com/ChinaList2.0.txt

如果你覺得過濾得還不夠,也可以在“自定義過濾器規則”按照以下過濾規則自己編寫:

||example.org^ – 攔截 example.org 域名及其所有子域名

@@||example.org^ – 放行 example.org 及其所有子域名

127.0.0.1 example.org – 將會把 example.org(但不包括它的子域名)解析到 127.0.0.1

! 註釋符號,表示這是一行註釋

# 這也是註釋符號,同樣表示這是一行註釋

/REGEX/ – 正則表達式模式

具體請參考《官方說明

三、配置文件調整

AdGuard Home 所有的參數配置都保存在一個名為 AdGuardHome.yaml 的配置文件中。這個配置文件默認路徑通常為 AdGuard Home 二進制文件 AdGuardHome 所在的目錄,比如:/root/AdGuardHome/AdGuardHome.yaml。這裡我們只需調整以下兩個參數,就是可以明顯提升 AdGuard Home 的 QPS 能力。

ratelimit : DDoS 保護,客戶端每秒接收的數據包數。默認值是 20,建議禁用該參數(將值改為 0)。

blockedresponsettl : TTL 緩存時間,默認值是 10,建議設置為 60 。


分享到:


相關文章: