shadowsocks/README.md

147 lines
4.8 KiB
Markdown
Raw Normal View History

2012-04-20 13:10:49 +00:00
shadowsocks
2012-04-20 14:26:00 +00:00
===========
2014-06-04 10:22:09 +00:00
[![PyPI version]][PyPI] [![Build Status]][Travis CI]
2014-06-04 10:04:41 +00:00
2014-08-03 01:40:12 +00:00
A fast tunnel proxy that helps you bypass firewalls.
2012-04-20 14:26:00 +00:00
2014-06-04 10:32:58 +00:00
[中文说明][Chinese Readme]
2013-06-26 18:58:51 +00:00
2014-05-03 00:19:05 +00:00
Install
-------
2012-04-20 14:26:00 +00:00
2014-11-03 10:14:25 +00:00
You'll have a client on your local side, and setup a server on a
2014-06-15 16:52:29 +00:00
remote server.
2014-06-15 17:13:54 +00:00
### Client
* [Windows] / [OS X]
* [Android] / [iOS]
* [OpenWRT]
### Server
2014-06-15 16:52:29 +00:00
2014-05-03 00:19:05 +00:00
#### Debian / Ubuntu:
2014-10-11 04:42:59 +00:00
apt-get install python-pip
2014-06-01 03:22:57 +00:00
pip install shadowsocks
2014-05-03 00:19:05 +00:00
2014-09-06 12:58:56 +00:00
Or simply `apt-get install shadowsocks` if you have [Debian sid] in your
source list.
2014-05-03 00:19:05 +00:00
#### CentOS:
2014-10-11 04:42:59 +00:00
yum install python-setuptools
2014-05-03 00:19:05 +00:00
easy_install pip
2013-06-22 09:30:31 +00:00
pip install shadowsocks
2014-05-03 00:19:05 +00:00
2014-10-08 13:07:05 +00:00
#### Windows:
2014-10-11 04:42:59 +00:00
Download OpenSSL for Windows and install. Then install shadowsocks via
easy_install and pip as Linux. If you don't know how to use them, you can
directly download [the package], and use `python shadowsocks/server.py`
instead of `ssserver` command below.
2014-10-08 13:07:05 +00:00
2014-06-15 17:13:54 +00:00
Configuration
-------------
2014-05-03 00:19:05 +00:00
2014-06-15 18:14:49 +00:00
On your server create a config file `/etc/shadowsocks.json`.
2014-05-03 00:19:05 +00:00
Example:
2012-12-30 05:28:51 +00:00
2013-06-22 09:30:31 +00:00
{
"server":"my_server_ip",
"server_port":8388,
2014-05-03 00:19:05 +00:00
"local_address": "127.0.0.1",
2013-06-22 09:30:31 +00:00
"local_port":1080,
2014-05-03 00:19:05 +00:00
"password":"mypassword",
"timeout":300,
"method":"aes-256-cfb",
2014-05-17 05:54:28 +00:00
"fast_open": false,
"workers": 1
2013-06-22 09:30:31 +00:00
}
2012-04-20 14:26:00 +00:00
2013-09-16 05:20:30 +00:00
Explanation of the fields:
2013-06-22 09:30:31 +00:00
2014-05-03 00:23:47 +00:00
| 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 | default: "aes-256-cfb", see [Encryption] |
2014-06-01 03:22:57 +00:00
| fast_open | use [TCP_FASTOPEN], true / false |
2014-05-17 05:54:28 +00:00
| workers | number of workers, available on Unix/Linux |
2013-05-22 06:14:37 +00:00
2014-06-01 03:22:57 +00:00
Run `ssserver -c /etc/shadowsocks.json` on your server. To run it in the
background, use [Supervisor].
2013-05-22 06:14:37 +00:00
2014-06-15 17:13:54 +00:00
On your client machine, use the same configuration as your server, and
start your client.
2012-04-20 14:26:00 +00:00
2014-06-15 18:14:49 +00:00
If you use Chrome, it's recommended to use [SwitchySharp]. Change the proxy
settings to
2012-04-20 14:26:00 +00:00
2013-05-21 08:52:22 +00:00
protocol: socks5
hostname: 127.0.0.1
port: your local_port
2012-12-12 07:19:51 +00:00
2014-06-15 18:14:49 +00:00
If you can't install [SwitchySharp], you can launch Chrome with the following
arguments to force Chrome to use the proxy:
Chrome.exe --proxy-server="socks5://127.0.0.1:1080" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost"
2013-06-26 18:58:51 +00:00
2014-06-15 18:29:06 +00:00
If you can't even download Chrome, find a friend to download a
[Chrome Standalone] installer for you.
2013-06-22 09:30:31 +00:00
Command line args
------------------
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
2014-05-17 05:54:28 +00:00
ssserver -p server_port -k password -m bf-cfb --workers 2
2013-06-22 09:30:31 +00:00
ssserver -c /etc/shadowsocks/config.json
2014-06-15 17:26:57 +00:00
List all available args with `-h`.
2014-05-03 00:19:05 +00:00
Wiki
----
2012-12-30 06:01:41 +00:00
2014-09-18 01:20:57 +00:00
You can find all the documentation in the wiki:
2014-05-03 00:19:05 +00:00
https://github.com/clowwindy/shadowsocks/wiki
2012-12-30 06:01:41 +00:00
2013-06-18 09:52:01 +00:00
License
-------
MIT
Bugs and Issues
----------------
2013-06-22 17:32:24 +00:00
2014-06-23 09:12:16 +00:00
* [Troubleshooting]
* [Issue Tracker]
* [Mailing list]
2014-06-01 03:22:57 +00:00
2014-06-15 18:29:06 +00:00
[Android]: https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients#android
2014-06-21 03:18:33 +00:00
[Build Status]: https://img.shields.io/travis/clowwindy/shadowsocks/master.svg?style=flat
2014-06-15 18:29:06 +00:00
[Chinese Readme]: https://github.com/clowwindy/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E
[Chrome Standalone]: https://support.google.com/installer/answer/126299
2014-09-06 12:58:56 +00:00
[Debian sid]: https://packages.debian.org/unstable/python/shadowsocks
2014-10-11 04:42:59 +00:00
[the package]: https://pypi.python.org/pypi/shadowsocks
[Encryption]: https://github.com/clowwindy/shadowsocks/wiki/Encryption
2014-07-27 16:26:30 +00:00
[iOS]: https://github.com/shadowsocks/shadowsocks-iOS/wiki/Help
2014-06-15 18:29:06 +00:00
[Issue Tracker]: https://github.com/clowwindy/shadowsocks/issues?state=open
2014-06-23 09:12:16 +00:00
[Mailing list]: http://groups.google.com/group/shadowsocks
2014-06-15 18:29:06 +00:00
[OpenWRT]: https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients#openwrt
2014-07-27 16:26:30 +00:00
[OS X]: https://github.com/shadowsocks/shadowsocks-iOS/wiki/Shadowsocks-for-OSX-Help
2014-06-15 18:29:06 +00:00
[PyPI]: https://pypi.python.org/pypi/shadowsocks
2014-06-21 03:18:33 +00:00
[PyPI version]: https://img.shields.io/pypi/v/shadowsocks.svg?style=flat
2014-06-15 18:29:06 +00:00
[Supervisor]: https://github.com/clowwindy/shadowsocks/wiki/Configure-Shadowsocks-with-Supervisor
[TCP_FASTOPEN]: https://github.com/clowwindy/shadowsocks/wiki/TCP-Fast-Open
[Travis CI]: https://travis-ci.org/clowwindy/shadowsocks
[Troubleshooting]: https://github.com/clowwindy/shadowsocks/wiki/Troubleshooting
[SwitchySharp]: https://chrome.google.com/webstore/detail/proxy-switchysharp/dpplabbmogkhghncfbfdeeokoefdjegm
[Windows]: https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients#windows