# campus-security-platform **Repository Path**: sccmanagement/campus-security-platform ## Basic Information - **Project Name**: campus-security-platform - **Description**: 智慧校园安全管理系统是一个综合性的校园安全管理平台,包含以下功能模块: 用户管理:系统用户账号管理 访客管理:访客信息登记和车辆管理 自行车管理:自行车信息管理和违规记录 灭火器管理:灭火器信息管理和巡检记录 系统采用前后端分离架构: 前端:Vue.js + Element Plus 后端:Spring Boot + Java 数据库:MySQL - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-25 - **Last Updated**: 2026-02-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # campus-security-platform 智慧校园安全管理系统部署文档 1. 系统概述 智慧校园安全管理系统是一个综合性的校园安全管理平台,包含以下功能模块: 用户管理:系统用户账号管理 访客管理:访客信息登记和车辆管理 自行车管理:自行车信息管理和违规记录 灭火器管理:灭火器信息管理和巡检记录 系统采用前后端分离架构: 前端:Vue.js + Element Plus 后端:Spring Boot + Java 数据库:MySQL 2. 服务器环境准备 2.1 硬件要求 配置 最低要求 推荐要求 CPU 2核 4核及以上 内存 4GB 8GB及以上 存储 50GB 100GB及以上 带宽 1Mbps 5Mbps及以上 2.2 软件要求 软件 版本 用途 Linux CentOS 7.6+ 或 Ubuntu 18.04+ 服务器操作系统 JDK 17.0+ 运行后端Java应用 MySQL 8.0+ 数据库服务 Nginx 1.18+ 反向代理和静态资源服务 Git 2.0+ 代码版本控制 Maven 3.6+ Java项目构建工具 Node.js 16.0+ 前端项目构建工具 PM2 5.0+ 进程管理工具(可选) 3. 服务器环境搭建 3.1 安装基础依赖(以CentOS为例) # 更新系统 yum update -y # 安装基础工具 yum install -y wget curl unzip tar gcc gcc-c++ make # 安装Git yum install -y git 3.2 安装JDK 17 # 下载JDK 17 tar -zxvf jdk-17_linux-x64_bin.tar.gz mv jdk-17.0.x /usr/local/java # 配置环境变量 echo 'export JAVA_HOME=/usr/local/java' >> /etc/profile echo 'export JRE_HOME=${JAVA_HOME}/jre' >> /etc/profile echo 'export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib' >> /etc/profile echo 'export PATH=${JAVA_HOME}/bin:$PATH' >> /etc/profile # 使环境变量生效 source /etc/profile # 验证安装 java -version 3.3 安装MySQL 8.0 # 下载MySQL 8.0 YUM源 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm rpm -ivh mysql80-community-release-el7-3.noarch.rpm # 安装MySQL yum install -y mysql-community-server # 启动MySQL服务 systemctl start mysqld # 设置MySQL开机自启 systemctl enable mysqld # 获取初始密码 grep 'temporary password' /var/log/mysqld.log # 登录MySQL并修改密码 mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword123!'; # 创建数据库 CREATE DATABASE campus_security CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 创建数据库用户并授权 CREATE USER 'campus'@'%' IDENTIFIED BY 'CampusPassword123!'; GRANT ALL PRIVILEGES ON campus_security.* TO 'campus'@'%'; FLUSH PRIVILEGES; 3.4 安装Nginx # 安装Nginx yum install -y nginx # 启动Nginx服务 systemctl start nginx # 设置Nginx开机自启 systemctl enable nginx 3.5 安装Node.js和npm # 下载Node.js 16 wget https://nodejs.org/dist/v16.19.0/node-v16.19.0-linux-x64.tar.xz # 解压并安装 tar -xvf node-v16.19.0-linux-x64.tar.xz mv node-v16.19.0-linux-x64 /usr/local/node # 配置环境变量 echo 'export PATH=/usr/local/node/bin:$PATH' >> /etc/profile source /etc/profile # 验证安装 node -v npm -v # 安装PM2(可选) npm install -g pm2 4. 项目部署 4.1 拉取代码 # 创建项目目录 mkdir -p /opt/campus-security cd /opt/campus-security # 克隆代码库(替换为实际的Git仓库地址) git clone https://github.com/yourusername/campus-security-platform.git . 4.2 数据库初始化 1.导入数据库结构 # 进入数据库脚本目录 cd /opt/campus-security/backend/src/main/resources/db # 导入数据库结构 mysql -u campus -p campus_security < init.sql 4.3 后端服务部署 1.修改配置文件 # 编辑application.yml配置文件 vim /opt/campus-security/backend/src/main/resources/application.yml 修改以下配置项: spring:   datasource:     url: jdbc:mysql://localhost:3306/campus_security?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai     username: campus     password: CampusPassword123! server:   port: 8080 jwt:   secret: your-secret-key-for-jwt-token-generation   expiration: 86400 2.构建后端项目 # 进入后端目录 cd /opt/campus-security/backend # 构建项目 mvn clean package -DskipTests 3.启动后端服务 # 启动服务 java -jar target/security-platform-1.0.0.jar --server.port=8080 # 或使用nohup后台启动 nohup java -jar target/security-platform-1.0.0.jar --server.port=8080 > backend.log 2>&1 & # 或使用PM2管理进程 pm install -g pm2 pm install pm2-startup -g pm run pm2-startup install pm run pm2-startup save # 创建PM2配置文件 cat > pm2.config.js << EOF module.exports = {   apps: [     {       name: 'campus-security-backend',       script: 'java',       args: ['-jar', 'target/security-platform-1.0.0.jar', '--server.port=8080'],       cwd: '/opt/campus-security/backend',       instances: 1,       autorestart: true,       watch: false,       max_memory_restart: '1G',       env: {         NODE_ENV: 'production'       }     }   ] }; EOF # 启动服务 pm run pm2-start 4.4 前端项目部署 1.修改API地址配置 # 编辑前端API配置文件 vim /opt/campus-security/frontend/src/utils/request.js 修改以下配置项: // 修改baseURL为实际的后端服务地址 const service = axios.create({   baseURL: 'http://your-domain.com/api', // 替换为实际的域名   timeout: 10000 }); 2.构建前端项目 # 进入前端目录 cd /opt/campus-security/frontend # 安装依赖 npm install # 构建项目 npm run build 3.部署前端静态文件 # 创建前端部署目录 mkdir -p /usr/share/nginx/html/campus-security # 复制构建文件 cp -r dist/* /usr/share/nginx/html/campus-security/ 4.5 Nginx配置 1.创建Nginx配置文件 # 创建Nginx配置文件 vim /etc/nginx/conf.d/campus-security.conf 配置内容如下: server {     listen 80;     server_name your-domain.com; # 替换为实际的域名         # 前端静态资源     location / {         root /usr/share/nginx/html/campus-security;         index index.html;         try_files $uri $uri/ /index.html;     }         # 后端API代理     location /api/ {         proxy_pass http://localhost:8080/;         proxy_set_header Host $host;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;         proxy_set_header X-Forwarded-Proto $scheme;     }         # 访问日志     access_log /var/log/nginx/campus-security.access.log;     error_log /var/log/nginx/campus-security.error.log; } 2.测试并重启Nginx # 测试Nginx配置 nginx -t # 重启Nginx服务 systemctl restart nginx 5. 域名和SSL配置 5.1 域名配置 1.购买域名:从域名注册商购买一个域名(例如:campus-security.com) 2.DNS解析配置:在域名管理控制台添加A记录,指向服务器的公网IP地址 记录类型 主机记录 记录值 TTL A @ 服务器公网IP 300 A www 服务器公网IP 300 5.2 SSL证书配置 1.申请SSL证书:可以从以下途径获取SSL证书    - Let's Encrypt(免费)    - 阿里云SSL证书    - 腾讯云SSL证书 2.使用Let's Encrypt申请免费证书 # 安装Certbot yum install -y epel-release yum install -y certbot python2-certbot-nginx # 申请证书 certbot --nginx -d your-domain.com -d www.your-domain.com # 自动续期配置 crontab -e 添加以下定时任务: 0 3 * * * certbot renew --quiet --renew-hook "systemctl reload nginx" 6. 系统安全配置 6.1 防火墙配置 # 查看防火墙状态 systemctl status firewalld # 启动防火墙 systemctl start firewalld # 设置防火墙开机自启 systemctl enable firewalld # 开放必要的端口 firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=443/tcp firewall-cmd --permanent --add-port=8080/tcp # 重新加载防火墙配置 firewall-cmd --reload # 查看开放的端口 firewall-cmd --list-ports 6.2 系统安全加固 1.修改SSH端口 # 编辑SSH配置文件 vim /etc/ssh/sshd_config # 修改端口号(例如:2222) Port 2222 # 重启SSH服务 systemctl restart sshd # 开放新的SSH端口 firewall-cmd --permanent --add-port=2222/tcp firewall-cmd --reload 2.禁用root远程登录 # 编辑SSH配置文件 vim /etc/ssh/sshd_config # 禁用root登录 PermitRootLogin no # 重启SSH服务 systemctl restart sshd 3.创建普通用户 # 创建普通用户 useradd campus passwd campus # 授予sudo权限 usermod -aG wheel campus 7. 部署验证 7.1 服务状态检查 # 检查后端服务状态 ps aux | grep security-platform # 检查前端服务状态 curl -I http://your-domain.com # 检查数据库连接 telnet localhost 3306 7.2 系统访问测试 1.访问前端系统:在浏览器中访问https://your-domain.com 2.登录系统:使用默认管理员账号登录    - 用户名:admin    - 密码:Admin123! 3.测试功能:检查各个模块的功能是否正常 8. 监控和维护 8.1 日志管理 1.后端日志:/opt/campus-security/backend/backend.log 2.Nginx日志:/var/log/nginx/campus-security.access.log 和 /var/log/nginx/campus-security.error.log 3.系统日志:/var/log/messages 8.2 定期维护 1.数据库备份 # 创建备份脚本 vim /opt/campus-security/scripts/backup.sh 备份脚本内容: #!/bin/bash # 备份目录 BACKUP_DIR="/opt/campus-security/backup" DATE=$(date +%Y%m%d_%H%M%S) # 创建备份目录 mkdir -p $BACKUP_DIR # 备份数据库 mysqldump -u campus -p campus_security > $BACKUP_DIR/campus_security_$DATE.sql # 压缩备份文件 tar -czf $BACKUP_DIR/campus_security_$DATE.tar.gz $BACKUP_DIR/campus_security_$DATE.sql # 删除原始SQL文件 rm -f $BACKUP_DIR/campus_security_$DATE.sql # 保留最近7天的备份 find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -delete echo "数据库备份完成:$BACKUP_DIR/campus_security_$DATE.tar.gz" 设置定时任务: # 添加定时任务 crontab -e # 每天凌晨2点执行备份 0 2 * * * /opt/campus-security/scripts/backup.sh 2.系统更新 # 定期更新系统 yum update -y # 重启服务(如果需要) systemctl restart nginx pm run pm2-restart 9. 常见问题排查 9.1 服务无法启动 1.检查端口占用 # 检查端口占用情况 netstat -tulpn | grep 8080 # 检查日志 cat /opt/campus-security/backend/backend.log 2.数据库连接失败 # 检查数据库服务状态 systemctl status mysqld # 测试数据库连接 mysql -u campus -p campus_security 9.2 前端页面无法访问 1.检查Nginx配置 # 检查Nginx配置文件 nginx -t # 检查Nginx服务状态 systemctl status nginx # 查看Nginx错误日志 cat /var/log/nginx/error.log 2.检查前端构建文件 # 检查前端文件是否存在 ls -la /usr/share/nginx/html/campus-security/ 9.3 API请求失败 1.检查后端服务状态 # 检查后端服务状态 pm run pm2-status # 查看后端日志 cat /opt/campus-security/backend/backend.log 2.检查网络连接 # 测试API连接 curl -X GET http://localhost:8080/api/auth/test 10. 部署流程图 +------------------------+ | 服务器环境准备          | +------------------------+             |             v +------------------------+ | 数据库部署与初始化      | +------------------------+             |             v +------------------------+ | 后端服务部署            | +------------------------+             |             v +------------------------+ | 前端项目构建与部署      | +------------------------+             |             v +------------------------+ | 域名配置与SSL证书       | +------------------------+             |             v +------------------------+ | 系统安全配置            | +------------------------+             |             v +------------------------+ | 部署验证与测试          | +------------------------+             |             v +------------------------+ | 系统上线运行            | +------------------------+ 11. 部署完成后的操作 1.修改默认密码:登录系统后,立即修改默认管理员密码 2.添加系统用户:根据实际需要,添加其他系统用户 3.初始化基础数据:添加学校信息、部门信息等基础数据 4.配置系统参数:根据实际情况,配置系统相关参数 12. 技术支持 如果在部署过程中遇到问题,请参考以下资源: Spring Boot官方文档 Vue.js官方文档 MySQL官方文档 Nginx官方文档 或者联系系统开发团队获取技术支持。 部署完成后,系统将可以通过配置的域名访问,为校园安全管理提供便捷、高效的管理工具。