使用 Shadowsocks-libev 科学上网
by
Vicent
- 七月 18, 2017
随着技术的不断革新和进步,本篇教程已经过时,请移步到最新更新的文章
https://srelinux.blogspot.com/2020/01/1.html
查看最新的教程,此文只作为参考和备份。
#1.介绍说明
Shadowsocks 是科学上网的集大成者,其中 Shadowsocks-libev 是 Shadowsocks 的 C 语言移植版,推荐使用,优点:- 支持udp转发
- 可以设置透明代理
- 节省资源,占用资源小
Shadowsocks-libev 的使用遵循 C/S 架构,即由服务端和客户端构成。服务端运行在国外的服务器上,推荐使用Vultr服务器[邀请链接:https://www.vultr.com/?ref=6970034 (注册得$10)],国内使用的话选择东京或者新加坡的节点,速度快稳定,最低 2.5$/m. 客户端运行在本地连接服务端,为本地局域网内的其它主机提供代理。
#2.服务器端的安装配置
购买服务器后,远程登陆到远程服务器,打开终端执行2.1安装git
sudo apt install git
2.2获取源码
git clone https://github.com/shadowsocks1/shadowsocks-libev.git
2.3编译安装
sudo apt-get install build-essential autoconf libtool libssl-dev
./configure && make
sudo make install
2.4编写配置文件
sudo vim /etc/shadowsocks-libev/config.json
修改如下内容,更改自己的IP地址,选一个端口号,设置一个密码
{
"server":"server_ip",
"server_port":8388,
"local_port":1080,
"password":"xxxxxxxx",
"timeout":600,
"method":"aes-256-cfb"
}
2.5启动服务
sudo systemctl start shadowsocks-libev.service
sudo systemctl enable shadowsocks-libev.service
#3.本地客户端的配置
本地端我选择一个树莓派3B(RaspberryPi 3B)作为本地服务器,同样的方法在本地树莓派上安装shadowsocks-libev,或者下载我编译好的版本wget https://github.com/pengshp/rpi3-package/blob/master/shadowsocks-libev_2.4.8-1_armhf.deb
sudo dpkg -i shadowsocks-libev_2.4.8-1_armhf.deb
3.1配置
新建一个本地的配置文件client.jsoon
sudo vim /etc/shadowsocks-libev/client.json
根据自己的服务器配置相应的选项,注意 local_address 设置为 "0.0.0.0" 表示局域网内的主机都可以访问。
{
"server":"server_ip",
"server_port":8388,
"local_address": "0.0.0.0",
"local_port":1080,
"password":"xxxxxxxx",
"timeout":600,
"method":"aes-256-cfb"
}
3.2启动本地服务
sudo systemctl start shadowsocks-libev-local@client.service
sudo systemctl enable shadowsocks-libev-local@client.service
#4.Socks 代理转 http 代理【可选】
Socks代理不是很常见,一般使用http代理较好配置,这里可以通过在树莓派上安装 Polipo 实现Socks 代理转 http 代理的目的。sudo apt install polipo
4.1配置
更改polipo的配置文件
sudo vim /etc/polipo/config
加上如下内容
logSyslog = true
logFile = /var/log/polipo/polipo.log
proxyAddress = 0.0.0.0
socksParentProxy = 127.0.0.1:1080
4.2启用服务
sudo systemctl start polipo.service
sudo systemctl enable polipo.service
polipo是一个轻量级的http网页缓存服务,监听端口为8123,上面的配置实现把本地1080端口的Socks代理服务转为8123端口的http服务。
#5.浏览器配置
5.1谷歌浏览器谷歌浏览器的用户可以安装一个插件Proxy SwitchyOmega ,新建一个情景模式polipo
代理服务器处填写树莓派的IP地址。或者不用第四部,直接新建一个Socks的代理,代理协议那里选择socks5,代理端口填写1080.
这样在需要上网的时候选择单击 Proxy SwitchyOmega 选择对应的代理便可以科学上网了。
5.2火狐浏览器
火狐浏览器不需要安装任何的插件便可以配置。单击右上角的菜单-->选项-->高级-->网络-->设置,填写为下面的配置
ip地址填写树莓派的IP地址,确定后便可以实现科学上网。
5.3全部走代理
打开Windows10的设置-->网络和Internet-->代理,填写树莓派的IP地址和对应的8123端口,保存,这样流经电脑的所有流量都是通过代理访问的。
Q&A
1.为什么要使用树莓派?
直接把客户端安装在树莓派上24h运行可以方便局域网内的其他设备使用,并且不需要在其它设备上安装其它的软件 。
2.Android 和IOS可以使用吗?
可以,只要在同一个局域网内,在手机的网络设置代理那里填写树莓派的IP地址和对应的端口号,需要注意的是只支持http代理,需要第四步的设置 。
3.为什么要科学上网?
中国大陆有严格的网络审查制度,因此设置了一道长城防火墙(GWF),把国民与国际互联网隔绝。科学上网能够 翻越这道防火墙,看到世界的精彩!一句话:“为了知识和真相!”