进阶教程
综合资讯
2024年AI中转站Sub2API搭建全攻略:从零开始到完整部署的详细步骤与最佳实践
摘要
Sub2API可将Claude、OpenAI等AI平台的API统一管理,降低复杂度并提升安全性。支持个人管理、团
???? AI 中转站(Sub2API)搭建
先来聊聊核心价值。无论是个人开发者还是企业团队,在使用多个AI平台时都会面临一个常见痛点——管理不同的API接口。Claude、OpenAI、Gemini,每个平台都有自己的Key和调用方式,一旦数量多起来,安全性和管理效率都会成为问题。而Sub2API这个方案,恰好提供了一个优雅的解决路径。
它的核心作用,是把多个平台上散落的API统一成一个接口,不仅降低了管理复杂度,更重要的是可以自行掌控安全性。自己搭建的中转站,请求内容——无论是System Prompt、API Key还是代码——不会经过第三方服务,泄露风险自然大幅降低。这对于那些需要保护业务逻辑或敏感数据的场景来说,尤为重要。
适用场景也非常明确:个人统一管理多个AI服务、小团队拼车共享资源、或者单纯想规避官方按量计费的直接风险。
源码地址:https://github.com/Wei-Shaw/sub2api/blob/main/README_CN.md
准备工作
在动手之前,先确认一下你需要准备什么。
| 项目 | 要求/建议 |
|------|----------|
| 服务器 | 海外VPS(如AWS、Vultr、DigitalOcean),最低1核1GB(自用足够) |
| 操作系统 | Ubuntu 24(本文基于此版本) |
| 域名 | 推荐使用Cloudflare托管(隐藏IP、免费SSL、端口转发) |
| 本地工具 | SSH客户端(Xterminal、Terminus等) |
这些硬件和软件准备到位后,就可以正式开始部署了。
通用部署方式(非Docker)
这种方式来自第一篇文章,更贴近底层系统,适合对运行环境有更强把控需求的用户。
连接服务器
使用SSH工具登录你的服务器,记录下服务器信息——IP、端口、用户名和密码。这一步没什么好说的,常规操作。
安装Sub2API核心
```
mkdir -p sub2api-deploy && cd sub2api-deploy
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/docker-deploy.sh | bash
```
安装过程中需要你设置两样东西:
- 监听地址:直接回车(默认即可)
- 服务端口:自定义,比如 `10086`(范围1024-65535),务必记下来
安装PostgreSQL(数据库)
```
sudo apt update
sudo apt install -y postgresql postgresql-contrib
sudo systemctl enable postgresql
sudo systemctl start postgresql
# 创建数据库和用户(替换密码)
sudo -u postgres psql -c "CREATE USER sub2api_user WITH ENCRYPTED PASSWORD '你的强密码';"
sudo -u postgres psql -c "CREATE DATABASE sub2api OWNER sub2api_user;"
```
记录以下信息:地址 `127.0.0.1`,端口 `5432`,名称 `sub2api`,用户名 `sub2api_user`,密码(自己设置的)。
安装Redis(缓存)
```
sudo apt install -y redis-server
sudo systemctl enable redis-server
sudo systemctl start redis-server
# 设置密码(替换密码)
sudo sed -i "s/^# requirepass foobared/requirepass 你的强密码/" /etc/redis/redis.conf
sudo systemctl restart redis-server
```
记录信息:地址 `127.0.0.1`,端口 `6379`,密码(自己设置的)。
域名与Cloudflare配置
域名可以在Cloudflare购买(需要外币卡),也可以使用已有的域名。DNS解析上,添加一条A记录,比如 `api` → 服务器IP,开启Proxy Status(橙色云朵)。
端口转发需要使用Origin Rule:进入Cloudflare控制台 → Rules → Origin Rules → Create Rule,字段选Hostname匹配 `api.你的域名.com`,操作为Rewrite to端口(如 `10086`)。SSL/TLS选择Flexible模式。
Sub2API后台初始化
访问 `https://api.你的域名.com`,按照向导填写PostgreSQL和Redis的连接信息,设置管理员账号和密码。完成后就可以进入后台了。
Docker部署方式(推荐)
这是第二篇文章推荐的方式,最省心的一点是,所有组件都整合在一个compose文件里,管理起来非常方便。
创建项目目录和compose文件
```
mkdir -p /data/sub2api && touch /data/sub2api/compose.yaml
```
编辑compose.yaml内容
使用第二篇文章提供的完整Docker Compose配置(详见原文代码块)。有几个关键默认密码/密钥必须修改:
- `DATABASE_PASSWORD`
- `REDIS_PASSWORD`
- `ADMIN_EMAIL` / `ADMIN_PASSWORD`
默认端口是 `6780`,可以自行修改。安全方面注意,如果使用HTTPS,建议删除环境变量中的 `SECURITY_URL_ALLOWLIST_ENABLED=false` 和 `SECURITY_URL_ALLOWLIST_ALLOW_INSECURE_HTTP=true`。
启动服务
```
cd /data/sub2api
docker compose up -d
```
等待镜像拉取并启动,用 `docker ps` 检查容器状态。如果一切正常,服务就应该在跑了。
访问与配置
访问 `http://服务器IP:6780`(或你设置的端口),使用compose.yaml中设置的 `ADMIN_EMAIL` / `ADMIN_PASSWORD` 登录。
Sub2API后台使用
两部分文章在这块高度一致,后台操作逻辑完全一样。
创建分组(对应不同AI平台)
进入分组管理 → 创建分组 → 输入名称、选择平台(OpenAI、Claude等)。这一步其实是在为后续的账号管理做分类,逻辑很清晰。
添加账号(以OpenAI OAuth为例)
账号管理 → 添加账号 → 选择平台和分组。账号类型选OAuth → 生成授权链接 → 在浏览器完成登录 → 复制回调URL完成授权。整个过程就像给第三方应用授权一样。
创建API密钥
API密钥 → 创建密钥 → 选择分组 → 生成。记录下API端点(BaseURL)和密钥(API Key)。
客户端使用(如cc switch)
供应商名称自定义,API Key从Sub2API复制,请求地址是Sub2API的端点(`https://api.你的域名.com` 或 `http://IP:端口`)。模型列表会自动获取,选择你需要的模型,比如 `gpt-5.5`。
安全与维护建议
| 方面 | 建议 |
|------|------|
| 访问安全 | 使用Cloudflare袋里(隐藏真实IP)、开启HTTPS(Flexible/Full)、禁用HTTP内网明文 |
| 数据安全 | 定期备份PostgreSQL和Redis数据目录;环境变量中的密码使用强密码 |
| 更新 | Docker方式:`docker compose pull && docker compose up -d`;脚本方式:重新运行安装脚本 |
| 监控 | 定期检查容器日志(`docker logs sub2api`)或服务器资源占用 |
常见问题速查
| 问题 | 可能原因 | 解决方案 |
|------|----------|----------|
| 无法访问后台 | 端口未开放(防火墙/安全组) | 在VPS控制台允许自定义端口(如10086/6780) |
| 授权后无法跳转 | OAuth回调地址不含端口 | 使用域名+Origin Rule解决(非Docker方式)或直接用IP+端口访问 |
| 模型调用失败 | 分组/账号未正确关联 | 检查账号是否激活,分组是否勾选正确 |
| Redis连接错误 | 密码未设置或compose中不一致 | 确保REDIS_PASSWORD与Redis command中的--requirepass一致 |
两种部署方式各有侧重:通用脚本部署更贴近系统和底层,Docker方式更易于维护与管理。对于大多数用户来说,Docker方式确实更省心,开箱即用。如果具体步骤上卡住了,不妨选择其中一种方式,描述一下你遇到了什么现象,可以再一起排查。

来源:互联网
免责声明
本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。