伊泽网络验证管理系统 (EasyVerify-Backend)

EasyVerify Logo

LicenseGitHub Repo stars

介绍

伊泽网络验证管理系统是一个为开发者设计的后端系统,旨在通过HTTP协议提供账号、注册码、激活码验证等功能。开发者可以通过API轻松集成验证功能,并管理软件的相关信息及用户控制。

提示:完整使用请配合 EasyVerify-Web 项目使用

  • 在线地址: https://easyverify.mian-ju.cn

  • 可以直接使用该项目搭建自己的验证管理系统,也可以基于此项目进行二次开发。

主要功能

  • 账号验证:验证用户账号的有效性。
  • 注册码验证:验证用户提供的注册码是否有效。
  • 激活码验证:验证用户提供的激活码是否有效。
  • 软件信息管理:管理创建的软件相关信息。
  • 用户控制:提供对使用用户的管理功能。
  • 流量控制:根据系统配置对请求IP进行限流,防止恶意请求。
  • 机器验证:根据提交信息对用户机器码进行验证管理。
  • 数据安全:支持RSA2048传输加密,确保数据安全。

安装与运行

环境要求

  • Docker
  • Docker Compose

快速启动

  1. 克隆仓库
    git clone https://github.com/mianju1/EasyVerify-Backend.git
    cd EasyVerify-Backend
    
  2. 使用 docker-compose 进行安装
services:
  easyverify-backend:
    image: ibm-semeru-runtimes:open-17.0.13_11-jre
    container_name: easyverify-backend
    working_dir: /app
    logging:
      driver: "json-file"  # 使用 json-file 日志驱动
      options:
        max-size: "100m"    # 单个日志文件最大 10MB
        max-file: "5"      # 最多保留 3 个日志文件
    environment:
      - PORT=10086 # 端口号
      # ... 按照下面配置要求填写环境变量
      
    ports:
      - "10086:10086" # API项目映射端口
    restart: always
    volumes:
      - xxx:/app/easyverify.jar # xxx为打包好的jar包路径
    entrypoint: ["java", "-jar", "easyverify.jar"]

# 请配合 Easyverify-web 项目进行使用
  easyverify-web:
    image: node:22.13.0
    container_name: easyverify-web
    working_dir: /app
    environment:
      - NODE_ENV=production
      # ... 按照下面配置要求填写环境变量
    ports:
      - "2121:2121" # 前端项目映射端口
    volumes:
      - xxx:/app # xxx为前端项目路径
    restart: always
    command: >
      sh -c "npm config set registry https://registry.npmmirror.com && npm install && npm run build && npm run preview"
    depends_on:
      - easyverify-backend
  1. 启动项目
docker-compose up -d
  1. 访问项目
    • 后端:http://localhost:10086(可在 docker-compose.yml 中修改端口号)
    • 前端:http://localhost:2121(需配合 EasyVerify-Web 使用)

环境变量配置

EasyVerify-Backend

环境变量描述示例值
PORT服务端口号10086
MAIL_HOST邮件服务器地址smtp.163.com
MAIL_USERNAME邮件账号your_email@163.com
MAIL_PASSWORD邮件密码或授权码your_password
RABBITMQ_HOSTRabbitMQ服务器地址localhost
RABBITMQ_PORTRabbitMQ端口5672
REDIS_HOSTRedis服务器地址localhost
REDIS_PORTRedis端口6379
DB_HOST数据库服务器地址localhost
DB_PORT数据库端口3306
DB_NAME数据库名称easyverify
DB_USER数据库用户名root
DB_PASSWORD数据库密码your_password
JWT_KEYJWT密钥(建议使用高强度随机字符串)your_jwt_secret_key
JWT_EXPIREJWT过期时间(单位:小时)24
MAIL_LIMIT邮件发送频率限制(单位:秒)60
FLOW_LIMIT_TIME流量限制时间窗口(单位:秒)60
FLOW_LIMIT_COUNT流量限制请求次数100
FLOW_LIMIT_PERIOD流量限制周期(单位:秒)3600
TZ系统时区Asia/Shanghai

EasyVerify-Web

环境变量描述示例值
PUBLIC_API_URL后端接口地址http://localhost:10086
PUBLIC_WEB_PORTWeb端口号2121
TZ系统时区Asia/Shanghai

配置说明

  1. 邮件服务

    • 确保 MAIL_PASSWORD 是有效的邮箱授权码,而不是邮箱的登录密码。
    • 常见邮箱服务配置:
      • QQ邮箱: smtp.qq.com,需开启SMTP服务。
      • 163邮箱: smtp.163.com,需开启SMTP服务。
  2. RabbitMQ

    • 确保 RabbitMQ 服务已启动,并且配置的用户名和密码正确。
  3. Redis

    • 确保 Redis 服务已启动,并且配置的密码正确。
  4. 数据库

    • 确保数据库服务已启动,并且配置的用户名和密码正确。
  5. JWT

    • JWT_KEY 是用于生成和验证 Token 的密钥,请妥善保管。
  6. 流量限制

    • 根据实际需求调整 FLOW_LIMIT_TIMEFLOW_LIMIT_COUNT
  7. 时区

    • 设置 TZ 为系统时区,确保系统时间与本地时间一致。

启动项目:

docker-compose up -d
  1. 服务启动后,后端项目 将默认运行在 http://localhost:10086(具体端口请参考 docker-compose.yml 配置 Easyverify-backend 中)。
  2. 前端项目默认运行在http://localhost:2121(具体端口请参考 docker-compose.yml 配置 Easyverify-web 中)。

报告问题

如果你在使用过程中遇到任何问题,请在 Issues 页面提交问题。

许可证

本项目采用 MIT 许可证

文章作者: 面具
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MianJu —— 这只是一个 Title 而已~
java springboot java
喜欢就支持一下吧