【2025最新】SmartAdmin三级等保中后台系统本地化部署全攻略:从0到1搭建企业级安全管理平台
你是否还在为中后台系统的安全合规问题焦头烂额?还在为复杂的部署流程耗费数天时间?本文将带你30分钟内完成国内首个满足国家三级等保要求的开源中后台框架SmartAdmin的本地化部署,从环境准备到系统运行全流程拆解,让你轻松拥有企业级安全管理平台。
读完本文你将获得:
- 三级等保合规系统的本地化部署能力
- 前后端分离架构的环境配置方案
- 国产加密算法与安全功能的启用方法
- 常见部署问题的速查解决方案
- 双版本(Java/JS/TS)系统的选择性部署指南
一、SmartAdmin系统架构与环境要求
SmartAdmin作为国内首个以"高质量代码"为核心的中后台快速开发平台,采用前后端分离架构,提供双版本支持以满足不同技术栈需求。
1.1 技术架构概览
1.2 环境要求清单
| 环境组件 | 最低版本要求 | 推荐版本 | 备注 |
|---|---|---|---|
| JDK | 8u201 / 17.0.2 | OpenJDK 17.0.10 | 需对应后端版本选择 |
| Node.js | 14.18.0 | Node.js 20.10.0 | 前端构建工具 |
| Maven | 3.6.3 | Maven 3.9.6 | Java项目构建 |
| MySQL | 5.7.36 | MySQL 8.0.36 | 支持国产数据库替代 |
| Git | 2.30.0 | Git 2.44.0 | 代码版本控制 |
| 内存 | 4GB | 8GB | 生产环境建议16GB |
| 磁盘 | 20GB空闲 | 100GB SSD | 含依赖与数据存储 |
⚠️ 注意:Windows系统需确保路径无中文和空格,Linux系统需配置普通用户权限(禁止root直接运行)
二、部署前准备工作
2.1 代码仓库获取
通过Git命令克隆官方仓库(国内镜像地址确保下载速度):
# 克隆完整项目仓库
git clone https://gitcode.com/lab1024/smart-admin.git
cd smart-admin
# 查看项目结构确认完整性
ls -la
成功克隆后将看到以下核心目录结构:
smart-admin/
├── smart-admin-api-java17-springboot3/ # Java17后端版本
├── smart-admin-api-java8-springboot2/ # Java8后端版本
├── smart-admin-web-javascript/ # JS前端版本
├── smart-admin-web-typescript/ # TS前端版本
├── 数据库SQL脚本/ # 初始化SQL文件
└── README.md # 官方说明文档
2.2 数据库环境准备
- 创建数据库并授权(以MySQL为例):
-- 创建数据库
CREATE DATABASE IF NOT EXISTS smart_admin_v3 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 创建用户并授权
CREATE USER 'smart_admin'@'localhost' IDENTIFIED BY 'Smart@2025';
GRANT ALL PRIVILEGES ON smart_admin_v3.* TO 'smart_admin'@'localhost';
FLUSH PRIVILEGES;
- 导入初始化SQL脚本:
# 进入SQL脚本目录
cd 数据库SQL脚本/mysql
# 执行初始化脚本
mysql -u smart_admin -p smart_admin_v3 < smart_admin_v3.sql
ℹ️ 提示:脚本执行过程约30秒,将创建100+张表及初始数据,包含默认管理员账户:admin/1024ok
2.3 开发环境检测
执行环境检测脚本确保所有依赖已正确安装:
# 后端环境检测
cd smart-admin-api-java8-springboot2
mvn validate
# 前端环境检测
cd ../smart-admin-web-javascript
npm check
出现"BUILD SUCCESS"或"All package dependencies satisfy their declared peer dependencies"提示即为环境检测通过。
三、后端服务部署(以Java8+SpringBoot2.x为例)
3.1 配置文件修改
- 进入后端配置目录:
cd smart-admin-api-java8-springboot2/sa-admin/src/main/resources/dev
- 修改数据库连接配置:
# application.yml核心配置
spring:
datasource:
url: jdbc:mysql://localhost:3306/smart_admin_v3?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
username: smart_admin
password: Smart@2025
driver-class-name: com.mysql.cj.jdbc.Driver
- 配置安全加密参数:
# 接口加密配置
smart:
encrypt:
enabled: true
aes-key: 1024Lab@SmartAdmin
rsa-enabled: false # 生产环境建议开启RSA双钥加密
3.2 项目构建与启动
# 返回后端根目录
cd ../../../../..
# 使用Maven构建
mvn clean package -Dmaven.test.skip=true -Pdev
# 启动后端服务
java -jar sa-admin/target/sa-admin.jar --spring.profiles.active=dev
成功启动后将看到以下日志输出:
2025-09-14 16:49:03.123 INFO 12345 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2025-09-14 16:49:03.234 INFO 12345 --- [ main] c.l.sa.admin.SaAdminApplication : Started SaAdminApplication in 5.678 seconds (JVM running for 6.123)
2025-09-14 16:49:03.345 INFO 12345 --- [ main] c.l.sa.core.encrypt.EncryptAutoConfig : 国产加密算法组件初始化完成
2025-09-14 16:49:03.456 INFO 12345 --- [ main] c.l.sa.core.safety.SafetyAutoConfig : 三级等保安全组件已启用
⚠️ 注意:默认端口为8080,如需修改可在application.yml中配置server.port参数
四、前端应用部署(以TypeScript版本为例)
4.1 依赖安装与环境配置
# 进入TypeScript前端目录
cd smart-admin-web-typescript
# 安装依赖(使用国内镜像加速)
npm install --registry=https://registry.npmmirror.com
创建环境配置文件:
# 创建开发环境配置
cp .env.development.example .env.development
修改API接口地址:
# .env.development文件
VITE_APP_API_BASE_URL=http://localhost:8080/api
VITE_APP_PROXY_PREFIX=/api
VITE_APP_OPEN_API_ENCRYPT=true # 与后端加密配置保持一致
4.2 前端启动与构建
# 开发模式启动
npm run dev
# 如需构建生产版本
# npm run build
成功启动后,终端将显示:
VITE v5.2.10 ready in 300 ms
➜ Local: http://localhost:5173/
➜ Network: use --host to expose
➜ press h + enter to show help
此时访问 http://localhost:5173 即可看到登录界面。
五、系统初始化与验证
5.1 首次登录与密码修改
-
访问前端地址,使用默认账号登录:
- 用户名:admin
- 密码:1024ok
-
首次登录将强制跳转至密码修改页面,需设置符合三级等保要求的密码:
- 至少8位长度
- 包含大小写字母、数字和特殊符号
- 与历史密码不重复
5.2 核心功能验证清单
| 功能模块 | 验证方法 | 预期结果 |
|---|---|---|
| 登录限制 | 连续输错5次密码 | 账号临时锁定30分钟 |
| 数据加密 | 查看网络请求 payload | 数据显示为加密字符串 |
| 权限管理 | 创建测试用户并分配角色 | 权限控制生效,菜单按需显示 |
| 操作日志 | 执行系统配置修改 | 日志记录包含IP、设备信息 |
| 数据脱敏 | 查看员工手机号字段 | 中间4位显示为*号 |
5.3 安全功能启用指南
六、常见问题与解决方案
6.1 后端启动异常
| 错误信息 | 可能原因 | 解决方案 |
|---|---|---|
| 数据库连接失败 | MySQL服务未启动 | systemctl start mysqld |
| 端口被占用 | 8080端口已被使用 | 修改server.port配置或关闭占用进程 |
| 加密密钥错误 | 前后端加密密钥不一致 | 确保前后端aes-key配置相同 |
| 依赖冲突 | Maven依赖版本问题 | mvn dependency:tree 检查冲突 |
6.2 前端访问问题
| 问题现象 | 排查方向 | 解决方法 |
|---|---|---|
| 接口404 | 后端服务未启动或地址错误 | 检查后端服务状态和VITE_APP_API_BASE_URL配置 |
| 跨域错误 | 跨域配置未生效 | 检查后端CORS配置或前端代理设置 |
| 页面空白 | 依赖包安装不完整 | 删除node_modules后重新npm install |
| 加密失败 | 加密开关状态不一致 | 确保前后端encrypt.enabled配置一致 |
6.3 安全功能配置
启用RSA双钥加密(生产环境推荐):
- 后端修改配置:
smart:
encrypt:
enabled: true
rsa-enabled: true
rsa-public-key: classpath:rsa/publicKey.pem
- 生成RSA密钥对:
# 生成密钥对并放置在resources/rsa目录
keytool -genkeypair -alias smartadmin -keyalg RSA -keysize 2048 -keystore smartadmin.jks
七、部署架构优化与扩展
7.1 生产环境部署架构
7.2 国产数据库适配
SmartAdmin支持多种国产数据库,以达梦数据库为例:
- 修改pom.xml添加驱动依赖:
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
<version>8.1.2.190</version>
</dependency>
- 修改数据库连接配置:
spring:
datasource:
url: jdbc:dm://localhost:5236/SMART_ADMIN_V3?schema=SYSDBA
driver-class-name: dm.jdbc.driver.DmDriver
username: SYSDBA
password: Dameng123
八、总结与后续学习
通过本文档,你已成功部署满足国家三级等保要求的SmartAdmin中后台系统。该系统不仅提供了企业级的安全保障,还通过双版本设计满足不同技术栈需求。
8.1 部署成果回顾
- ✅ 完成前后端分离架构的本地化部署
- ✅ 启用符合三级等保的安全功能
- ✅ 掌握双版本系统的选择与配置方法
- ✅ 解决常见部署问题的排查技巧
8.2 进阶学习路径
- 代码生成器使用:通过系统内置的代码生成功能快速创建业务模块
- 权限体系扩展:自定义角色与权限,实现精细化权限控制
- 国产化适配:深入对接国产中间件与操作系统
- 性能优化:针对高并发场景进行系统调优
- 二次开发:基于SmartAdmin架构开发业务功能模块
SmartAdmin开源社区提供了完善的文档和示例代码,建议定期关注项目更新以获取最新安全补丁和功能优化。如需商业支持,可联系1024创新实验室获取企业级服务。
项目地址:https://gitcode.com/lab1024/smart-admin 官方文档:https://smartadmin.vip 社区交流:https://www.1024lab.net/forum
希望本文能帮助你快速掌握企业级中后台系统的部署技能,让安全合规的系统建设变得简单高效。如有部署问题或优化建议,欢迎在项目issue中交流讨论。
附录:部署速查命令清单
后端部署:
# 构建
mvn clean package -Dmaven.test.skip=true -Pprod
# 启动
nohup java -jar sa-admin/target/sa-admin.jar --spring.profiles.active=prod > smart-admin.log 2>&1 &
前端部署:
# 构建
npm run build
# Nginx配置
server {
listen 80;
server_name smartadmin.example.com;
root /path/to/smart-admin-web-typescript/dist;
location / {
try_files $uri $uri/ /index.html;
}
location /api/ {
proxy_pass http://localhost:8080/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
数据库备份:
mysqldump -u smart_admin -p smart_admin_v3 > smart_admin_backup_$(date +%Y%m%d).sql
祝你的SmartAdmin系统部署顺利,为企业数字化转型提供安全高效的技术支撑!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



