SSR(是什么就不用说了吧,避免关键字)来扶墙,但是用遇到一个问题,用手机看YouTube的时候,里面不少的广告,ios使用potatso lite,自带过滤广告模式,所以不用担心,但是安卓版的SSR客户端,即使加了过滤广告的ACL文件,也不能过滤YouTube的广告,要么就是需要root。折腾了一天,终于找到了不用root的办法。

一、修改VPS的hosts文件

vi /etc/hosts

这个是Linux系统的hosts文件所在,将hosts文件内容复制到改文件中即可。

一个可以过滤广告的hosts文件:

https://raw.githubusercontent.com/aoccin/adaway/master/hosts

里面有关于YouTube的规则,经过测试,能够过滤一部分的YouTube视频中的广告,但也有残留,总好过一点都不能过滤,每过几分钟就要手动关闭广告。

不过这个办法有一个缺点,得经常自己手动的去更新文件,相对繁琐。

二、自建DNS,自动更新hosts

通过doubi的一键搭建DNS服务器的脚本,来自动更新hosts文件。

安装DNS

执行脚本:

wget -N --no-check-certificate https://softs.fun/Bash/dowsdns.sh && chmod +x dowsdns.sh && bash dowsdns.sh

会看到这样的执行界面:

  DowsDNS 一键安装管理脚本 [vx.x.x]
  -- Toyo | doub.io/dowsdns-jc3 --
  
 0. 升级脚本
 ————————————
 1. 安装 DowsDNS
 2. 升级 DowsDNS
 3. 卸载 DowsDNS
————————————
 4. 启动 DowsDNS
 5. 停止 DowsDNS
 6. 重启 DowsDNS
————————————
 7. 设置 DowsDNS 基础配置
 8. 设置 DowsDNS 泛域名解析配置
 9. 查看 DowsDNS 信息
————————————
 
 当前状态: 已安装 并 已启动
 
 请输入数字 [0-8]:

自行选择安装即可,很简单的,基本就是一路回车,不再赘述。

这样这个VPS里面就假设好了一个DNS服务器,默认配置是可以供外部使用的,也就是你可以把它填到电脑的DNS中,以此为DNS。

过滤广告

编辑文件:

vi /usr/local/dowsDNS/conf/hosts_repository_config.json

将其中内容改为:

{
	"hosts":{
		"racaljk":"https://github.com/racaljk/hosts/raw/master/hosts",
		"adaway":"https://raw.githubusercontent.com/aoccin/adaway/master/hosts"
	},
	"wrcd":"https://raw.githubusercontent.com/liuyunbin/dowsDNS/master/data/wrcd.json"
}

保存退出。

修改系统DNS

修改Linux系统的默认DNS

vi /etc/resolv.conf

在第一行前,加入以下内容:

nameserver 127.0.0.1

重启VPS,这样这个DNS修改就生效了。Linux系统就使用本机搭建的DNS,这个DNS中包含了可以过滤广告的hosts文件,并且可以自动更新,也算是不错了。不过只有通过酸酸乳访问的网址才会按照hosts文件过滤广告,如果需要其中的youku等其它网址的过滤广告生效,则可以将其导入电脑或者手机的hosts文件中,手机需root。