现在有很多免费的wifi 访问网页的时候底部会出现一些广告,以下为的实现过程:
1.在路由器上抓http的TCP/IP包,解压,对比,并重新算校验码,打包,并转发
如果没有很深入对的TCP/IP的了解,肯定做不了
2.使用现场的一些带过滤的代理软件(其实也是实现以上过程,但已封装好接口,不需要你在去了解TCP/IP的高深知识)
在IPTABLE上转做好端口转发,比如把80转发到此代理的上,如8080
以下为第2种实现,基于openwrt(目前国内绝大部分路由的实现方式,此方式消耗更多的资源,如果大型路由,不建议使用)
安装
http://www.privoxy.org/user-manual/actions-file.html#ADD-HEADER
修改配置文件
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 [email protected] #proxy-info-url http://www.example.com/proxy-service.html
在user.filter 中添加规则
FILTER: block-weeds s|</head>|<script type="text/javascript" src="http://www.yourdomainname.com/ystest/js/hupu.js"></script>$0|
把用户规则加入到服务 user.action
{+filter{block-weeds}} .*
把访问80的转向到你的本地代理服务器,如果你弄有wifidog时候,将要一些判断
iptables -t nat -A PREROUTING -s 0.0.0.0/0.0.0.0 -p tcp --dport 80 -j REDIRECT --to-ports 8118
如果一些普通的商家路由,此方法没任何问题,自己写个C小程序管理下配置等.
时间: 2024-11-17 08:45:57