本地许可证服务器
简介¶
默认情况下,SMath 许可系统假定 SMath Studio 会从位于 smath.com 的 SMath 根许可证服务器获取您的许可证信息。这种方式通常对个人用户和一些小型公司来说很方便,但对商业客户而言,会带来一系列人为的限制:
- 所有使用 SMath Studio 的计算机都需要与根许可证服务器保持持续的互联网连接。
- 要管理贵公司的用户,您需要在 smath.com 上为他们逐一注册账户。
- 您需要通过软件供应商来管理许可证的绑定关系。
为了解决上述问题,并为未来面向组织的各项改进提供平台,我们创建了本地许可证服务器。
交互方案¶
客户端和服务器产品之间的所有交互均通过 TCP/IP,使用 HTTPS 协议进行(在本地网络内也可以使用 HTTP)。

请注意,从本地许可证服务器 5.1 版本开始,其与根许可证服务器之间的在线通信通过 443 端口进行。
功能特性¶
- 提供友好的界面,可在您常用的浏览器中使用。
- 仍然需要访问根许可证服务器,但每天一次即可,这意味着短暂的网络问题完全不会影响最终用户。
- 同时支持完整的离线模式。
- 您在本地管理用户,只需在 smath.com 上为贵公司注册一个账户,即可让您的服务器从根服务器获取许可证信息。
- 您可以选择按姓名逐一管理用户,也可以为其提供匿名访问,从而彻底不必处理各种忘记密码的问题。
- 您可以实时监控当前是谁在使用哪些许可证 —— 例如,如果您购买了浮动许可证,服务器可以显示是谁占用了该许可证。
- 安装包体积小巧 —— 下载大小仅约 240MB。
- 基于 Docker 技术构建,可在任意操作系统上轻松完成安装,只需几分钟。
- 可以随时迁移到您网络中的另一个 IP 地址、端口或机器,完全无需软件供应商参与。
- 添加新许可证、修改或延长许可证均无需重新创建/重装服务器或重装 SMath Studio。
- 同时支持固定许可证和浮动许可证。如果您出于任何原因对本地许可证服务器不满意,您的软件供应商可以随时将您的所有许可证迁移到根许可证服务器,或反向迁移。
- 如有需要,SMath Studio 企业版可以同时使用根服务器和本地服务器。
- 购买任意 5 份及以上 SMath 许可证即可免费获得该服务器。
- 更多实用功能即将推出。
系统要求¶
SMath 本地许可证服务器可以安装在任何能够运行 Docker 平台的操作系统上。不过,我们建议使用我们已经测试过的以下配置之一:
- Astra Linux SE 1.7.5:https://astralinux.ru/os/astra-linux-se/
- RED OS 8:https://redos.red-soft.ru/
- Ubuntu Server 22.04:https://releases.ubuntu.com/releases/22.04/?C=S;O=D
- Ubuntu Desktop 24.04 LTS:https://ubuntu.com/download/desktop
- Fedora Workstation 40:https://fedoraproject.org/workstation/download
- Microsoft Windows 11:https://www.microsoft.com/software-download/windows11(在此环境下,我们发现 Docker Desktop 在系统重启后自动启动平台存在一定限制 —— 只有在用户已登录的情况下才能正常工作)
以下应用程序组合已经过成功测试:
- Docker: 24.0.2 / Docker Compose 1.29.2(Astra Linux)
- Docker: 27.4.1 / Docker Compose 2.32.1(RED OS)
- Docker: 24.0.6 / Docker Compose 2.21.0(Ubuntu Desktop)
- Docker: 26.1.4 / Docker Compose 2.27.1(Ubuntu Server)
- Docker: 26.1.1 / Docker Compose 2.27.0(Fedora Workstation)
- Docker: 20.10.17 / Docker Compose 2.6.1(Microsoft Windows 11)
本地许可证服务器也已成功在 Proxmox 上基于 Ubuntu Desktop 24.04 的 LXC 容器内完成安装。
硬件要求¶
SMath 本地许可证服务器的最低系统要求为:2GB 硬盘、1GB 内存以及 2 核 64 位 2GHz CPU。SMath 本地许可证服务器运行期间,应用程序不会累积大量持久化数据,也不会将其保存到磁盘,因此可以避免随时间推移出现磁盘空间不足的问题。
如果您的本地许可证服务器交付中包含 SMath Studio Cloud 服务,服务器机器的配置要求将取决于并发连接数以及所执行任务的复杂程度。我们建议每增加 2-5 名并发的 SMath Studio Cloud 用户,就额外增加 1 个 CPU 核心、0.5GB 内存和 0.5GB 磁盘空间。请注意,服务器的磁盘占用会随着应用程序运行期间处理的文档量增长而增加,管理员应根据 SMath Studio Cloud 的负载情况,及时增加可用磁盘空间。
作为技术支持或质保支持一部分提供的软件更新,可能需要增加内存和 CPU 方面的性能资源。
软件要求¶
Docker 格式的本地许可证服务器几乎可以部署在任何现代服务器上,无论是基于 Linux 还是 Windows。安装许可证服务器的服务器机器上必须具备 Docker 平台。
- 如果您的网络中已有 Docker 主机,安装只需几分钟即可完成,因为我们为您提供了一份可独立使用的 Docker Compose 配置文件(如果标准的 80 和 443 端口已被占用,您可能只需要修改配置中的外部端口)。
- 如果您目前还没有 Docker 主机,可以在任意可用的虚拟化平台或专用物理机上安装 Linux(关于我们已测试过的 Linux 发行版,请参阅上方的系统要求,您也可以选择自己偏好的其他发行版),然后在其上安装 Docker。我们会提供配置文件、镜像集合以及需要在终端窗口中执行的命令,帮助您启动并运行 SMath 本地许可证服务器。
如果网络环境中存在流量过滤工具(防火墙),需要确保流量能够通过以下指定端口:
- 访问服务器:80 和 443 端口(如果部署服务器时未做更改)。
- 从服务器发出:访问 https://smath.com:7443 的请求(离线模式下不需要)。
您还需要为组织网络中的 Docker 主机分配一个静态 IPv4 地址(该地址需要在服务器的整个生命周期内保持不变),因为 SMath Studio Enterprise 正是通过该 IP 地址获取许可证的。您也可以选择为服务器注册一个便于识别的 DNS 名称,并在访问服务器管理控制台的网页以及配置 SMath Studio 时,用该名称代替 IP 地址使用。
安装¶
安装许可证服务器包含以下几个阶段:
| 名称 | 说明 | 默认端口 |
|---|---|---|
| smath-app-* | 实现系统业务逻辑的主应用程序 | 80、443 |
| smath-db | 数据库管理系统 | - |
| smath-init | 用于环境初始化的工具 | - |
- 配置 SMath 本地许可证服务器。
网络要求与注意事项¶
在本地许可证服务器前使用 Web 代理是可以接受的,前提是满足以下要求:
- 本地许可证服务器必须始终可以通过服务器 URL 的根路径访问(例如 https://example.local/,而不是 https://example.local/some/path)。
- 如果本地许可证服务器通过 HTTPS 监听连接(默认行为),则支持从 HTTP 重定向到 HTTPS。
- 本地许可证服务器网站的所有页面都必须与主页面使用相同的 IP 地址和端口。
- 本地许可证服务器必须能够通过其 IP 地址被客户端机器访问。出于安全要求,不支持 SNI(服务器名称指示)技术。
- 如果使用 DNS 区域:本地许可证服务器的客户端在获取许可证信息时,只会使用与该 DNS 名称关联的所有 A 记录中的第一个 IP 地址。
重要说明:
- 本地许可证服务器的客户端既可以使用 HTTP,也可以使用 HTTPS 方案获取许可证(可以使用同一端口)。
- 使用 HTTPS 方案访问本地许可证服务器时,不需要有效的 SSL 证书,因为许可证包本身已经过签名。
- SMath 不会收集客户的本地网络配置信息(包括 IP 和端口) —— 我们仅使用基于这些数据生成的 SHA256 哈希值。
技术支持¶
购买后,您的软件供应商会向您的许可证持有人提供详细的安装说明。我们的技术专家随时准备为您提供服务器方面的协助,这是 SMath 基础设施标准服务的一部分。如果您想先自行诊断问题,请参阅访问本地许可证服务器日志。
限制¶
目前,仅商业客户可以购买本地许可证服务器。