shadowsocks is a lightweight tunnel proxy which can help you get through firewalls.
Both TCP CONNECT and UDP ASSOCIATE are implemented.
First, make sure you have Python 2.6 or 2.7.
$ python --version
Python 2.6.8
Install Shadowsocks.
apt-get install python-pip python-gevent python-m2crypto
pip install shadowsocks
yum install m2crypto python-setuptools
easy_install pip
pip install shadowsocks
git clone https://github.com/clowwindy/M2Crypto.git
cd M2Crypto
pip install .
pip install shadowsocks
Choose a GUI client
Create a config file /etc/shadowsocks.json
(or put it in other path).
Example:
{
"server":"my_server_ip",
"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
}
Explanation of the fields:
Name | Explanation |
---|---|
server | the address your server listens |
server_port | server port |
local_address | the address your local listens |
local_port | local port |
password | password used for encryption |
timeout | in seconds |
method | encryption method, "aes-256-cfb" is recommended |
fast_open | use TCP_FASTOPEN, true / false |
workers | number of workers, available on Unix/Linux |
Run ssserver -c /etc/shadowsocks.json
on your server. To run it in the background, use supervisor.
On your client machine, run sslocal -c /etc/shadowsocks.json
.
Change the proxy settings in your browser to
protocol: socks5
hostname: 127.0.0.1
port: your local_port
Notice: If you want to use encryption methods other than "table", please install M2Crypto (See Encryption Section).
It's recommended to use shadowsocks with AutoProxy or Proxy SwitchySharp.
You can use args to override settings from config.json
.
sslocal -s server_name -p server_port -l local_port -k password -m bf-cfb
ssserver -p server_port -k password -m bf-cfb --workers 2
ssserver -c /etc/shadowsocks/config.json
Salsa20 is a fast stream cipher.
Use "salsa20-ctr" in shadowsocks.json.
And install these packages:
apt-get install python-numpy
pip install salsa20
https://github.com/clowwindy/shadowsocks/wiki
MIT
Please visit issue tracker
Mailing list: http://groups.google.com/group/shadowsocks
Also see troubleshooting