由于校园网的资费坑得一逼,况且有流量限制,这种感觉甚是让人不爽。之前曾看到郑老湿和陈老湿在VPS搭上VPN免流量上网,后来又在开源课上受到杜老师的启发,决定通过ShadowSocks代理后的IPv6教育网实现免流量上网。
ShadowSocks是一个安全的socks5代理,它通过客户端以指定的密码、加密方式和端口连接服务器,成功连接到服务器后,客户端在用户的电脑上构建一个本地socks5代理。使用时将流量分到本地socks5代理,客户端将自动加密并转发流量到服务器,服务器以同样的加密方式将流量回传给客户端,以此实现代理上网。
服务器端
搭建服务
SSH登录到VPS服务器后要使用pip安装ShadowSocks,所以先装pip
。
如果服务器是基于Red Hat的系统(CentOS等等),使用命令:
yum install python-setuptools && easy_install pip
如果是基于Debian的系统(Ubuntu等等),使用命令:
apt-get install python-pip
之后通过pip安装ShadowSocks:
pip install shadowsocks
安装完成后,在/etc/
下新建一个叫shadowsocks.json
的配置文件,内容如下:
1 | { |
其中"server"
一栏之所以填"::"
是为了同时监听IPv4/v6两个端口,因为本文的需求中我们需要双栈连接,如果VPS没有IPv6功能或仅是为了搭梯子用,这里面填写一个IPv4的地址就可以了。"password"
栏填写自己要设置的密码。至于"method"
加密方式一栏,主流的有rc4-md5
和aes-256-cfb
等等,据说前者速度快,后者更安全,可以根据个人喜好自行权衡。
如果有多个用户需要使用而不想都使用一套端口和密码,可以如下写成多端口配置文件:
1 | { |
启动服务
保存配置文件后就可以通过以下命令启动和停止ShadowSocks服务了:
ssserver -c /etc/shadowsocks.json --fast-open -d start
ssserver -d stop
如果发现开启服务后连接不上,可以停用防火墙试一下。
要是觉得以上命令太长难于记忆,可以在~/.bashrc
里加入alias:
1 | alias ssstart='ssserver -c /etc/shadowsocks.json --fast-open -d start' |
保存后记得使用source ~/.bashrc
命令应用配置,这样就可以每次通过ssstart
和ssstop
命令启动或停止服务了。
在CentOS7以后可以用systemd的方式启动Shadowsocks,先新建启动脚本/etc/systemd/system/shadowsocks.service
:
1 | [Unit] |
然后就可以通过systemctl start shadowsocks
启动了,并通过systemctl enable shadowsocks
设置开机自启。
性能优化
现在我们要祭出TCP加速神器——锐速了。
锐速是一款免费的TCP底层加速软件,可以便捷地完成服务器网络的优化,配合ShadowSocks效果甚好。
首先要去锐速官网注册。然后在服务器上通过以下命令下载安装:
wget http://my.serverspeeder.com/d/ls/serverSpeederInstaller.tar.gz
tar xzvf serverSpeederInstaller.tar.gz
bash serverSpeederInstaller.sh
安装过程中需要填写刚注册的账号密码等,一路回车安装结束。
之后还要编辑配置文件/serverspeeder/etc/config
,修改以下参数:
1 | advinacc="1" |
保存后重启服务就可以了:
service serverSpeeder restart
目前锐速不再开放使用,想用的同学可以到91云寻找新大陆。
本地客户端
首先确定你可以获取到IPv6地址,最简便的方法就是打开六维空间测试一下,如果可以打开就说明没问题。
Windows
macOS
Linux
也可以按照类似服务端的命令行方式进行启动,将
ssserver
改成sslocal
即可。
Android
如果能上Google Play也可以从应用商店直接安装。
OpenWrt
各种平台上的服务器配置按照之前服务器端的设置填写即可,但是server地址记得填写IPv6的,然后设成全局代理。
这时Google一下自己的IP,如果地址确实是VPS的地址,就可以开始愉快的上网了。
-
本文作者:
Shintaku
本文链接:
https://www.shintaku.xyz/posts/shadowsocks/
版权声明:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Shintaku's Blog 。