项目介绍
概述
YunyiRADIUS 是一款高性能、企业级的 RADIUS 认证与计费管理系统。基于 Go 语言原生开发,支持标准 RADIUS (UDP 1812/1813) 和 RadSec (TLS 2083) 双协议栈,可承载数万级并发认证请求。
适用于酒店 Wi-Fi、园区网络、运营商宽带接入、企业 VPN 等网络接入认证场景。
核心能力
认证协议
| 协议 | 支持状态 | 说明 |
|---|---|---|
| PAP | ✅ | 明文密码认证 |
| CHAP | ✅ | 质询握手认证 |
| MS-CHAPv2 | ✅ | 微软 CHAP v2 |
| EAP-PEAP | ✅ | 受保护的 EAP |
| EAP-TTLS | ✅ | 隧道化 TLS |
| MAC 认证 | ✅ | MAC 地址白名单/黑名单 |
| LDAP 后端 | ✅ | 企业 AD/LDAP 集成 |
计费能力
- 预付费模式:余额扣减,自动断网
- 后付费模式:账单周期结算
- 套餐计划:流量包/时长包/周期包,灵活定价
- 支付宝支付:在线充值,实时到账
- 财务流水:充值/退款/套餐变更全量记录
多租户
- 节点管理:网络节点隔离,每个节点独立策略
- NAS/BAS 设备:支持多厂商设备注册、密钥管理、CoA 控制
- 接入策略:按节点或设备粒度配置认证模式、套餐绑定、Portal 页面
两种认证模式
- 租户模式 (account-based):用户注册账号 → 选择套餐 → 在线支付 → 绑定设备 → 上网
- 公共访客模式 (phone-based):输入手机号 → 短信验证码 → 临时上网(时长控制/每日重认证)
系统架构
┌─────────────────────────────────────────────────────┐
│ 管理后台 (Vue 3) │
│ Admin UI :1816/admin │
├─────────────────────────────────────────────────────┤
│ 用户门户 (Vue 3) │
│ Portal UI :1816/user │
├─────────────────────────────────────────────────────┤
│ API 层 (Echo v4) │
│ REST API :1816/api/v1/* │
├──────────┬──────────┬───────────┬───────────────────┤
│ RADIUS │ RadSec │ 计费引擎 │ 短信网关 │
│ Auth:1812│ TLS:2083 │ 套餐/支付 │ 阿里云/腾讯云 │
│ Acct:1813│ │ │ │
├──────────┴──────────┴───────────┴───────────────────┤
│ 数据层 (PostgreSQL / SQLite) │
└─────────────────────────────────────────────────────┘浏览器兼容
| Chrome | Firefox | Safari | Edge |
|---|---|---|---|
| ✅ 90+ | ✅ 90+ | ✅ 15+ | ✅ 90+ |