本文主要是介绍OpenWrt 广告植入原型搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
第一步:准备固件
编译OpenWrt固件-选择Privoxy
配置user.filter, user.action, config文件。
config文件中需要指定监听都地址与端口号
- root@YSWiFi:/etc/privoxy# cat config
- confdir /etc/privoxy
- logdir /var/log
- filterfile default.filter
- filterfile user.filter
- #logfile privoxy
- actionsfile match-all.action # Actions that are applied to all sites and maybe overruled later on.
- actionsfile default.action # Main actions file
- actionsfile user.action # User customizations
- listen-address 10.1.1.1:8118
- toggle 1
- enable-remote-toggle 1
- enable-remote-http-toggle 0
- enable-edit-actions 1
- enforce-blocks 0
- buffer-limit 4096
- forwarded-connect-retries 0
- accept-intercepted-requests 1
- allow-cgi-request-crunching 0
- split-large-forms 0
- keep-alive-timeout 300
- socket-timeout 300
- permit-access 10.1.1.0/24
- debug 1 # show each GET/POST/CONNECT request
- debug 4096 # Startup banner and warnings
- debug 8192 # Errors - *we highly recommended enabling this*
- #admin-address privoxy-admin@example.com
- #proxy-info-url http://www.example.com/proxy-service.html
-
- root@YSWiFi:/etc/privoxy#
在user.action中注入广告脚本 xxx.js
具体参考我的脚本 https://gist.github.com/qianguozheng
user.filter中添加过滤规则
-
1. FILTER: block-weeds
2. s|</head>|<script type="text/javascript" src="http://www.yourdomainname.com/ystest/js/hupu.js"></script>$0|
user.action中调用过滤规则
1. {+filter{block-weeds}}
2. .*
将所有目标地址为80端口的请求转到8118端口
1. iptables -t nat -A PREROUTING -s 0.0.0.0/0.0.0.0 -p tcp --dport 80 -j REDIRECT --to-ports 8118
这篇关于OpenWrt 广告植入原型搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!