No description, website, or topics provided.
View #602
Clone or download
#1318 Compare This branch is 818 commits ahead, 1 commit behind rm.
shell909090 and mengskysama use list instead of string, prevent injection attack. (#1009)
* fix issue:
Command Execution

use list instead of string, prevent injection attack.
Latest commit e332ec9 Feb 19, 2018


PyPI version Build Status

A fast tunnel proxy that helps you bypass firewalls.


  • TCP & UDP support
  • User management API
  • TCP Fast Open
  • Workers and graceful restart
  • Destination IP blacklist



Debian / Ubuntu:

apt-get install python-pip
pip install git+


yum install python-setuptools && easy_install pip
pip install git+

For CentOS 7, if you need AEAD ciphers, you need install libsodium

dnf install libsodium python34-pip
pip3 install  git+

Linux distributions with snap:

snap install shadowsocks


See Install Shadowsocks Server on Windows.


ssserver -p 443 -k password -m aes-256-cfb

To run in the background:

sudo ssserver -p 443 -k password -m aes-256-cfb --user nobody -d start

To stop:

sudo ssserver -d stop

To check the log:

sudo less /var/log/shadowsocks.log

Check all the options via -h. You can also use a [Configuration] file instead.

If you installed the snap package, you have to prefix the commands with shadowsocks., like this:

shadowsocks.ssserver -p 443 -k password -m aes-256-cfb

Usage with Config File

Create configuration file and run

To start:

ssserver -c /etc/shadowsocks.json


You can find all the documentation in the Wiki.


Apache License