update rst
This commit is contained in:
parent
c055feeb0c
commit
1ee4520a40
1 changed files with 100 additions and 50 deletions
150
README.rst
150
README.rst
|
@ -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
|
||||||
|
|
Loading…
Add table
Reference in a new issue