# NAC 公链服务迁移最终报告 **报告日期:** 2026年3月31日 **报告编制:** Manus AI **项目名称:** NAC 公链生产服务从备份服务器 S2 迁移至生产服务器 S1 --- ## 一、项目概述 本次迁移工作的核心目标是将 NAC(New Asset Chain)公链的三大核心业务系统从备份服务器 S2(103.96.148.7)统一迁移至生产服务器 S1(103.43.188.244),实现所有生产服务的集中部署,同时将 S2 逐步转变为纯备份服务器角色。迁移涉及身份注册系统、区块链浏览器和一键上链系统三个核心业务模块,以及支撑这些系统运行的 18 个 NAC 微服务。 --- ## 二、服务器架构 | 服务器代号 | IP 地址 | 角色 | SSH 端口 | 备注 | |-----------|---------|------|---------|------| | S1 | 103.43.188.244 | 生产服务器(主站) | 22000 | 所有生产服务已迁移至此 | | S2 | 103.96.148.7 | 备份服务器 | 22000 | 逐步转为纯备份角色 | | S3 | 43.224.155.27 | ICO 服务器 | - | 独立运行 | | S4 | 103.43.191.50 | 旧身份服务器 | - | 已停用 | --- ## 三、迁移完成清单 ### 3.1 身份注册系统(id.newassetchain.io) | 项目 | 详情 | |------|------| | 迁移来源 | S4(103.43.191.50) | | 迁移目标 | S1(103.43.188.244) | | 技术栈 | Laravel + PHP-FPM + MySQL | | 数据库 | nac_id(10 张表,13 条用户记录) | | DNS 记录 | A 记录指向 103.43.188.244 | | SSL 证书 | Certum 通配符证书 *.newassetchain.io,有效期至 2027-01-31 | | 功能验证 | 注册、登录、仪表盘、多语言、NAC DID 生成、CBPP 节点创建 | | 状态 | **生产就绪** | ### 3.2 区块链浏览器(lens.newassetchain.io) | 项目 | 详情 | |------|------| | 迁移来源 | S2(103.96.148.7) | | 迁移目标 | S1(103.43.188.244) | | 技术栈 | React 前端 + nac-api-server v3.1.0(Rust) | | 微服务 | 18 个 NAC 微服务全部迁移并运行 | | DNS 记录 | A 记录指向 103.43.188.244 | | SSL 证书 | 同上通配符证书 | | API 状态 | 13/14 服务健康(CBPP 返回 405,与 S2 行为一致) | | 功能验证 | 区块浏览、交易查询、RWA 资产、统计、搜索功能 | | 状态 | **生产就绪** | ### 3.3 一键上链系统(new.newassetchain.io) | 项目 | 详情 | |------|------| | 迁移来源 | S2(103.96.148.7) | | 迁移目标 | S1(103.43.188.244) | | 技术栈 | FastAPI(Python)+ MongoDB | | 服务端口 | 9552(nac-onboarding) | | 前端方式 | 后端内嵌静态文件服务 | | DNS 记录 | A 记录指向 103.43.188.244 | | SSL 证书 | 同上通配符证书 | | Nginx 配置 | /www/server/nginx/conf/vhost/new.newassetchain.io.conf | | MongoDB 用户 | nac_user(readWrite 权限,nac_onboarding 数据库) | | 功能验证 | 页面加载正常,ETH/BNB/TRON 购买入口可用 | | 状态 | **生产就绪** | --- ## 四、S1 服务器上运行的 NAC 微服务 | 服务名称 | 端口 | 功能描述 | |---------|------|---------| | nac-cbpp-node | 9545 | CBPP 共识节点 | | nac-l0-csnp | 9546 | L0 层 CSNP 网络协议 | | nac-l1-nvm | 9547 | L1 层 NVM 虚拟机 | | nac-constitution-service | 9548 | 宪法服务(约法治法) | | nac-api-server | 9550 | API 服务器 v3.1.0 | | nac-onboarding | 9552 | 一键上链服务 | | nac-l1-acc20 | 9554 | L1 层 ACC-20 代币标准 | | nac-l2-charter | 9555 | L2 层 Charter 智能合约 | | nac-wallet-service | 9556 | 钱包服务 | | nac-exchange | 9557 | 交易所服务 | | nac-cbpp-scanner | 9558 | CBPP 扫描器 | | nac-cnnl-service | 8765 | CNNL 神经网络语言服务 | | nac-daemon | 8766 | NAC 守护进程 | | nac-auth | 8081 | 认证服务 | | nac-cib | 8091 | CIB 服务 | | nac-gnacs | 8001 | GNACS 资产分类服务 | | nac-cee-integration | - | CEE 集成服务 | | nac-nvm-node | - | NVM 节点服务 | --- ## 五、本次迁移操作详细记录(new.newassetchain.io) 本次任务集中完成了一键上链系统的最后配置步骤,具体操作如下: **Step 1:禁用旧的 nac-frontend 服务。** 由于前端功能已集成到 nac-onboarding 后端(端口 9552)中,旧的独立前端服务不再需要。通过 `systemctl stop nac-frontend` 和 `systemctl disable nac-frontend` 命令完成了服务的停止和禁用。 **Step 2:创建 MongoDB 数据库用户。** 为一键上链系统创建了专用的 MongoDB 用户 `nac_user`,授予 `nac_onboarding` 数据库的 `readWrite` 权限,确保应用程序能够正常读写数据。 **Step 3:创建 Nginx 反向代理配置。** 在 `/www/server/nginx/conf/vhost/new.newassetchain.io.conf` 创建了完整的 Nginx 配置文件,包含 HTTP 到 HTTPS 的自动跳转(端口 80 → 443)、SSL 证书配置(使用 *.newassetchain.io 通配符证书)、反向代理到本地 9552 端口的设置,以及访问日志和错误日志的配置。 **Step 4:重载 Nginx 配置。** 发现 Nginx 进程已在运行但 systemd 未正确跟踪(宝塔面板管理的 Nginx 常见情况),因此使用 `/www/server/nginx/sbin/nginx -s reload` 信号方式成功重载了配置。 **Step 5:DNS 更新。** 将 new.newassetchain.io 的 A 记录从 103.96.148.7(S2)更新为 103.43.188.244(S1),DNS 传播已完成。 **Step 6:全面验证。** 通过浏览器逐一访问三个系统,确认所有页面正常加载、SSL 证书有效、功能可用。 --- ## 六、DNS 记录最终状态 | 域名 | 记录类型 | 目标 IP | 状态 | |------|---------|---------|------| | id.newassetchain.io | A | 103.43.188.244 | 已验证 | | lens.newassetchain.io | A | 103.43.188.244 | 已验证 | | new.newassetchain.io | A | 103.43.188.244 | 已验证 | --- ## 七、SSL 证书信息 | 项目 | 详情 | |------|------| | 证书类型 | Certum 通配符证书 | | 覆盖域名 | *.newassetchain.io | | 有效期至 | 2027-01-31 | | 证书路径 | /www/server/panel/vhost/cert/newassetchain.io/ | | 全链证书 | fullchain.pem | | 私钥文件 | privkey.pem | --- ## 八、遗留事项与建议 **8.1 已知遗留事项** nac-admin 管理后台服务当前缺少编译后的文件(dist/index.js),如需启用,需要从 S2 获取编译文件或重新构建。该服务不影响三大核心系统的正常运行。 **8.2 运维建议** S2 服务器上的旧服务建议在确认 S1 稳定运行一段时间后再逐步关闭,以保留回退能力。建议定期检查 SSL 证书有效期(当前有效至 2027-01-31),并在到期前及时续期。建议将 S1 服务器的 fail2ban 白名单中添加常用管理 IP,避免因多次登录尝试导致 SSH 被封锁。建议定期备份 S1 上的数据库(MySQL nac_id、MongoDB nac_onboarding)到 S2 备份服务器。 --- ## 九、结论 NAC 公链三大核心业务系统已全部成功迁移至生产服务器 S1(103.43.188.244),包括身份注册系统、区块链浏览器和一键上链系统。所有 18 个 NAC 微服务运行正常,DNS 记录已全部更新并验证,SSL 证书配置正确。S2 服务器已开始向纯备份角色转变。迁移工作圆满完成。 --- *报告结束*