Step 1: Install the basic components and the SSR backend
yum -y install python-setuptools && easy_install pip && pip install cymysql speedtest-cli && yum install git
Step 2: Support for the CHACHA20 encryption method:
yum -y groupinstall "Development Tools" && yum -y install wget && wget https://github.com/jedisct1/libsodium/releases/download/1.0.10/libsodium-1.0.10.tar.gz && tar xf libsodium-1.0.10.tar.gz && cd libsodium-1.0.10 && ./configure && make -j2 && make install && echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf && ldconfig && rm -rf /root/libsodium-1.0.11.tar.gz && cd /root
Step 3: Download the program source code
git clone -b manyuser https://github.com/glzjin/shadowsocks.gityum -y install python-develyum -y install libffi-develyum -y install openssl-develcd shadowsockspip install -r requirements.txtcp apiconfig.py userapiconfig.pycp config.json user-config.json
Up to this point, the previous steps can be completed with a one-click script
Configure userapiconfig.py
- Shared database
# Node ID - must match the ID assigned to the node you added on your website!NODE_ID = 3# This must be filled in. Choose either the database or httpapi (most people use the database; not sure how to set up httpapi, lol)API_INTERFACE = 'glzjinmod' # glzjinmod (connect via database), modwebapi (http api)# Mysql database connection informationMYSQL_HOST = '127.0.0.1'MYSQL_PORT = 3306MYSQL_USER = 'ss'MYSQL_PASS = 'ss'MYSQL_DB = 'shadowsocks'MYSQL_UPDATE_TIME = 60
glzjinmod means shared database mode
- API interface integration
#The node ID must match the ID assigned to the node you added on your website!NODE_ID = 3#This must be filled in. Choose either the database or httpapi (most people use the database; I'm not sure how to set up httpapi, lol)API_INTERFACE = 'modwebapi' #glzjinmod (connects via database), modwebapi (http api)WEBAPI_URL = 'http://for.mss.me'WEBAPI_TOKEN = 'mupass'
This is also why the one-click script needs you to enter NODE_ID, WEBAPI_URL, and WEBAPI_TOKEN. The script uses the api for integration by default, so the database does not need to be exposed to the public internet.
Test Run
python servers.py
Give it a test; you should then be able to see the corresponding user data.
Press ctrl + c to exit, then run ./logrun.sh
If you want to keep the process running, please use
setsid /root/shadowsocks-mu/shadowsocks/servers.py