教你如何搭建搭建防污染的去广告DNS

需求分析:

  • 去广告,清爽上网
  • 防污染,有一个干净的解析环境
  • 有缓存,长久使用加快解析速度
  • 加密传输,防止运行商劫持

方案:

  • 使用overture + AdGuradHome的组合
  • Overture负责国内外解析分流,防止部分dns返回不正确的解析
  • AdGuardHome负责去广告,以及dns解析的加密

你需要了解的前置知识:

  1. ssh连接服务器,如使用FinalShell
  2. 了解 vi 这一Linux下编辑器的使用

    • i 进入编辑模式
    • 编辑完成后按 Esc 键退出编辑模式
    • 输入 :wq 保存并退出

Overture安装及配置

  1. 下载Overture的程序包

    • 打开 这个链接 找到「overture-linux-amd64.zip」
    • 右键复制链接,下载到你的服务器上
    • 例如

      mkdir /opt/overture
      cd /opt/overture
      wget https://hub.fastgit.org/shawn1m/overture/releases/download/v1.7/overture-linux-amd64.zip
  2. 解压

    • unzip overture-linux-amd64.zip
  3. 下载相关域名、IP列表

    wget https://raw.fastgit.org/17mon/china_ip_list/master/china_ip_list.txt
    curl https://raw.fastgit.org/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf  | sed 's/server=\///g;s/\/114.114.114.114//g' > china_list1.txt
    curl https://raw.fastgit.org/hq450/fancyss/master/rules/WhiteList_new.txt  | sed 's/Server=\///g;s/\///g' > china_list2.txt
    cat china_list1.txt china_list2.txt | sort -u > china_list.txt
    curl https://raw.fastgit.org/Loukky/gfwlist-by-loukky/master/gfwlist.txt | base64 -d | sort -u | sed '/^$\|@@/d'| sed 's#!.\+##; s#|##g; s#@##g; s#http:\/\/##; s#https:\/\/##;' | sed '/\*/d; /apple\.com/d; /sina\.cn/d; /sina\.com\.cn/d; /baidu\.com/d; /qq\.com/d' | sed '/^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$/d' | grep '^[0-9a-zA-Z\.-]\+$' | grep '\.' | sed 's#^\.\+##' | sort -u > gfwlist.txt
    curl https://raw.fastgit.org/hq450/fancyss/master/rules/gfwlist.conf | sed 's/ipset=\/\.//g; s/\/gfwlist//g; /^server/d' > koolshare.txt
    cat gfwlist.txt koolshare.txt | sort -u > gfw_list.txt
    rm -rf gfwlist.txt  koolshare.txt china_list1.txt china_list2.txt
  4. 修改配置文件

    • 这里贴出一个参考,已经试过可以正常运行
    • 删掉原来的,填入下面的

      rm -rf config.yml
      vi config.yml
bindAddress: :5352
debugHTTPAddress: 127.0.0.1:5555
dohEnabled: false
primaryDNS:
  - name: Ali
    address: https://dns.alidns.com/dns-query
    protocol: https
    socks5Address:
    timeout: 6
    ednsClientSubnet:
      policy: auto
      externalIP:
      noCookie: true
  - name: Dnspod
    address: https://doh.pub/dns-query
    protocol: https
    socks5Address:
    timeout: 6
    ednsClientSubnet:
      policy: auto
      externalIP:
      noCookie: true
alternativeDNS:
  - name: Google
    address: dns.google:853@8.8.4.4
    protocol: tcp-tls
    socks5Address:
    timeout: 6
    ednsClientSubnet:
      policy: auto
      externalIP:
      noCookie: true
  - name: Cloudflare
    address: one.one.one.one:853@1.0.0.1
    protocol: tcp-tls
    socks5Address:
    timeout: 6
    ednsClientSubnet:
      policy: auto
      externalIP:
      noCookie: true
onlyPrimaryDNS: false
ipv6UseAlternativeDNS: false
alternativeDNSConcurrent: false
whenPrimaryDNSAnswerNoneUse: alternativeDNS
ipNetworkFile:
  primary: ./china_ip_list.txt
  alternative: ./ip_network_alternative_sample
domainFile:
  primary: ./china_list.txt
  alternative: ./gfw_list.txt
  matcher: suffix-tree
hostsFile:
  hostsFile: ./hosts_sample
  finder: full-map
minimumTTL: 0
domainTTLFile: ./domain_ttl_sample
cacheSize: 1000
cacheRedisUrl:
cacheRedisConnectionPoolSize:
rejectQType:
  - 255
  1. 配置开机自启动
  • 输入 vi /etc/systemd/system/overture.service 填入如下内容
[Unit]
Description=overture
After=network.target
[Service]
ExecStart=/opt/overture/overture-linux-amd64 -c /opt/overture/config.yml
Restart=on-abort
[Install]
WantedBy=multi-user.target
  1. 启动Overture
systemctl enable overture
systemctl start overture

安装AdGuardHome

  1. 打开这个链接 ,找到 「AdGuardHome_linux_amd64.tar.gz」,下载到你的服务器上

    • 例如:

      cd /opt
      wget https://hub.fastgit.org/AdguardTeam/AdGuardHome/releases/download/v0.105.1/AdGuardHome_linux_amd64.tar.gz
  2. 解压

    • 如:

      tar -zxvf AdGuardHome_linux_amd64.tar.gz
  3. 安装

    cd AdGuardHome
    ./AdGuardHome -s install
  4. 放行3000 853端口,这个自己去了解
  5. 打开 你的IP:3000 ,开始配置
  6. 第一个端口(默认3000),为web界面的访问端口,自己随意更改
  7. 第二个端口(默认53)为dns的默认端口,如果你不使用dns明文传输,建议改掉
  8. 接下来的账号密码设置自己搞一下

配置AdGuardHome

  • 如果你overture配置文件使用的上方的,可以照抄,否则根据自己情况修改

DNS设置

  1. 修改上游dns服务器

    • 点击 设置---DNS设置
    • 输入 127.0.0.1:8953
    • 点击「并行请求」
    • 向下滑,点击「应用」
  2. DNS服务设定

    • 将「速度限制」改为0
    • 将 「使用客户端子网地址」勾选
    • 点击「保存」
  3. DNS缓存配置

    • 缓存大小改为0
    • 覆盖最小TTL值改为300
    • 覆盖最大TTL值改为7200
    • 点击「保存」

加密设置

提示

  1. 勾选 「启用加密」
  2. 「填写需要使用的域名」
  3. 证书,选择「粘贴证书内容」,将ssl证书文件中以.crt结尾的文件用文本编辑软件打开,复制进去
  4. 私钥,选择「粘贴私钥内容」,将ssl证书文件中以.key结尾的文件用文本编辑软件打开,复制进去
  5. 点击「保存配置」

广告过滤规则配置

  1. 点击过滤器---dns封锁名单
  2. 点击「添加阻止列表」
  3. 点击「添加一个自定义列表」
  4. 名称输入HalfLife,也可以随意输入......
  5. URL输入https://cdn.jsdelivr.net/gh/o0HalfLife0o/list@master/ad.txt

使用

  • 点击 设置向导---DNS隐私
  • 根据提示操作即可
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇