Pages

Sunday, 23 August 2015

安装SHADOWSOCKS的PYTHON版

wget https://pypi.python.org/packages/source/s/shadowsocks/shadowsocks-2.8.2.tar.gz
tar zxvf shadowsocks-2.8.2.tar.gz
cd shadowsocks-2.8.2
python setup.py install
(需要先运行apt-get install python-setuptools -y)
这样shadowsocks的PYTHON版就安装好了(PYTHON版是SHADOWSOCKS的最早的版本。其他编程语言版本都是后来才出现的。)

或者这样安装也可:
Debian / Ubuntu:
apt-get install python-pip
pip install shadowsocks
CentOS:
yum install python-setuptools && easy_install pip
pip install shadowsocks
会显示:
...
Installing sslocal script to /usr/local/bin/
Installing ssserver script to /usr/local/bin/
Successfully installed shadowsocks

Usage(在linux服务器端的用法):
ssserver -p 8989 -k password -m aes-256-cfb

To run in the background:
sudo ssserver -p 8989 -k password -m aes-256-cfb -d start

To stop:
sudo ssserver -d stop

也可这样操作:
nano /etc/shadowsocks-python_1.json
内容如下:
{
    "server":"0.0.0.0",
    "server_port":7087,
    "local_port":1080,
    "password":"your_password1",
    "timeout":600,
    "method":"aes-256-cfb"
}

然后
nohup ssserver -c /etc/shadowsocks-python_1.json > /dev/null &
(回车2次)

 还可创建另外的账号:
nano /etc/shadowsocks-python_2.json
内容如下:
{
    "server":"0.0.0.0",
    "server_port":7088,
    "local_port":1080,
    "password":"your_password2",
    "timeout":600,
    "method":"aes-256-cfb"
}

然后
nohup ssserver -c /etc/shadowsocks-python_2.json > /dev/null &
(回车2次)


在linux桌面系统/mac上的用法
先编译shadowsocks:
wget https://pypi.python.org/packages/source/s/shadowsocks/shadowsocks-2.8.2.tar.gz
tar zxvf shadowsocks-2.8.2.tar.gz
cd shadowsocks-2.8.2
python setup.py install

sudo sslocal -s server_ip -p server_port -l 2345 -k password -m aes-256-cfb -t 600 -d start

然后设置浏览器的socks5代理为127.0.0.1:2345,即可翻墙。(上面的2345是指定的本地端口)

若未指定本地的端口,则默认为1080:
sudo sslocal -s server_ip -p server_port -k password -m aes-256-cfb -d start

from https://pypi.python.org/pypi/shadowsocks
https://github.com/shadowsocks/shadowsocks/wiki/Shadowsocks-使用说明
https://github.com/long-live-shadowsocks/shadowsocks
https://github.com/shadowsocks-backup/shadowsocks
---------------

手动搭建shadowsocks服务,支持aes-256-gcm


为什么不用shadowsocks一键搭建脚本呢?

本来一直在用秋水大大的一键脚本搭建shadowsocks服务,比较方便,无奈新买的vps运行一键脚本总是出问题,只能选择手动搭建。

安装pip

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py

安装配置shadowsocks
原教程安装的shadowsocks2.8.2版本,不支持aes-256-gcm,
我们这里安装3.0版本的。

pip install --upgrade pip
sudo pip install https://github.com/shadowsocks/shadowsocks/archive/master.zip -U

安装完成创建shadowsocks配置文件,

nnao /etc/shadowsocks-gcm.json
内容为:
{
    "server":"0.0.0.0",
    "server_port":7088,
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"your_password",
    "method":"aes-256-gcm"
}

然后,ssserver -c  /etc/shadowsocks-gcm.json

让ss客户端支持aes-256-gcm加密方式

之前无法使用aes-255-gcm加/解密方式,是因为通过apt直接下载的ss客户端不是3.0版本的,好像是2.X版本,具体忘了。
只有3.0及以上才有该加密方式
下载3.0可以通过 pip install https://github.com/shadowsocks/shadowsocks/archive/master.zip -U来搞定。
之后就是简单的配置一个json格式的配置文件ss-python-gcm.json,
如下:
{
    "server":"代理服务器地址",
    "server_port":代理服务器端口,
    "local_address":"127.0.0.1",(本地地址)
    "local_port":1080,(本地端口可以修改为别的,只要别和自己的应用或服务端口冲突)
    "password":"代理服务密码",
    "method":"aes-256-gcm"
}
然后就是启动服务,sslocal -c ss-python-gcm.json

--------------------------------------

Shadowsocks多端口、多密码配置


多用户模式是什么?
就是使用一个配置文件,存放多个端口+密码的信息,如果你在共享你的ss,那么这个功能将十分实用。
如果你的英文不错,可以直接参考官方文档
需要注意的是,目前只有PythonGo写的服务器端才支持此特性。
下面是官方给出的配置例子:
{
    "server": "0.0.0.0",    "local_port":1080,

    "port_password": {
        "8381": "foobar1",
        "8382": "foobar2",
        "8383": "foobar3",
        "8384": "foobar4"
    },
    "timeout": 300,
    "method": "aes-256-cfb"
}
运行的时候指定-c /path/to/config.json即可!

对于多端口的配置,其实非常简单,我们只需要打开服务器端的config.json文件,删掉port和password那2行,添加一个port_password字段,里面记录所有的用户:
"port_password": { "8381": "foobar1", "8382": "foobar2", "8383": "foobar3", "8384": "foobar4" },

修改完成之后,正常使用指令ssserver -c /path/to/config.json -d start就可以了 .

另外,还可看看https://github.com/shadowsocks/shadowsocks/wiki/Manage-Multiple-Users

这里https://github.com/iMeiji/shadowsocks_install 有很多不同版本的ss的一键安装脚本。
https://github.com/teddysun/shadowsocks_install 
---------

Shadowsocks Python 版一键安装脚本


本脚本适用环境:

系统支持:CentOS 6,7,Debian,Ubuntu
内存要求:≥128M

关于本脚本:

一键安装 Python 版 Shadowsocks 的最新版。

默认配置:

服务器端口:自己设定(如不设定,默认为 8989)
密码:自己设定(如不设定,默认为 teddysun.com)
加密方式:自己设定(如不设定,默认为 aes-256-gcm)
备注:脚本默认创建单用户配置文件,如需配置多用户,安装完毕后参照下面的教程示例手动修改配置文件后重启即可。

使用方法:

使用root用户登录,运行以下命令:

1
2
3
wget --no-check-certificate -O shadowsocks.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
chmod +x shadowsocks.sh
./shadowsocks.sh

安装完成后,脚本提示如下:

1
2
3
4
5
6
7
8
Congratulations, Shadowsocks-python server install completed!
Your Server IP :your_server_ip
Your Server Port :your_server_port
Your Password :your_password
Your Encryption Method:your_encryption_method

Welcome to visit:https://teddysun.com/342.html
Enjoy it!

卸载方法:

使用root用户登录,运行以下命令:

1
./shadowsocks.sh uninstall

单用户配置文件示例(2015 年 08 月 28 日修正):
配置文件路径:/etc/shadowsocks.json

1
2
3
4
5
6
7
8
9
10
{
"server":"0.0.0.0",
"server_port":your_server_port,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"your_password",
"timeout":300,
"method":"your_encryption_method",
"fast_open": false
}

多用户多端口配置文件示例(2015 年 08 月 28 日修正):
配置文件路径:/etc/shadowsocks.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"server":"0.0.0.0",
"local_address":"127.0.0.1",
"local_port":1080,
"port_password":{
"8989":"password0",
"9001":"password1",
"9002":"password2",
"9003":"password3",
"9004":"password4"
},
"timeout":300,
"method":"your_encryption_method",
"fast_open": false
}

使用命令(2015 年 08 月 28 日修正):

启动:/etc/init.d/shadowsocks start

停止:/etc/init.d/shadowsocks stop

重启:/etc/init.d/shadowsocks restart

状态:/etc/init.d/shadowsocks status