lala.im:ss-panel-v3-mod魔改版单端口多用户配置教程

運維技術·VPN代理·lala.im · 2017-09-15 · 144 人浏览

原文地址:https://lala.im/1155.html,請支持原作者!該處僅作轉載。

本来不打算写这个教程的,因为我个人是不建议使用单端口多用户的,这个功能在ss-panel-v3-mod上并不是特别好用。另外在安全性等方面肯定都是不如一人一端口的。
但昨天有人找我,特地说他的项目就需要用这个单端口多用户,没办法我就去折腾了一下,准确点说不是一下,是折腾了很久才对。。。我也是第一次配置这个单端口多用户,着实有点蛋疼,不过好在最后我算是配置成功了吧,但有一些问题我无法确定是我的原因还是面板本身的原因造成的。鉴于我花了大半天的时间去研究这个,又在搜索一些相关问题的时候发现网上对这个单端口多用户的配置基本上没有完整的教程,LALA这里就写一个吧~
首先你要自己注册一个普通用户账号,注册步骤什么的就不写了,很简单。接着用管理员账号登录你的面板,进入到后台点击“用户列表”编辑你刚才注册的那个账号:

範例
将这个用户的类型改成“协议式单端口多用户承载端口”:

範例
往下拉修改这个用户的自定义协议为:

auth_aes128_md5

修改自定义混淆方式为:

http_simple

如图:

範例
如不需要修改端口,那么这一块的操作就完成了,点击修改按钮完成修改即可。如果需要修改端口,那么你就更改这个用户的连接端口即可。
接着打开你站点根目录下的config目录,编辑.config.php文件。
修改#多用户混淆参数后缀

$System_Config['mu_suffix']='v1m3cc2x';

修改#多用户混淆参数表达式,%5m代表取用户特征md5的前五位,%id代表用户id,%suffix代表上面这个后缀

$System_Config['mu_regex']='%5m';

如图:

範例
使用Xshell登录你的VPS,修改ss后端的配置文件:

cd shadowsocks
vi userapiconfig.py

确保后端的MU_SUFFIX、MU_REGEX值与前端.config.php中的一致,如图:

範例
修改完毕后停止运行当前后端:

./stop.sh

重新启动后端:

./run.sh

回到ss-panel-v3-mod面板中,点击“节点列表”增加一个新节点。
节点地址填写我们刚才创建的那个用户的端口号,如图:

範例
接着将节点类型设置成“Shadowsocks 单端口多用户”如图:

範例
其他选项自行填写即可,填写完毕添加节点即可。
此时我们以普通用户的身份访问面板,点击节点标签就可以看到节点下面会多显示一个单端口多用户的列表了:

範例
使用SSR客户端填写相应的信息就可以连接了。至此,单端口多用户的配置就算完成了。
LALA的后话:
我使用相同的步骤和方法配置单端口多用户在最新版的ss-panel-v3-mod中发现现有用户能够成功连接,但新注册的用户死活连接不上,看了后端的报错信息也找不出个所以然来,后端就一直报什么协议错误、加密错误等等,但我可以肯定我在客户端设置的协议和加密都是正确的。其次,这个问题有一个奇葩的递归关系,即假设我是第一个注册的新用户,此时我是无法连接上的,但如果又有第二个人注册了账号,那么我的就能连接上了,而在我后面注册的这个人就无法连接,同理有第三个人注册的时候,我和第二个人就都能正常连接了,但第三个人无法连接。
为了证实我的步骤和方法是没有错误的,我用完全相同的步骤和方法部署在了我另外一个旧版本的ss-panel-v3-mod中,实测是没有上述问题的。
所以我到现在都还无法确定到底是新版的面板或者说是新版的后端有问题还是VPS配置有问题还是我的步骤哪里有问题,我也懒得弄了,头大。。。另外新版不知道为什么添加节点界面没有了“自定义加密”和“自定义混淆”的选项。
更新:
我想了想还是不死心,我觉得我不解决这个问题,怕是觉都睡不好,所以继续研究了一下午,找到一个暂时可以解决这个问题的办法。
1、停止并删除当前的最新版后端:

cd /root/shadowsocks
./stop.sh
cd /root
rm -rf shadowsocks

2、重新下载后端:

git clone -b manyuser https://github.com/glzjin/shadowsocks.git

3、将后端版本回滚到b669960:

cd shadowsocks
git reset --hard b669960

4、重新编辑后端配置文件:

cp apiconfig.py userapiconfig.py
cp config.json user-config.json
vi userapiconfig.py

5、运行这个后端,现在这个问题应该得到了解决。
我先是尝试回滚面板的版本号,发现回滚后问题依旧存在,接着就回滚了后端版本,再连接就发现没有这个问题了,故应该是后端的问题。所以我git pull将面板重新升级到最新版,保持使用旧版的后端,此问题就迎刃而解。
至于为什么我要将后端回滚到b669960这个版本,是因为我还有一台稳定运行的机器中就是装的这个版本,当然我特地还在这台机器内配置了一遍单端口多用户,是确定完全没有问题的。
当然这个b669960版本和目前的最新版289a410隔了很多个版本,可能在b669960版本之上还有更多比它新的版本都是没有这个问题的,但我就不一一尝试了。另外也可能是我这台机器系统和目前的这个最新版有冲突。所以此问题的解决方法仅供参考,给可能跟我遇到相同问题的朋友们一个参考。
有关Github怎么查看项目历史版本号的方法:
首先切换分支:

範例
点击commits:

範例
即可看到这个项目的所有历史版本:

範例

運維技術 VPN代理 lala.im
Theme Jasmine by Kent Liao