依赖python,python-pip
pip管理工具中有ss的工具
环境:
- 内核:2.6.32-042stab120.20,budgetvm的普通VPS不能升级内核,一点办法儿都没有,摊手!
- 系统:CentOS7.2
- VPS位置:LA
本机默认python版本2.7.5,而且没有pip包管理工具。无解,在当前都已经有3.7了。
话不多说,列出步骤:
本机添加epel源,包含了很多额外的软件包、工具包,比官方的版本会更新
1
yum install -y epel-release
查找python的新版本,应该是能看到python34和python36,分别对应python3.4版本和python3.6版本
1
yum search python
安装python36和python36-pip,因为最后是需要通过pip来安装shadowsocks,所以需要安装一个pip包管理工具
1
yum install -y python36 python36-pip
查找shadowsocks工具,由于装的是python36-pip,pip执行命令也变成了pip3.6
1
pip3.6 search shadowsocks
安装shadowsocks工具
1
pip3.6 install shadowsocks
编写配置文件
1
2mkdir /etc/shadowsocks
vim /etc/shadowsocks/shadowsocks.json
配置文件内容的一些说明
- method:加密方式,可选多种的
- port_password:通过设置不同端口来实现不同用户,所以这里针对不同端口设置密码
- _comment:设置不同端口对应不同用户的账号
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18{
"method": "aes-256-cfb",
"timeout": 600,
"port_password":
{
"40000": "user1_pass",
"40001": "user2_pass",
"40002": "user3_pass",
"40003": "user4_pass"
},
"_comment":
{
"40000": "user1",
"40001": "user2",
"40002": "user3",
"40003": "user4"
}
}
安装gevent,gevent可以提高shadowsocks的性能
1
pip3.6 install gevent
执行启动命令,shadowsocks.log路径可自定义
1
nohup ssserver -c /etc/shadowsocks/shadowsocks.json > /usr/local/shadowsocks/log/shadowsocks.log &
再做一个简单的端口监控,看看哪个账号用得比较多
1
2
3
4
5
6
7
8#!/bin/bash
#
# File: shadowsocks-port-ip-monitor.sh
#
filename="port-ip-monitor.log"
regex="4000[0-5]" # monitor 40000-40005
date +"[%Y-%m-%d %H:%M:%S]" >> $filename
netstat -anp | egrep $regex | grep -E "tcp.*ESTABLISHED" | awk '{print $4, $5}' | cut -d: -f2 | sort -u >> $filename启动定时任务,一分钟执行一次,
crontab -e
1
* * * * * sh /usr/local/shadowsocks/shell/shadowsocks-port-ip-monitor.sh
(•̀ᴗ•́)و ̑̑