ShadowsocksR 多用户版安装教程

VPS推荐: vultr15个机房可选,月付

其他VPS请参考“国外VPS推荐”系列文章,有更多优惠码、活动等

以下命令均以root用户执行,或sudo方式执行

基本库安装

centos:

yum install git

ubuntu/debian:

apt-get install git

获取源代码

git clone -b manyuser https://github.com/Ssrbackup/shadowsocksr.git

执行完毕后此目录会新建一个shadowsocks目录,其中根目录的是多用户版(即数据库版),子目录中的是单用户版。

根目录即 ./shadowsocksr

子目录即 ./shadowsocksr/shadowsocks

然后请进入根目录执行后面的操作

cd shadowsocksr

安装依赖(cymysql)

执行

./setup_cymysql.sh

服务端配置

进入根目录初始化配置:

./initcfg.sh

shadowsocksr目录内,

1.对userapiconfig.py里以下内容进行相应修改:

API_INTERFACE = 'sspanelv2' //修改接口类型

根据你的数据库类型,需正确选择使用sspanelv2, sspanelv3, sspanelv3ssr, glzjinmod, legendsockssr之一

2. 然后修改usermysql.json里面的内容:

{
    "host": "127.0.0.1",
    "port": 3306,
    "user": "ss",
    "password": "pass",
    "db": "shadowsocks",
    "node_id": 1,
    "transfer_mul": 1.0,
    "ssl_enable": 0,
    "ssl_ca": "",
    "ssl_cert": "",
    "ssl_key": ""
}

后面有文章介绍如何安装数据库
CREATE TABLE `user` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `user_name` varchar(128) COLLATE utf8_unicode_ci NOT NULL,
 `email` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
 `pass` varchar(64) COLLATE utf8_unicode_ci NOT NULL,
 `passwd` varchar(16) COLLATE utf8_unicode_ci NOT NULL,
 `t` int(11) NOT NULL DEFAULT '0',
 `u` bigint(20) NOT NULL DEFAULT '0',
 `d` bigint(20) NOT NULL DEFAULT '0',
 `transfer_enable` bigint(20) NOT NULL DEFAULT '0',
 `port` int(11) NOT NULL DEFAULT '0',
 `switch` tinyint(4) NOT NULL DEFAULT '1',
 `enable` tinyint(4) NOT NULL DEFAULT '1',
 `type` tinyint(4) NOT NULL DEFAULT '1',
 `last_get_gift_time` int(11) NOT NULL DEFAULT '0',
 `last_check_in_time` int(11) NOT NULL DEFAULT '0',
 `last_rest_pass_time` int(11) NOT NULL DEFAULT '0',
 `reg_date` timestamp NOT NULL DEFAULT '1989-06-04 03:10:29',
 `invite_num` int(11) NOT NULL DEFAULT '0',
 `is_admin` int(11) NOT NULL DEFAULT '0',
 `ref_by` int(11) NOT NULL DEFAULT '0',
 `expire_time` int(11) NOT NULL DEFAULT '0',
 `method` varchar(64) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'rc4-md5',
 `custom_method` tinyint(4) NOT NULL DEFAULT '0',
 `custom_rss` tinyint(4) NOT NULL DEFAULT '0',
 `protocol` varchar(128) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'origin',
 `protocol_param` varchar(128) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
 `obfs` varchar(128) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'plain',
 `obfs_param` varchar(128) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
 `is_email_verify` tinyint(4) NOT NULL DEFAULT '0',
 `reg_ip` varchar(128) COLLATE utf8_unicode_ci NOT NULL DEFAULT '127.0.0.1',
 `v2ray_uuid` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
 `v2ray_level` int(11) NOT NULL DEFAULT '2',
 `v2ray_alter_id` int(11) NOT NULL DEFAULT '2',
 PRIMARY KEY (`id`),
 UNIQUE KEY `email` (`email`),
 UNIQUE KEY `port` (`port`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

以上包括(按次序):数据库服务器地址,端口,数据库登陆用户名,密码,数据库表,节点ID(sspanelv3支持),流量比率,开启mysql的SSL连接等等

要注意sspanelv3必须正确填写node_id才能正常使用,并且在填写该ID前,必须在面板上已经添加好该节点,以确定节点ID后,再在此处填写。

然后编辑user-config.json:

"method":"aes-256-cfb",                  //修改成您要的加密方式的名称
"protocol": "auth_sha1_v4",              //修改成您要的协议插件名称
"obfs": "tls1.2_ticket_auth_compatible", //修改成您要的混淆插件名称

服务端运行与停止

以下命令在根目录下执行:

python server.py

这时可查看有运行情况,检查有没有错误。如果服务端没有错误,而连接不上,需要检查iptables或firewall(centos7)的防火墙配置

####通过脚本运行#### 以下命令在根目录下执行:

后台运行(无log,ssh窗口关闭后也继续运行)

./run.sh

后台运行(输出log,ssh窗口关闭后也继续运行)

./logrun.sh

后台运行时查看运行情况

./tail.sh

停止运行

./stop.sh

注:通过脚本运行默认日志会保存在根目录的ssserver.log,可手动查看。

更新源代码

如果代码有更新可用本命令更新代码

以下命令在根目录下执行:

执行

git pull

成功后重启ssr服务

其它异常

如果你的服务端python版本在2.6以下,那么必须更新python到2.6.x或2.7.x版本

如果连接数据库遇到这个错误:Can't get hostname for your address,请在数据库服务器的 my.cnf 里 mysqld 添加如下设置

skip-name-resolve

然后重启数据库。

其它重要配置

参见 https://github.com/breakwa11/shadowsocks-rss/wiki/ulimit

未经允许不得转载:国外主机测评 » ShadowsocksR 多用户版安装教程

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏