开源与商业许可
TuraIDC 采用 AGPL-3.0-or-later 与商业许可的双许可模式:默认免费开源,不愿承担开源义务的组织可以购买商业授权后闭源使用。
本文面向部署并运营 TuraIDC 的站长与企业技术负责人,讲清两件事:免费路径下你必须履行哪些义务、什么情况下需要买商业许可、以及如何取得源码与授权。
本文是工程侧整理的合规要点,不构成法律意见;正式条款以 AGPL-3.0-or-later 全文、商业许可草案 与双方签署的授权文件为准。有争议场景请咨询法务。
1. 两条路径一眼看懂
| AGPL-3.0-or-later(默认,免费) | 商业许可证(200 元/年) | |
|---|---|---|
| 费用 | 免费 | 200 元/年,按「每个组织每个生产部署」计(可协商) |
| 能否闭源 | 不能:修改后对外提供服务必须公开对应源码 | 可以:授权范围内闭源使用、修改后不公开 |
| 网络服务义务 | 触发 AGPL 第 13 条:向用户提供完整对应源码 | 免除第 13 条 |
| 再分发 | 必须整体按 AGPL 分发,保留许可证与声明 | 不得转售、白牌、再分发源码 |
| 适合谁 | 能接受完全开源、愿意回馈社区的个人/组织/小企业 | 敏感企业:不能公开源码、需私有化交付、闭源二次开发 |
商业许可不是「付费解锁功能」:付费只解决「合法闭源」这一件事,不解锁额外功能、不做功能阉割。(商业版必须满足 CLA.md「商业版本构建规则」的授权链要求;在历史贡献者全部完成补签之前,商业版与 AGPL 版的代码基线可能存在差异,差异只来自授权边界,具体以订单列明为准。)
2. AGPL 免费路径:你拥有的权利
在遵守 AGPL 的前提下,你可以:
- 免费下载、部署、用于商业经营(包括对外卖商品/服务);
- 修改源码、二次开发、开发自己的插件与主题;
- 复制与分发本项目(含修改版),但必须遵守 AGPL。
AGPL 保护的是用户获得源码的自由,不限制你用它赚钱。 卖商品、收服务费都没问题,问题只出在「改了却不开源」或「闭源分发」。
3. AGPL 免费路径:强制义务(必须做)
3.1 改了就得上线开源(第 13 条)
AGPL 第 13 条要求:如果你修改了本项目,并通过网络让用户使用这个修改版,就必须向这些用户提供完整的对应源码(含你自己的改动)。
- 不能只部署不开源;
- 不能用「内部使用」「私有化交付」「SaaS 不卖软件」绕过;
- 「对应源码」包括你修改过的文件,以及生成、安装、运行该版本所需的脚本与配置(前端构建产物要能对应到源码)。
3.2 不得把本项目改成闭源产品再分发
- 二次开发后的对外服务仍受 AGPL 约束;
- 对外分发(发给客户、客户部署、镜像/安装包)必须整体按 AGPL 授权,接收者同样获得 AGPL 权利;
- 想闭源商用,只能另行取得商业许可,不能自行去掉许可证与版权声明。
3.3 保留署名、许可证与仓库链接
- 不得删除
LICENSE、源码文件头版权声明、前端页脚/侧栏的版权与仓库链接; - 不得把 TuraIDC 品牌包装成「自研产品」对外宣传(商业许可也不含商标授权);
- 修改版应在显著位置说明「基于 TuraIDC 修改」,并保留原项目仓库地址。
3.4 分发时附带许可证与源码获取方式
向他人分发(含私有化交付)时,至少要同时提供:LICENSE 全文、版权声明、以及获取对应源码的途径。
3.5 依赖许可也要兼容
引入新依赖前确认其许可证与 AGPL 兼容:
- 一般可行:MIT、BSD、Apache-2.0、ISC、MPL-2.0(MPL 需保留文件级开源)、GPL-3.0(与 AGPL 兼容);
- 需要评估:GPL-2.0-only(与 AGPL 不兼容)、带商用限制、专有组件、SSPL 等;
- 不要引入要求「禁止商用」「必须授权付费」的依赖,那会让你的整体分发出问题。
4. 第 13 条怎么落地(站长实操)
4.1 部署的是未修改的官方版本
最省事、也最常见的合规方式:不需要自己搭源码站,只要在站点上保留到官方仓库的可见入口即可——官网页脚「开源仓库」与「开源版本」页面就是为此设计的。同时保留版权声明与 LICENSE 链接。
注意:如果只是改了配置、Logo、商品数据、主题色(后台可配置项),一般不算修改程序代码;但如果你改了模板/组件/样式文件,就属于修改,见 4.2。
4.2 部署的是修改过的版本
必须在站点上向用户提供与实际运行版本对应的完整源码,推荐任选一种:
- 公开仓库:把修改版发布到公开仓库(建议 Fork 官方仓库并保留 LICENSE 与版权声明),在官网页脚/关于页放仓库链接;
- 源码包下载:在站点提供与线上版本号对应的源码包(含构建脚本、前端源码、部署配置);
- 书面提供方式:明确告知用户如何获取源码(如邮件申请、工单),并保证按 AGPL 要求及时提供。
只要线上跑的是修改版,就必须提供对应源码;「源码在另一个分支/以后发布」不满足要求。
4.3 建议的合规信息位置
- 官网页脚:「开源仓库」「开源版本」入口(本项目官网已内置);
- 关于/页脚版权区:
LICENSE链接、版权声明、「基于 TuraIDC 修改」说明(如适用); - 如为商业许可部署:保留授权凭证备查,避免对外误称「自研」。
5. 商业许可:适合谁、给你什么
5.1 适用场景
- 敏感行业:政企、金融、医疗、教育等不允许公开源码或需通过安全合规审查的客户;
- 私有化交付:给客户部署但不能把源码交给客户/公众;
- 闭源二次开发:基于本项目做定制功能,不愿公开自有改动;
- 内部合规要求:公司政策禁止使用 AGPL 软件对外提供服务。
如果以上都不成立,用 AGPL 免费版即可,无需购买。
5.2 价格与口径
- 200 元/年;
- 按每个组织、每个生产部署计;
- 多部署、集团多主体、OEM/白牌、SaaS 对外销售等可协商,教育/非营利可申请减免;
- 最终价格与授权数量以双方签署的订单为准(详见商业许可草案)。
5.3 授予的权利
- 闭源部署与运行,免除 AGPL 第 13 条网络源码提供义务;
- 修改源码、二次开发后不公开;
- 在授权数量内私有化交付给自身客户。
5.4 明确不包含
- 不含商标授权:不能用 TuraIDC 名称/Logo 宣传,不能暗示官方合作;
- 不得转售/白牌:不能把软件本身作为独立商品、SaaS 转售、模板、镜像或白牌产品卖;
- 不得再分发源码:不能以非 AGPL 条款把源码给第三方(需为其单独取得授权)。
6. 如何获取源码
TuraIDC 是完整开源项目,任何人不购买商业许可也可以直接拿到全部源码:
| 方式 | 地址 |
|---|---|
| GitHub 仓库 | https://github.com/25Cloud/TuraIDC |
| 克隆 | git clone https://github.com/25Cloud/TuraIDC.git |
| Release 源码包 | https://github.com/25Cloud/TuraIDC/releases(每个版本附源码归档) |
| 官网开源页 | 站点 /open-source 页面(含上述入口与部署文档链接) |
7. 如何取得商业授权
当前走人工流程(正式售卖渠道待定):
- 在 https://github.com/25Cloud/TuraIDC/issues 新建议题,标题注明「商业授权申请」,说明组织名称、部署数量、是否闭源/私有化交付;
- 或发邮件至
contact@turaidc.com; - 项目方回复报价与订单,确认后签署并付款;
- 取得授权凭证(编号、有效期、部署数量),留存备查。
8. 上线前合规自检清单
- [ ] 已保留
LICENSE、版权声明与官方仓库链接,未删除页脚版权信息; - [ ] 未修改程序:站点有到官方仓库的入口(未修改部署的合规方式);
- [ ] 已修改程序:站点提供与线上版本对应的完整源码(仓库链接或源码包),且包含构建/部署脚本;
- [ ] 对外分发/私有化交付:接收方同时获得 AGPL 许可证与源码获取方式;
- [ ] 新引入依赖的许可证与 AGPL 兼容,已在改动说明中注明;
- [ ] 没有把 TuraIDC 包装成自研产品或冒用其商标;
- [ ] 如购买商业许可:授权在有效期内、部署数量未超授权,凭证可查;
- [ ] 如不购买商业许可:接受「修改后需开源」与「不得闭源分发」两条底线。
9. 常见问题
Q:我只是部署本站卖云服务器,需要付费吗? A:不需要。按 AGPL 免费使用即可;只要不闭源分发、修改后向用户提供源码,就符合要求。注意分界线:不修改程序(只改站点配置、Logo、商品数据)并用自己的品牌对外服务,不触发第 13 条;修改了程序再通过网络对外提供服务,就必须向这些用户提供对应源码(或购买商业许可闭源使用)。
Q:我不改代码,只改后台配置和 Logo,要开源吗? A:后台可配置项(站点名、Logo、主题色、商品数据)不算修改程序代码,不需要开源自己的业务数据;但保留版权声明与官方仓库入口。若修改了模板/组件源码,则属于修改。
Q:客户要求私有化部署且不能给源码怎么办? A:这是典型商业许可场景。要么购买商业许可(按部署数计),要么按 AGPL 向客户提供源码。
Q:商业许可到期不续费会怎样? A:到期后有 30 日宽限期,宽限期内继续有效;宽限期满未续费则授权终止,此后不能继续闭源使用,需续费或另行取得 AGPL 许可(商业许可不会自动变成 AGPL 许可)。
Q:项目方会把开源版收回、改成闭源吗? A:不会。已按 AGPL 发布的版本不会被回收;商业许可只对取得授权的部署生效。
Q:二次开发的插件必须开源吗? A:取决于插件与主程序的关系。若插件与主程序紧密结合、构成衍生作品,按 AGPL 处理;若通过独立进程/标准接口调用,边界需结合具体实现判断,建议咨询法务。
Q:我开源了自己的修改,是否还要买商业许可? A:不需要,按 AGPL 合规使用即可。
关联文档
- 部署安装:先选部署方式;部署与调度:上线后的定时任务与队列。
- 版本升级:升级流程与回退。
- 贡献指南:提交贡献与 CLA 签署流程。
- AGPL-3.0-or-later 全文:免费路径的唯一许可依据。
- 商业许可草案:200 元/年商业许可的完整条款与待法务复核项。
- 贡献者许可协议 CLA:双许可模式的授权来源。