正文

宝塔去除登录绑定手机号 .so 文件+自建云端

声明:本文内容闭住尚未进行任何安装测试。这里仅作收集备份作用,防止原作者受外界因素影响删除。

文件备份2022-6-8:OneDrive

文件较大,大概 271 MB 左右。

教程原文

把 宝塔官方的 .so 文件 删除:libAuth.aarch64.so libAuth.glibc-2.14.x86_64.so libAuth.loongarch64.so libAuth.x86-64.so libAuth.x86.so pluginAuth.cpython-37m-aarch64-linux-gnu.so pluginAuth.cpython-37m-i386-linux-gnu.so pluginAuth.cpython-37m-loongarch64-linux-gnu.so pluginAuth.cpython-37m-x86_64-linux-gnu.so pluginAuth.cpython-310-aarch64-linux-gnu.so pluginAuth.so

把下载下来的 panelPlugin.py panelSSL.py pluginAuth.cpython-37m-x86_64-linux-gnu.so pluginAuth.so 四个文件 替换搭配 /www/server/panel/class 目录下面

pluginAuth.cpython-37m-x86_64-linux-gnu.so pluginAuth.so 因为编译了,暂时不开源,防止泛滥,如果担心安全可以关闭本GitHub项目,懂代码的大佬可以自己拖到 IDA 查看代码!

原理

  1. panelSSL.py 第 1042 行 rtmp = public.httpPost('http://www.example.com/api’+’/GetToken’,pdata) 替换成 你的伪登录token接口
  2. panelPlugin.py 第 38 行 #_check_url=__api_root_url+’/panel/get_soft_list_status’ #检测云端状态的注释掉(上传的文件已经注释掉了)
  3. panelPlugin.py 第 1304 行 #public.run_thread(self.is_verify_unbinding,args=(get,)) #每次加载列表 会 检测账户绑定 !(上传的文件已经注释掉了)

就这么简单 没什么 东西 主要 就是 pluginAuth 文件 加密列表 加密插件(因为用不到 插件安装 都是直接上传 已经下载好的解密插件,所以这个功能就没写)

部署方法

  1. 先装一个 宝塔面板 然后装好环境, 然后 创建1个站点 – example.com / www.example.com (必须填这个域名 用来hosts 重定向的 pluginAuth.so 列表里的 域名是这个)
  2. example.com / www.example.com 站点 301 重定向 到 自己的域名
  3. 创建自己域名的站点 – 绑定自己的域名 例如: domian.com / www.domian.com 导入伪静态 如下:
if (!-d $request_filename){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
# 列表
rewrite ^/(panel/get_plugin_list)$ /panel/get_plugin_list.json?s=/$1 last;
# 登录
rewrite ^/(api/GetToken)$ /api/token.json?s=/$1 last;
rewrite ^/(.*)$ /index.php/$1;
}
  1. 自己域名站点下目录 创建 panel 和 api 文件 把 get_plugin_list.json文件 放到panel文件里,token.json文件 放到api文件里 然后访问 http://domian.com/panel/get_plugin_list / http://domian.com/api/GetToken 看看 能不能访问!(这两个文件在 项目 data 目录里下载 )

  2. 确保以上都操作对了,然后把 宝塔面板里 /www/server/panel/class 目录下面 官方的so 全部删除:libAuth.aarch64.so libAuth.glibc-2.14.x86_64.so libAuth.loongarch64.so libAuth.x86-64.so libAuth.x86.so pluginAuth.cpython-37m-aarch64-linux-gnu.so pluginAuth.cpython-37m-i386-linux-gnu.so pluginAuth.cpython-37m-loongarch64-linux-gnu.so pluginAuth.cpython-37m-x86_64-linux-gnu.so pluginAuth.cpython-310-aarch64-linux-gnu.so pluginAuth.so

  3. 然后 下载项目里的 panelPlugin.py panelSSL.py pluginAuth.cpython-37m-x86_64-linux-gnu.so pluginAuth.so 四个文件 放进去 把 panelSSL.py 里 第 1042 行 rtmp = public.httpPost('http://www.example.com/api’+’/GetToken’,pdata) 替换成 你的伪登录token接口 例如:rtmp = public.httpPost('http://www.domian.com/api’+’/GetToken’,pdata)

  4. 修改 etc/hosts 指引到:

你服务器IP example.com
你服务器IP www.example.com

  1. 最后重启面版就行了,然后登录面板 随便输入 手机号 密码 就可绑定账号!

如果想要修改到期时间,列表文件里搜索 1893513599 批量替换成 新的 Unix时间戳。

原文截图

宝塔去除登录绑定手机号 .so 文件+自建云端