准备工作

  • 一台VPS

  • 一个域名(可选)

  • Cloudflare账号(可选)

在VPS上部署

安装1panel面板

前往1panel官方文档根据你VPS的系统在你的VPS上安装1panel面板。

或者你可以直接复制下面的指令:

Ubuntu系统

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

其他的系统请前往官方安装文档查询。

部署Sub-Store

下面是以Docker安装Substore

docker run -it -d \

--restart=always \

-e "SUB_STORE_CRON=50 23 * * *" \

-e SUB_STORE_FRONTEND_BACKEND_PATH=/T3B9dgzBzdRbBF8Aqx7P \

-p 127.0.0.1:3001:3001 \

-v /etc/sub-store:/opt/app/data \

--name sub-store \

xream/sub-store

在复制前你需要注意以下几点:

  • 你是否需要用域名反代你的Substore网页?

不需要的话,那么倒数第四行的

-p 127.0.0.1:3001:3001 \

需要将 127.0.0.1 换成你VPS的IP,搭建完成后就可以直接用 IP:端口 的方式访问(不是纯IP+端口!)

若需要的话,不动即可

  • 你是否需要将由Substore生成出来的链接分享给他人?

若需要,强烈推荐用域名反代你的Substore,否则你的VPS IP将会泄漏。

还有一个非常重要的一点

第三行的-e SUB_STORE_FRONTEND_BACKEND_PATH=/T3B9dgzBzdRbBF8Aqx7P 结尾的T3B9dgzBzdRbBF8Aqx7P一定要换掉!!

这是你进入Substore的密码凭证,没有这个凭证你将进不去,他人知道了你这个凭证就可以进入你的Substore,窃取你的所有订阅!

在谷歌上找密码生成器生成20位密码,替换掉这里的即可,其他的不用变,然后将编辑好的代码输入到对话框中,回车,Substore就开始安装了。

确认Substore已经安装

前往1panel面板,访问地址和账号密码会在安装好1panel时就告诉你。进入1panel后,点左上角打开侧边栏选择容器,看看是否有个叫Substore的容器正在运行。若显示正在运行,则已经安装完成。

通过IP访问Substore

若你没有想要反代的想法,并且已经在安装前更改了脚本的IP,那么你可以通过下面的网站访问你的Substore

http://192.168.10.8:3001?api=http://192.168.10.8:3001/CKg2abstVnOeRpm1aB4G

其中需要注意的是,网址里的IP你需要更换成你VPS的IP,网址最后的密码要换成你脚本里的密码

若链接不上请检查IP和密码是否正确,3001端口是否被放行。

反向代理你的Substore网页

域名的工作

首先你需要拥有一个已经托管在Cloudflare上的域名,前往Cloudflare,新增DNS记录。

类型:A

名称:(根据你喜好输入,输入后你的网址前缀就是你输入的名称)

地址:你VPS的地址

代理状态可开可不开。

其他默认,然后保存。

域名这里的就已经搞定了。

反向代理你的网站

前往1Panel后台,打开侧边栏点击网站。若初次使用,他会要求你安装OpenResty,根据要求安装即可(1panel应用商店就有,不麻烦)。

在等待期间,我们可以先搞定证书的部分,网站下面就是证书栏,打开后我们会看到上面有五个按钮。

其中我们要先设置Acme账户和DNS账户。

点击Acme账户,然后点创建,会显示如下弹窗

邮箱那一栏输入你自己的邮箱即可,账号类型第一个第二个都可以,二选一随便你,其他默认即可,点击确认创建账户。

点击DNS账户,点击创建,会弹出如下弹窗

其中类型我们要选择Cloudflare,名称任意,你自己知道就好,Email输入cloudflare绑定的email,API Token我们要去cloudflare创建并获取。

创建并获取Cloudflare API Token

我们回到我们的托管域名的地方,点击左上角三条杠打开侧边栏,点击概述,往下滑找到如下区域

点击获取您的API令牌。

以下操作跟着我做!

点击创建令牌

使用 编辑区域DNS 的模板

点击 编辑区域DNS 右边的使用模板

区域资源里选择你的域名

然后下滑点击 继续以显示摘要

看到这个页面后点击创建令牌

你的令牌就创建好了,点击复制然后粘贴到1panel DNS账户的API Token那一栏,最后点击确定即可。

那么恭喜,这两个申请证书的账号就已经创建好了。

设置反向代理

我们回到1panel的网站那一栏,可以看到已经可以创建网站了。

点击创建,在最上面选择反向代理。

在主域名那一栏,输入你在cloudflare里创建的DNS记录的域名(图中示例为sub.example.com),然后代理地址要填写 127.0.0.1:端口(端口以安装substore脚本的上的为准,你要是没有更改那么就是3001),只需要更改这两个,其他的默认即可,往下点击确认。

然后来到证书那一栏

点击申请证书,会出现如下弹窗

在“从网站中获取”那一栏选择你刚刚添加的网站,选择好你创建的Acme账户和DNS账号,密钥算法要选择你Acme账户创建时选择的算法。如图所示。

然后点击确认,会出现如下弹窗。

只要最下面出现申请证书成功,说明证书已经搞好了。

回到网站,往右滑点击你网站的配置,会出现如下页面

选择HTTPS,在右边最上面打开 启动HTTPS,然后SSL选项选择选择已有证书,Acme账户选择你创建证书的账户,然后下面那栏证书选择你的网站的证书,其他不变,点击保存。

那么恭喜,此刻你的Substore已经配置好了!

通过网址链接Substore

通过以下网址链接你的Substore

https://sub.example.win?api=https://sub.example.win/CKg2abstVnOeRpm1aB4G

根据自己情况修改IP以及域名,将口令修改为你设置的后端 20 位访问密钥。