SUB-WEB配合SUBCONVERTER转换后台转换订阅
1.前言
之前一直在手机端使用v2rayNG和软路由进行科学上网,最近在youtube上看了腹语哥(洋葱)的视频以后,将手机端转向了surfboard,PC和mac端专项了clash,享受规则和方便绕过app的便利带来的快感的同时,速度也并未打折扣。但随之而来的是订阅转换的问题,V2rayNG导出的全部地址并不能被surfboard和clash识别,只能单条导入,比较麻烦。而且单条导入以后并没有规则存在,使两款软件浪费了90%的功能。
在这种前提下,订阅转换加规则成为了首要任务,网络上搜集到了subconverter的转换后台,subconverter本地或者服务器部署都很方便,我是部署在了服务器上,及sub-web的前端配合使用,加上acl4ssr的规则,使订阅能够正常转换并加载我想要搭载的规则,能够满足我使用上的需求。
本文则是记录我在部署时的流程。
2.项目地址:
clash:Github
clash for windows:Github
clashx for mac:Github
clash for Android:Github
surboard:Play store
subconverter:Github
meta内核的subconverter:Github
sub-web:Github
ACL4SSR: ACL4SSR规则
3.服务器部署:
3.1下载subconverter
wget https://github.com/tindy2013/subconverter/releases/latest/download/subconverter_linux64.tar.gz
解压
tar -xvf subconverter_linux64.tar.gz
修改 pref.ini 中字段
api_access_token=123456#修改成你的密钥
managed_config_prefix=http://127.0.0.1:25500 #修改成你喜欢的端口,如不修改默认本地25500端口
;Address to bind on for Web Server
listen=127.0.0.1 #修改成你的地址
;Port to bind on for Web Server
port=25500 #修改成你的端口
将下载到的ACL4SSR的规则文件拷贝到subconverter下的文件夹中
git clone https://github.com/ACL4SSR/ACL4SSR.git
ACL4SSR/Clash/下的文件拷贝到subconverter/rules/ACL4SSR/Clash/中
cp -R /root/ACL4SSR/Clash /root/subconverter/rules/ACL4SSR/
ACL4SSR/Clash/config/下的.ini文件拷贝到subconverter/config/中
cp -R /root/ACL4SSR/Clash/config/ /root/subconverter/
执行 ,默认监听 25500
./subconverter
采用 pm2 来管理后台运行和开启自启
安装 pm2
wget -qO- https://getpm2.com/install.sh | bash
启动 subconverter
pm2 start subconverter
生成启动脚本
pm2 startup
pm2 save
到此为止已经将subconverter转换后台搭建完成
3.2搭建subweb前端
先安装docker和docker-compose。可以去之前的文章看安装docker-compose
下一步,构建subweb前端docker
git clone https://github.com/CareyWang/sub-web.git sub-web
cd sub-web
修改.env文件
VUE_APP_PROJECT = "https://github.com/CareyWang/sub-web"
VUE_APP_BOT_LINK = "https://t.me/CareyWong_bot"
VUE_APP_BACKEND_RELEASE = "https://github.com/tindy2013/subconverter/releases"
VUE_APP_SUBCONVERTER_REMOTE_CONFIG = "https://raw.githubusercontent.com/tindy2013/subconverter/master/base/config/example_external_config.ini"
# API 后端
VUE_APP_SUBCONVERTER_DEFAULT_BACKEND = "http://127.0.0.1:25500" #修改成你的api地址
# 短链接后端
VUE_APP_MYURLS_DEFAULT_BACKEND = ""
# 文本托管后端
VUE_APP_CONFIG_UPLOAD_BACKEND = ""
# 页面配置
VUE_APP_USE_STORAGE = true
VUE_APP_CACHE_TTL = 86400
修改sub-web/src/views/Subconverter.vue
const defaultBackend = "https://aa.bb.cc/sub?"; #修改成你的api地址,上文是http://127.0.0.1:25500/sub?
const shortUrlBackend = "https://aa.bb.cc/short"; #修改成你的地址
const configUploadBackend = "https://aa.bb.cc/config/upload"; #修改成你的地址
backendOptions: [{ value: "http://127.0.0.1:25500/sub?" }], #修改成你的api地址,上文是http://127.0.0.1:25500/sub?
然后在
backendOptions: [{ value: "http://127.0.0.1:25500/sub?" }], #修改成你的api地址
remoteConfig: [
下面添加:
{
label: "ACL4SSR",
options: [
{
label: "ACL4SSR_Online 默认版 分组比较全 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online.ini"
},
{
label: "ACL4SSR_Online_AdblockPlus 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_NoAuto 无自动测速 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoAuto.ini"
},
{
label: "ACL4SSR_Online_NoReject 无广告拦截规则 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoReject.ini"
},
{
label: "ACL4SSR_Online_Mini 精简版 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini.ini"
},
{
label: "ACL4SSR_Online_Mini_AdblockPlus.ini 精简版 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_Mini_NoAuto.ini 精简版 不带自动测速 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_NoAuto.ini"
},
{
label: "ACL4SSR_Online_Mini_Fallback.ini 精简版 带故障转移 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_Fallback.ini"
},
{
label: "ACL4SSR_Online_Mini_MultiMode.ini 精简版 自动测速、故障转移、负载均衡 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiMode.ini"
},
{
label: "ACL4SSR_Online_Full 全分组 重度用户使用 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full.ini"
},
{
label: "ACL4SSR_Online_Full_NoAuto.ini 全分组 无自动测速 重度用户使用 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_NoAuto.ini"
},
{
label: "ACL4SSR_Online_Full_AdblockPlus 全分组 重度用户使用 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_Full_Netflix 全分组 重度用户使用 奈飞全量 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Netflix.ini"
},
{
label: "ACL4SSR 本地 默认版 分组比较全",
value: "config/ACL4SSR.ini"
},
{
label: "ACL4SSR_Mini 本地 精简版",
value: "config/ACL4SSR_Mini.ini"
},
{
label: "ACL4SSR_Mini_NoAuto.ini 本地 精简版+无自动测速",
value: "config/ACL4SSR_Mini_NoAuto.ini"
},
{
label: "ACL4SSR_Mini_Fallback.ini 本地 精简版+fallback",
value: "config/ACL4SSR_Mini_Fallback.ini"
},
{
label: "ACL4SSR_BackCN 本地 回国",
value: "config/ACL4SSR_BackCN.ini"
},
{
label: "ACL4SSR_NoApple 本地 无苹果分流",
value: "config/ACL4SSR_NoApple.ini"
},
{
label: "ACL4SSR_NoAuto 本地 无自动测速 ",
value: "config/ACL4SSR_NoAuto.ini"
},
{
label: "ACL4SSR_NoAuto_NoApple 本地 无自动测速&无苹果分流",
value: "config/ACL4SSR_NoAuto_NoApple.ini"
},
{
label: "ACL4SSR_NoMicrosoft 本地 无微软分流",
value: "config/ACL4SSR_NoMicrosoft.ini"
},
{
label: "ACL4SSR_WithGFW 本地 GFW列表",
value: "config/ACL4SSR_WithGFW.ini"
}
]
},
以此格式添加各.ini的文件地址
最后build成docker文件
docker-compose up -d
可以访问ip:58080来使用了
meta内核的subconverter部署与正常的操作一致