使用 Shadowsocks-libev 科学上网

by - 七月 18, 2017

 

随着技术的不断革新和进步,本篇教程已经过时,请移步到最新更新的文章
https://srelinux.blogspot.com/2020/01/1.html
查看最新的教程,此文只作为参考和备份。

#1.介绍说明

Shadowsocks 是科学上网的集大成者,其中 Shadowsocks-libev 是 Shadowsocks 的 C 语言移植版,推荐使用,优点:
  1.  支持udp转发
  2.  可以设置透明代理
  3.  节省资源,占用资源小

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),把国民与国际互联网隔绝。科学上网能够 翻越这道防火墙,看到世界的精彩!一句话:“为了知识和真相!”

You May Also Like

1 评论