BYOPPP - 构建你自己的隐私保护代理
我最近读到一篇关于在树莓派上搭建隐私代理服务器的博文,这让我开始思考如何将其应用于安卓手机,既能保护隐私又能屏蔽烦人的广告。
由于我使用的是三星Galaxy S3 LTE(搭载基于硬件的Knox计数器),现在root手机会破坏Knox并丧失保修。这意味着我必须在非root环境下解决这个问题。幸运的是,新版安卓系统支持免root使用VPN,但设置全局系统代理仍需要root权限。
不过借助iptables和Privoxy的组合方案,这个问题迎刃而解。
构建隐私保护代理的组件清单:
- 一台(或多台)廉价VPS服务器
- 可靠的VPN程序
- Privoxy
- iptables
VPS服务器
推荐使用Amazon EC2的微实例,价格低廉(甚至免费),资源完全够用。我目前使用Ubuntu免费套餐运行良好。选择距离最近的AWS区域(例如我选择欧盟-爱尔兰),10分钟内即可完成Ubuntu服务器搭建。
VPN配置
推荐使用OpenVPN AS免费版(注意服务器和客户端都需使用2.0.6或更高版本)。其提供图形化配置界面和安卓/iOS/Windows/Linux/OSX的一键安装客户端。
关键配置参数:
- 使用TCP 443和UDP 53端口
- 优先选择UDP协议以获得更好性能
- VPN模式选择"Layer 3 (routing/NAT)"
- 记得在AWS安全组中开放VPN端口
其他重要设置:
- 允许VPN客户端访问服务器端私有子网:是
- 客户端网络流量通过VPN路由:是
Privoxy安装
通过apt-get install privoxy
安装后,需修改/etc/privoxy/config
文件:
|
|
注意在AWS安全组中限制仅VPN用户可访问Privoxy服务器。
启动命令:service privoxy start
设置开机自启:update-rc.d privoxy defaults
iptables配置
将所有VPN客户端的web流量重定向到Privoxy:
|
|
可选配置其他端口过滤规则,根据Linux发行版设置规则持久化。
效果测试
连接VPN后可以看到广告拦截效果对比:
- 愤怒的小鸟游戏:使用Privoxy前后对比
- 手电筒应用:广告拦截效果展示
注意事项
- 本方案不提供IP层匿名性
- 网络连接中断时VPN会断开
- SSL网站仍可能通过域名泄露隐私
额外推荐
OSX/Windows用户可使用Aviator浏览器作为默认浏览器。