在树莓派上设置透明代理

Vanabel/ 6月 11, 2015/ 互联网/ 0 comments

目前, 我在树莓派上搭建了VPN. 只有树莓派联网, 其他设备都通过VPN连接树莓派实现上网. 但是有点不好的地方是, 很多网站都被墙了, 例如我在电脑上就不能够使用Dropbox, 更加别提Facebook, YouTube等了.

本文将在树莓派上设置透明代理, 一些原理我也不是非常明白, 但是在这里作一记录, 方便以后补充完善. 希望大家不吝赐教.

基本假设

  • 已有一个VPS, 可以正常访问上述被墙网站.
  • 可以正常联网的树莓派, ssh可登陆

VPS上shadowsocks服务器的安装配置

此步较为简单, 在VPS上配置好Shadowsocks, 可以参考https://github.com/shadowsocks/shadowsocks-libev, 记住VPS IP, 端口号和密码以及加密方式.

树莓派上安装ss客户端

接下来, 在树莓派上配置Shadowsocks客户端, 这实现了树莓派通过VPS代理上网.

#以管理员运行
sudo -s
#安装pip管理python包
apt-get install python-pip python-m2crypto
#安装python版shadowsocks
pip install shadowsocks
#设置shadowsocks客户端(我用的vim作为编辑器, 可以用vi)
vim /etc/shadowsocks.json
#输入以下内容
{
"server":"xxx.xxx.xxx.xxx", //VPS IP
"server_port":8388, //VPS端口
"local_address": "xxx.xxx.xxx.xxx", //树莓派IP
"local_port":1080, //树莓派端口
"password":"mypassword", //VPS上设置shadowsocks服务器的密码
"timeout":60,
"method":"encrypt_method", //VPS 上设置的加密方式, 不知道可以选择"aes-256-cfb"
"fast_open": false,
"workers": 1
}
#开机自启动
vim /etc/rc.local
#在最后的exit之前添加
/usr/local/bin/sslocal -c /etc/shadowsocks.json &

至此shadowsocks客户端设置成功. 你可以手动启动已测试是否正常工作:sslocal -c /etc/shadowsocks.json

利用cow自动代理

其实就是说有个列表, 在树莓派上, 被墙的网站走代理, 普通网站还是走正常的线路.
首先, 确保你能够访问cow的项目地址: https://github.com/cyfdecyf/cow. 否则自己想办法吧.

#退出root账户
su - pi
#创建路径
mkdir /home/pi/Cow && cd /home/pi/Cow
#安装Cow, 稍等会要你填入安装的绝对路径, 直接Enter使用当前目录/home/pi/Cow/"
curl -L git.io/cow | bash
#配置Cow
vim ~/.cow/rc
#添加以下命令到文件最后, 你可以看看配置文件的注释, 好像非常高级
#前一句表示cow在pi上的监听端口, 后一行表示cow使用的代理方式
#其实我觉得填树莓派的客户端shadowsocks配置即可, 这里使用的是VPS的ss服务器作为代理
#此外, 好像说cow实际上自建了连接ss服务器功能, 所以第一部分的ss安装配置可以省略
listen = http://树莓派ip:19877
proxy = ss://encrypt_method:[email protected]_server_ip:8388
#修改Cow目录权限
sudo -s
chmod 777 /home/pi/Cow/cow -R
#看Cow的rc文件可知, 需要设置相关的文件路径
ln -s /home/pi/Cow/cow /usr/local/bin/
ln -s /home/pi/.cow/rc /root/.cow/rc
#设置开机启动, 参考https://github.com/cyfdecyf/cow/blob/master/doc/init.d/cow
#新建启动脚本
vim /etc/init.d/cow
#录入上述链接的内容
#修改权限并加入到开机启动
chmod +x /etc/init.d/cow && update-rc.d cow defaults

至此重启机器, 即可.

IE上设置代理上网

在本地电脑上, 打开IE, 设置->连接->局域网设置->勾选使用自动脚本, 并在地址里填入: http://树莓派ip:19877/pac

参考文献

  1. http://briteming.blogspot.com/2013/02/raspberry-pi_11.html
  2. http://blog.imfer.me/#!/post/2014-04-25-raspberry-pi-cross-gfw
  3. http://www.csimba.com/archives/325
  4. http://tuzhihao.me/ke-xue-shang-wang/
  5. https://github.com/cyfdecyf/cow/blob/master/doc/init.d/cow
Share this Post

Leave a Comment

您的电子邮箱地址不会被公开。 必填项已用*标注

*
*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据