2014年2月5日星期三

Shadowsocks安装使用

Shadowsocks是什么:
shadowsocks是一个身材轻盈活儿又好的开源代理项目,而且腿长,可跨几乎所有平台。
与基于GAE的科学上网方式相比,SS的主要优势是socks5,而且部署简单,使用灵活、稳定。


1.服务器端配置
(使用VPS即可!)
首先,检查 Python 版本!(centos 6之后的都是python2.6)
  1. python -V
如果是2.6以或者上就可以安装!
安装各种库各种文件
  1. yum -y install build-essential autoconf libtool libssl-dev gcc openssl openssl-devel make
安装 Shadowsocks.

(如果没有安装pip源 请先安装pip,教程请看文章最后!  )
  1. pip install shadowsocks
在/etc文件下建一个文件 config.json

  1. vi /etc/config.json         #(你也可以建在其他地方!)


其中内容如下:
  1. {
  2.     "server":"my_server_ip",
  3.     "server_port":8388,
  4.     "local_port":1080,
  5.     "password":"barfoo!",
  6.     "timeout":600,
  7.     "method":"table"
  8. }


(密码是双引号里面的内容,不含双引号!)
各字段的含义:
  1. server          服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址
  2. server_port     服务器端口
  3. local_port      本地端端口
  4. password        用来加密的密码
  5. timeout         超时时间(秒)
  6. method          加密方法,可选择 "bf-cfb", "aes-256-cfb", "des-cfb", "rc4", 等等。默认是一种不安全的加密,推荐用 "aes-256-cfb" 但是你因此还要安装M2Crypto.
复制代码
之后就是运行 ssserver,当然你肯定不想putty关了就不行了(需要让它一直运行!)
  1. nohup ssserver -c /etc/config.json &
当然这样服务器重启之后也不会运行,所以要加入开机启动项!
  1. echo "nohup /usr/bin/ssserver -c /etc/config.json &" >> /etc/rc.d/rc.local

2.客户端配置


服务器端配置完成后就可以配置客户端了!
下载各个类型的客户端:http://shadowsocks.org/en/download/clients.html
填入你所配置的值,运行客户端!
下图是windows下shadowsocks GUI界面



















3浏览器端配置

浏览器的代理改为如下即可:
协议: socks5地址: 127.0.0.1端口: 刚才填的 local_port (上面端口是1080)
推荐配合 AutoProxy 或者 Proxy SwitchySharp 一起使用。
下图是Proxy SwitchySharp的配置:











PS:

安装pip教程请查看Python的包管理工具Pip
http://www.goagent.biz/forum.php?mod=viewthread&tid=1389&fromuid=1
(出处: GoAgent)


安装 M2Crypto.(加密)

默认加密方法 table 速度很快,但很不安全。推荐使用 "aes-256-cfb" 或者 "bf-cfb"。请不要使用 "rc4",它不安全。
可选的加密方式:
  • aes-128-cfb
  • aes-192-cfb
  • aes-256-cfb
  • bf-cfb
  • camellia-128-cfb
  • camellia-192-cfb
  • camellia-256-cfb
  • cast5-cfb
  • des-cfb
  • idea-cfb
  • rc2-cfb
  • rc4
  • seed-cfb
  • table
如果想使用 table 之外的加密方法,要先安装 M2Crypto.

CentOS

  1. yum install m2crypto

Ubuntu:
  1. apt-get install python-m2crypto
Debian:
  1. apt-get install libssl-dev swigpip install M2Crypto
openSUSE:
  1. zypper in python-m2crypto


性能
安装 gevent 可以提高 Shadowsocks 的性能:
$ sudo apt-get install python-gevent
或者:
$ sudo apt-get install libevent-dev python-pip$ sudo pip install gevent