update rst

This commit is contained in:
clowwindy 2014-05-17 15:43:19 +08:00
parent c055feeb0c
commit 1ee4520a40

View file

@ -1,16 +1,17 @@
shadowsocks shadowsocks
=========== ===========
|Build Status| Current version: 1.4.4 |Build Status|
shadowsocks is a lightweight tunnel proxy which can help you get through shadowsocks is a lightweight tunnel proxy which can help you get through
firewalls firewalls.
Other ports and clients can be found Both TCP CONNECT and UDP ASSOCIATE are implemented.
`here <https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients>`__.
Usage `中文说明 <https://github.com/clowwindy/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E>`__
-----
Install
-------
First, make sure you have Python 2.6 or 2.7. First, make sure you have Python 2.6 or 2.7.
@ -19,40 +20,90 @@ First, make sure you have Python 2.6 or 2.7.
$ python --version $ python --version
Python 2.6.8 Python 2.6.8
Install shadowsocks. Install Shadowsocks.
Debian / Ubuntu:
^^^^^^^^^^^^^^^^
:: ::
apt-get install python-pip python-gevent python-m2crypto
pip install shadowsocks pip install shadowsocks
Create a file named ``config.json``, with the following content. CentOS:
^^^^^^^
::
yum install m2crypto python-setuptools
easy_install pip
pip install shadowsocks
OS X:
^^^^^
::
git clone https://github.com/clowwindy/M2Crypto.git
cd M2Crypto
pip install .
pip install shadowsocks
Windows:
^^^^^^^^
Choose a `GUI
client <https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients>`__
Usage
-----
Create a config file ``/etc/shadowsocks.json`` (or put it in other
path). Example:
:: ::
{ {
"server":"my_server_ip", "server":"my_server_ip",
"server_port":8388, "server_port":8388,
"local_address": "127.0.0.1",
"local_port":1080, "local_port":1080,
"password":"barfoo!", "password":"mypassword",
"timeout":600, "timeout":300,
"method":null "method":"aes-256-cfb",
"fast_open": false,
"workers": 1
} }
Explanation of the fields: 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 <https://github.com/clowwindy/shadowsocks/wiki/TCP-Fast-Open>`__, true / false |
+------------------+-----------------------------------------------------------------------------------------------------+
| workers | number of workers, available on Unix/Linux |
+------------------+-----------------------------------------------------------------------------------------------------+
server your server IP (IPv4/IPv6), notice that your server will listen to this IP Run ``ssserver -c /etc/shadowsocks.json`` on your server. To run it in
server_port server port the background, `use
local_port local port supervisor <https://github.com/clowwindy/shadowsocks/wiki/Configure-Shadowsocks-with-Supervisor>`__.
password a password used to encrypt transfer
timeout in seconds
method encryption method, "bf-cfb", "aes-256-cfb", "des-cfb", "rc4", etc. Default is table
``cd`` into the directory of ``config.json``. Run ``ssserver`` on your On your client machine, run ``sslocal -c /etc/shadowsocks.json``.
server. To run it in the background, run ``nohup ssserver > log &``.
On your client machine, run ``sslocal``.
Change the proxy settings in your browser to Change the proxy settings in your browser to
@ -62,6 +113,12 @@ Change the proxy settings in your browser to
hostname: 127.0.0.1 hostname: 127.0.0.1
port: your local_port 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.
Command line args Command line args
----------------- -----------------
@ -70,42 +127,30 @@ 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 sslocal -s server_name -p server_port -l local_port -k password -m bf-cfb
ssserver -p server_port -k password -m bf-cfb ssserver -p server_port -k password -m bf-cfb --workers 2
ssserver -c /etc/shadowsocks/config.json ssserver -c /etc/shadowsocks/config.json
Encryption Salsa20
---------- -------
If you want to use non-default encryption methods like "bf-cfb", please Salsa20 is a fast stream cipher.
install `M2Crypto <http://chandlerproject.org/Projects/MeTooCrypto>`__.
Ubuntu: Use "salsa20-ctr" in shadowsocks.json.
And install these packages:
Debian / Ubuntu:
^^^^^^^^^^^^^^^^
:: ::
sudo apt-get install python-m2crypto apt-get install python-numpy
pip install salsa20
Others: Wiki
----
:: https://github.com/clowwindy/shadowsocks/wiki
pip install M2Crypto
Performance
-----------
You may want to install gevent for better performance.
::
$ sudo apt-get install python-gevent
Or:
::
$ sudo apt-get install libevent-dev python-pip
$ sudo pip install gevent
License License
------- -------
@ -118,5 +163,10 @@ Bugs and Issues
Please visit `issue Please visit `issue
tracker <https://github.com/clowwindy/shadowsocks/issues?state=open>`__ tracker <https://github.com/clowwindy/shadowsocks/issues?state=open>`__
.. |Build Status| image:: https://travis-ci.org/clowwindy/shadowsocks.png Mailing list: http://groups.google.com/group/shadowsocks
Also see
`troubleshooting <https://github.com/clowwindy/shadowsocks/wiki/Troubleshooting>`__
.. |Build Status| image:: https://travis-ci.org/clowwindy/shadowsocks.png?branch=master
:target: https://travis-ci.org/clowwindy/shadowsocks :target: https://travis-ci.org/clowwindy/shadowsocks