Shadowsocks原理 简单理解的话,Shadowsocks是将以前通过SSH创建的Socks5协议拆开成Server端和client端,下面这个原理图能简单介绍其翻墙原理,基本上和利用SSH tunnel大致类似:
- PC客户端(即你的电脑)发出请求基于Socks5协议跟SS-Local端进行通讯,由于这个SS-Local一般是本机或路由器等局域网的其他机器,不经过GFW,所以解决GFW通过特征分析进行干扰的问题。
- SS-Local和SS-Server两端通过多种可选的加密方法进行通讯,经过GFW的时候因为是常规的TCP包,没有明显特征码GFW也无法对通讯数据进行解密,因此通讯放行。
- SS-Server将收到的加密数据进行解密,还原初始请求,再发送到用户需要访问的服务网站,获取响应原路再返回SS-04,返回途中依然使用了加密,使得流量是普通TCP包,并成功穿过GFW防火墙。
因此,Shadowsocks的优点在于它解决了GFW通过分析流量特征从而干扰的问题,这是它优于SSH和VPN翻墙的地方。 安装使用说明Shadowsocks服务端有Python、libev、go版本,从系统占用资源和多用户配置方面来考虑,我选择使用Python来作为Shadowsocks的服务端,网上已经有很多比较好的一键安装脚本,如teddysun,但对多用户配置还需要手工更改配置文件(iptables、/etc
/shadowsocks.json)。于是,自己写一个,包含安装、添加用户和卸载功能,并整合到《OneinStack》和《lnmp一键安装包》中。 7月8号之前一键安装包,怎么使用该脚本?
Shadowsocks安装
出现如下即安装成功:
- Your Server IP: You_Server_IP
- Your Server Port: 9001
- Your Password: oneinstack
- Your Local IP: 127.0.0.1
- Your Local Port: 1080
- Your Encryption Method: aes-256-cfb
Shadowsocks添加用户
Shadowsocks卸载
- ./shadowsocks.sh uninstall
Shadowsocks服务管理
- service shadowsocks start #启动
- service shadowsocks stop #关闭
- service shadowsocks restart #重启
- service shadowsocks status #状态
|