Shadowsocks科学上网

1. 配置环境准备

VPS购买和使用教程

视频教程

2. 服务器配置

首先确保安装了python2.6或者2.7:

检查版本:
python --version

安装软件包(这里的命令,记得一条一条跑)


apt-get update && apt-get install build-essential python-pip python-m2crypto python-dev
pip install gevent shadowsocks

创建配置文件:

下面是两条命令,第一条创建文件,第二条用vi编辑器编辑文件:


touch shadowsocks.json
vi shadowsocks.json

此时会进入这样的界面

下面是shadowsocks配置文件的介绍:


{
"server":"服务器 IP 地址", #VPS的IP地址
"server_port":8388, #监听的端口
"local_address": "127.0.0.1", #本地监听的IP地址,默认为主机
"local_port":1080, #本地监听的端口
"password":"mypassword", #服务密码
"timeout":300, #用于加密的密码
"method":"aes-256-cfb", #加密方法,推荐 "aes-256-cfb"
"fast_open": false, #是否使用 TCP_FASTOPEN, true / false
"workers": 1 #worker 数量,Unix/Linux 可用,如果不理解含义请不要改
}

去掉所有的注释,并且修改服务器IP地址和密码,如下(注意修改server的ip和password的密码成自己的):


{
"server":"123.45.67.8",
"server_port":8388,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"mypassword", 
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false, 
"workers": 1
}

复制上面的信息,在putty的窗口中点击鼠标右键,信息就被粘贴进去了,但是开头的信息有些遗漏,如下:

注意,此时左下角有个-- INSERT --的白字,按方向键移动光标到第一行,然后按delete键删除错误的信息,对照着上面修改成正确的,修改完成之后是这样的:

然后按下ESC键,白字消失,输入:wq注意是英文冒号,然后回车,就退回了命令行。

配置开机启动项

输入


vi /etc/rc.local

在最后的exit0之前添加下面一行:

nohup /usr/local/bin/ssserver -c /root/shadowsocks.json 1>/dev/null 2>/dev/null &

和上面一样的编辑方式,wq保存之后,输入重启服务器的命令:


reboot

此时终端会自动关闭。

服务器已经配置好了

3. 客户端配置

win下配置

下载这个文件
https://github.com/shadowsocks/shadowsocks-csharp/releases
选择Shadowsocks-win-2.3.1.zip
如果打不开,从百度网盘分享也行
就一个简单的文件,解压出来,打开运行,填入参数:

linux(以ubuntu为例):

各发行版linux shadowsocks安装方法找官网的说明,python版本的安装可以直接用


sudo pip install shadowsocks

提示有缺什么就安什么。
这里说下配置方法:
在自己喜欢的地方新建一个配置文件:
文件内容


{
"server":"服务器 IP 地址", #VPS的IP地址
"server_port":8388, #监听的端口
"local_address": "127.0.0.1", #本地监听的IP地址,默认为主机
"local_port":1080, #本地监听的端口
"password":"mypassword", #服务密码
"timeout":300, #超时设置
"method":"aes-256-cfb" #加密方法,推荐 "aes-256-cfb"
}

同样,记得把注释删掉
然后按照上面的方法修改系统启动项重启即可


nohup /usr/local/bin/sslocal -c /你自己定义的配置文件的路径/shadowsocks.json 1>/dev/null 2>/dev/null &

安卓客户端从github下载即可

shadowsocks android 官方客户端

桌面浏览器配置

(移动端当然不用配置浏览器)以chrome为例:
先去chrome应用商店搜索这个拓展SwitchyOmega,如果上不去,可以先参考这里替换hosts:
修改hosts使用google应用商店
安装插件成功以后,在情景模式里新建情景模式为shadowsocks(这是你建立的情景模式的名字),协议选择sock5,服务器输入127.0.0.1,端口是1080,就是和前面下载的那个软件里的配置一样,左下角保存更改。
设置规则列表更新,如果没有东西,那么输入:

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

打开百度,点击chrome浏览器右上角的新安装的插件的图标,选中自动切换。然后登录facebook.com试试吧。

Tips

linux下可以用proxychains来对某个命令进行单独翻墙。
比如
proxychains git push origin master

win下的gui客户端可以直接设置全局翻。

4. KCPTUN加速器

发现了kcptun这样一个加速器,原理什么不说了,直接上部署方式。

这个是辅助ss的工具。相当于在ss底下又加了一层。

kcptun github地址

服务器设置

首先ssh到你服务器上,从release下载你服务器对应的版本,解压到服务器某个目录下,以/root/为例,


./server_linux_amd64 -l ":29900" -t "127.0.0.1:8388" --key "findspace.name" --mode "fast2" 

-l表示服务器的监听端口,-t表示要加速的端口,建议替换127.0.0.1为你的服务器地址,8388是你的ss监听端口,如果你要加速ipv6地址,则修改为[youripv6 address]:8388--key是自己设置的kcptun服务器密码,--mode是加速模式。

这样就启动了服务器的加速。

如果要开机自启动,则写入到/etc/rc.local的exit 0之前:


nohup /root/server_linux_amd64 -l ":29900" -t "yourip:8388" --key "findspace.name" --mode "fast2"  1>/dev/null 2>/dev/null &

客户端配置

如果是linux 运行,我复制到了/usr/bin/下面:


/usr/bin/client_linux_amd64 -l ":2000" -r "yourserverip:29900" --key "findspace.name" --mode "fast2"

这里-l则是本地的端口,将要提供给ss客户端。

修改ss的配置:


"server":"127.0.0.1", 
"server_port":2000, 

原来的server你服务器地址,现在改成127,port也改成kcp client加速的本地端口。即可。

经测试,在ipv6下,youtube视频可以到达15MB/s,ipv4下可以达到1.5M/s

5. 开启BBR单边加速

bbr是google提出的拥塞算法,是单边加速,只需要在服务器设置即可。kvm架构的vps可以更换linux 4.9+的内核,开启BBR。

可以直接使用别人做好的一键脚本:


wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh

会提示你重启,重启后,通过uname -r看下内核是否是4.9+的。


sysctl net.ipv4.tcp_available_congestion_control

返回值一般为:

net.ipv4.tcp_available_congestion_control = bbr cubic reno


sysctl net.ipv4.tcp_congestion_control

返回值一般为:
net.ipv4.tcp_congestion_control = bbr


sysctl net.core.default_qdisc

返回值一般为:
net.core.default_qdisc = fq


lsmod | grep bbr

返回值有 tcp_bbr 模块即说明bbr已启动。

Tips

推荐一个自己写的在线下载youtube视频的小工具:

https://www.findyoutube.net

Reference:

搬瓦工VPS/OPENVZ加速工具KCPTUN

一键安装最新内核并开启 BBR 脚本

文章版权归 FindHao 所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明作者 FindHao 和本文原始地址:
https://www.findhao.net/res/956

你可能喜欢:(相似内容推荐和广告都使用了谷歌的推荐系统,需要对本站取消广告屏蔽才能显示。感谢点击↓广告支持博主~)

Find

新浪微博(FindSpace博客)QQ群:不安分的Coder(375670127) 不安分的Coder

10 条回复

  1. Find说道:

    多用户服务器配置文件:(同时也监听ipv6)
    {
    “server”:”::”,
    “local_address”: “127.0.0.1”,
    “local_port”:1080,
    “port_password”:{
    “12345”:”test”,
    “12346”:”test”
    },
    “timeout”:600,
    “method”:”aes-256-cfb”,
    “fast_open”: false
    }
    客户端链接():
    IPV6线路
    {
    “server”:”你服务器的ipv6地址”,
    “server_port”:12345,
    “local_address”: “127.0.0.1”,
    “local_port”:1080,
    “password”:”test”,
    “timeout”:300,
    “method”:”aes-256-cfb”
    }

  2. Find说道:

    最后配置完成的截图里:server对应的是ip不是8388,我整错了。

  3. Luke说道:

    有的太专业了啊

  4. 有没有PPTP协议的QAQ

  5. Banks说道:

    太专业了啦!就连我这种有钻研精神半小白的也看不懂,求出个稍微简单点的教程。。

发表评论

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

*