Add complete French (fr) and Chinese (zh) translations for all documentation: - Root files: README, CHANGELOG, SECURITY, BETA-RELEASE - docs/: All 16 core documentation files - DOCS/: All 19 deep-dive documents including embedded/ and archive/ - package/secubox/: All 123+ package READMEs - Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/ Total: 346 translation files created Each file includes language switcher links for easy navigation between English, French, and Chinese versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2087 lines
56 KiB
Markdown
2087 lines
56 KiB
Markdown
# SecuBox 功能重建提示词
|
||
|
||
> **Languages:** [English](../docs/feature-regeneration-prompts.md) | [Francais](../docs-fr/feature-regeneration-prompts.md) | 中文
|
||
|
||
**版本:** 1.0.0
|
||
**最后更新:** 2025-12-28
|
||
**状态:** 活跃
|
||
**目的:** 为 Claude.ai 提供完整的提示词,以重建所有 SecuBox 模块功能,与 secubox.cybermood.eu 上的在线演示保持一致
|
||
|
||
---
|
||
|
||
## 另请参阅
|
||
|
||
- **实施工作流:** [MODULE-IMPLEMENTATION-GUIDE.md](module-implementation-guide.md)
|
||
- **代码模板:** [CODE-TEMPLATES.md](code-templates.md)
|
||
- **快速命令:** [QUICK-START.md](quick-start.md)
|
||
- **自动化防护:** [CODEX.md](codex.md)
|
||
|
||
---
|
||
|
||
## 目录
|
||
|
||
1. [设计系统参考](#设计系统参考)
|
||
2. [核心模块提示词](#核心模块提示词)
|
||
3. [安全与监控模块](#安全与监控模块)
|
||
4. [网络智能模块](#网络智能模块)
|
||
5. [VPN 与访问控制模块](#vpn-与访问控制模块)
|
||
6. [带宽与流量模块](#带宽与流量模块)
|
||
7. [性能与服务模块](#性能与服务模块)
|
||
|
||
---
|
||
|
||
## 设计系统参考
|
||
|
||
### 颜色调色板与变量
|
||
所有模块必须使用 `system-hub/common.css` 中的 CSS 变量:
|
||
|
||
**深色模式(主要):**
|
||
```css
|
||
--sh-bg-primary: #0a0a0f; /* 深黑色背景 */
|
||
--sh-bg-secondary: #12121a; /* 卡片背景 */
|
||
--sh-bg-tertiary: #1a1a24; /* 悬停/激活状态 */
|
||
--sh-primary: #6366f1; /* 靛蓝主色 */
|
||
--sh-primary-end: #8b5cf6; /* 紫罗兰(渐变) */
|
||
--sh-success: #22c55e; /* 绿色 */
|
||
--sh-danger: #ef4444; /* 红色 */
|
||
--sh-warning: #f59e0b; /* 橙色 */
|
||
--sh-text-primary: #fafafa; /* 主要文本 */
|
||
--sh-text-secondary: #a0a0b0; /* 次要文本 */
|
||
```
|
||
|
||
### 排版标准
|
||
```css
|
||
/* 字体 */
|
||
Inter: 正文、标签、UI 元素
|
||
JetBrains Mono: 数字、ID、代码、指标
|
||
|
||
/* 尺寸 */
|
||
--sh-title-xl: 28px; /* 页面标题 */
|
||
--sh-title-lg: 20px; /* 卡片标题 */
|
||
--sh-value-xl: 40px; /* 大型指标 */
|
||
--sh-value-lg: 32px; /* 统计概览 */
|
||
```
|
||
|
||
### 组件模式
|
||
1. **页面头部**:图标 + 标题 + 副标题 + 统计网格
|
||
2. **统计徽章**:等宽字体值,最小宽度 130px
|
||
3. **卡片**:3px 顶部边框(渐变或纯色)
|
||
4. **按钮**:渐变背景、阴影效果、平滑过渡
|
||
5. **筛选标签**:激活状态使用渐变,图标 + 标签模式
|
||
|
||
---
|
||
|
||
## 核心模块提示词
|
||
|
||
### 1. SecuBox 中央控制台 (luci-app-secubox)
|
||
|
||
**模块目的:** 主仪表板和中央控制面板
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建一个 LuCI 仪表板模块用于 SecuBox 中央控制台,具有以下功能:
|
||
|
||
设计要求:
|
||
- 深色主题,渐变背景 (#0a0a0f 到 #12121a)
|
||
- 页面头部带火箭图标和标题 "SecuBox 控制中心"
|
||
- 统计网格显示:模块总数(徽章)、活跃服务、系统健康、警报数量
|
||
- 使用 CSS 变量 --sh-*(永不硬编码颜色)
|
||
|
||
主要功能:
|
||
1. 模块概览网格
|
||
- 以卡片形式显示所有 15 个已安装的 SecuBox 模块
|
||
- 每个卡片:模块图标、名称、状态徽章(活跃/非活跃)、版本
|
||
- 颜色编码边框:绿色(运行中)、橙色(警告)、红色(已停止)
|
||
- 每个卡片有"配置"和"查看详情"按钮
|
||
- 筛选标签:全部 | 安全 | 网络 | 服务
|
||
|
||
2. 系统健康仪表板
|
||
- 实时指标:CPU、RAM、磁盘、网络
|
||
- 带渐变填充的动画进度条
|
||
- 阈值指示器(警告 >80%,危险 >90%)
|
||
- 所有数值使用 JetBrains Mono 字体
|
||
|
||
3. 快速操作面板
|
||
- 重启所有服务按钮(橙色渐变)
|
||
- 更新软件包按钮(蓝色渐变)
|
||
- 查看系统日志按钮(靛蓝渐变)
|
||
- 导出配置按钮(绿色渐变)
|
||
|
||
4. 警报时间线
|
||
- 最近 10 个系统事件及时间戳
|
||
- 严重级别的图标指示器
|
||
- 每个警报可展开详情
|
||
- 每 30 秒自动刷新
|
||
|
||
技术规格:
|
||
- 文件:luci-app-secubox/htdocs/luci-static/resources/view/secubox/dashboard.js
|
||
- RPCD 后端:luci.secubox(方法:getModules, getHealth, getAlerts)
|
||
- CSS:luci-app-secubox/htdocs/luci-static/resources/secubox/dashboard.css
|
||
- 所有 ubus 调用使用 L.resolveDefault()
|
||
- 实现适当的错误处理和用户友好的消息
|
||
- 添加带骨架屏的加载状态
|
||
|
||
要使用的 UI 组件:
|
||
- sh-page-header 用于主头部
|
||
- sh-card 及 sh-card-success/warning/danger 变体
|
||
- sh-stat-badge 用于指标(最小 130px)
|
||
- sh-btn sh-btn-primary 用于操作按钮
|
||
- sh-filter-tabs 用于分类筛选
|
||
|
||
参考在线演示:
|
||
匹配 secubox.cybermood.eu 演示的外观和感觉
|
||
- 卡片悬停时的平滑动画
|
||
- 标题上的渐变文字效果
|
||
- 活跃元素上的发光效果
|
||
- 响应式网格(最小 280px 卡片)
|
||
```
|
||
|
||
### 2. 系统中心 (luci-app-system-hub)
|
||
|
||
**模块目的:** 统一系统控制中心
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
为 OpenWrt 创建一个全面的系统中心模块,具有以下功能:
|
||
|
||
设计要求:
|
||
- 使用系统中心设计系统(common.css 变量)
|
||
- 页面标题:"系统控制中心" 带齿轮图标
|
||
- 多标签界面:概览 | 服务 | 日志 | 备份 | 组件 | 诊断 | 健康 | 远程 | 设置
|
||
|
||
概览标签:
|
||
1. 系统信息网格(4 列,响应式)
|
||
- 主机名卡片带编辑按钮
|
||
- 运行时间卡片带格式化持续时间
|
||
- 负载平均卡片(1m, 5m, 15m)等宽显示
|
||
- 内核版本卡片带复制图标
|
||
|
||
2. 资源监控器(动画进度圆圈)
|
||
- CPU 使用率带颜色编码(<70% 绿色,70-90% 橙色,>90% 红色)
|
||
- 内存使用带已用/总计显示
|
||
- 存储使用带文件系统分解
|
||
- 网络吞吐量(实时 RX/TX 速率)
|
||
|
||
3. 快速状态指示器
|
||
- 互联网连接性(每 60 秒 ping 测试)
|
||
- DNS 解析状态
|
||
- NTP 同步状态
|
||
- 防火墙状态及规则数量
|
||
|
||
服务标签:
|
||
1. 服务卡片网格
|
||
- 每个服务:名称、状态徽章、描述、运行时间
|
||
- 根据状态的颜色编码边框
|
||
- 操作按钮:启动/停止/重启/启用/禁用
|
||
- 筛选:全部 | 运行中 | 已停止 | 已启用 | 已禁用
|
||
- 服务筛选搜索栏
|
||
|
||
2. 服务详情弹窗
|
||
- 完整服务信息(PID、内存使用、CPU 时间)
|
||
- 最近日志(最后 50 行带语法高亮)
|
||
- 配置文件路径带编辑链接
|
||
- 依赖关系树视图
|
||
|
||
日志标签:
|
||
1. 系统日志查看器
|
||
- 实时日志流(WebSocket 或轮询)
|
||
- 严重级别颜色编码(错误=红色,警告=橙色,信息=蓝色)
|
||
- 按严重级别、服务、日期范围筛选
|
||
- 支持正则表达式的搜索功能
|
||
- 自动滚动切换
|
||
- 导出日志按钮(下载为 .txt)
|
||
- 等宽显示行号
|
||
- 紧凑头部模式(节省垂直空间)
|
||
|
||
2. 日志统计
|
||
- 过去一小时/一天的错误计数
|
||
- 最活跃的服务
|
||
- 警报频率图表(迷你图)
|
||
|
||
备份标签:
|
||
1. 备份管理
|
||
- 创建备份按钮(包含配置 + 已安装软件包列表)
|
||
- 列出现有备份的日期、大小、描述
|
||
- 从备份恢复带确认弹窗
|
||
- 下载备份到本地机器
|
||
- 从文件上传备份
|
||
- 自动备份计划配置
|
||
|
||
2. 备份预览
|
||
- 创建前显示包含的文件
|
||
- 估计大小计算
|
||
- 压缩选项(gz, xz)
|
||
|
||
组件标签:
|
||
1. 已安装软件包显示
|
||
- 所有 luci-app-* 软件包网格
|
||
- 每个卡片:软件包名称、版本、大小、状态
|
||
- 分类筛选(与 SecuBox 模块相同)
|
||
- 依赖信息
|
||
- 带警告的卸载按钮
|
||
|
||
诊断标签:
|
||
1. 网络诊断
|
||
- Ping 工具带目标输入
|
||
- Traceroute 带跳数可视化
|
||
- DNS 查询带多个名称服务器
|
||
- 端口扫描器(常用端口或自定义范围)
|
||
- 带宽测试(speedtest-cli 集成)
|
||
|
||
2. 系统诊断
|
||
- 文件系统检查状态
|
||
- 内存泄漏检测
|
||
- 进程列表带资源使用
|
||
- 打开的文件描述符计数
|
||
- 网络连接表
|
||
|
||
健康标签:
|
||
1. 系统健康报告
|
||
- 整体健康评分(0-100)带渐变圆圈
|
||
- 关键问题列表及修复建议
|
||
- 温度传感器(如果可用)
|
||
- 风扇速度(如果可用)
|
||
- SMART 磁盘状态
|
||
- 电池状态(对于 UPS 供电的系统)
|
||
|
||
2. 健康历史
|
||
- 24 小时健康评分图表(折线图)
|
||
- 资源使用趋势
|
||
- 警报频率随时间变化
|
||
|
||
远程标签:
|
||
1. 远程访问管理
|
||
- SSH 状态及端口和允许的 IP
|
||
- Web UI 访问信息(HTTP/HTTPS、端口、外部访问)
|
||
- RustDesk 远程桌面集成
|
||
- WireGuard VPN 状态(如果已安装)
|
||
- 动态 DNS 配置
|
||
|
||
设置标签:
|
||
1. 系统中心首选项
|
||
- 自动刷新间隔(10s/30s/60s/禁用)
|
||
- 深色/浅色模式切换
|
||
- 紧凑模式切换
|
||
- 语言选择
|
||
- 时区配置
|
||
- 仪表板布局自定义
|
||
|
||
技术实现:
|
||
- 文件:system-hub/overview.js, services.js, logs.js, backup.js, components.js, diagnostics.js, health.js, remote.js, settings.js
|
||
- RPCD:luci.system-hub 每个功能都有方法
|
||
- API 文件:system-hub/api.js 带干净的方法包装器
|
||
- CSS:system-hub/dashboard.css + common.css
|
||
- 使用 theme.js 进行深色/浅色模式切换
|
||
- WebSocket 支持实时日志流
|
||
- LocalStorage 用于用户首选项
|
||
- 适当的加载状态和错误处理
|
||
|
||
参考演示:
|
||
匹配 secubox.cybermood.eu/system-hub 演示
|
||
- 平滑的标签过渡
|
||
- 实时数据更新
|
||
- 响应式网格布局
|
||
- 专业的颜色编码
|
||
```
|
||
|
||
---
|
||
|
||
## 安全与监控模块
|
||
|
||
### 3. CrowdSec 仪表板 (luci-app-crowdsec-dashboard)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
为 OpenWrt 创建 CrowdSec 安全监控仪表板:
|
||
|
||
设计:
|
||
- 标题:"CrowdSec 安全" 带盾牌图标
|
||
- 深色主题,强调威胁指示器
|
||
- 统计徽章:活跃决策 | 已阻止 IP | 警报 | Bouncers
|
||
|
||
概览标签:
|
||
1. 威胁情报摘要
|
||
- 决策总数(参考全球阻止 15M+ IP)
|
||
- 本地活跃决策带过期倒计时
|
||
- 决策类型分解(ban, captcha, throttle)饼图
|
||
- 威胁地理分布(前 10 名带国旗)
|
||
|
||
2. 最近警报时间线
|
||
- 警报卡片包含:时间戳、场景、IP、国家旗帜、严重性
|
||
- 按风险级别颜色编码
|
||
- 可展开详情显示完整事件数据
|
||
- 按时间范围、场景类型、严重性筛选
|
||
|
||
3. 实时活动流
|
||
- 最近 100 个事件(可滚动,自动更新)
|
||
- IP 地址等宽显示带复制按钮
|
||
- 场景名称带图标
|
||
- 采取的操作(ban/log/captcha)
|
||
|
||
决策标签:
|
||
1. 活跃决策表
|
||
- 列:IP、原因、持续时间、过期时间、类型、来源、操作
|
||
- 所有列可排序
|
||
- 搜索和筛选功能
|
||
- 手动添加/删除决策按钮
|
||
- 批量操作(删除选中)
|
||
- 导出到 CSV 按钮
|
||
|
||
2. 决策统计
|
||
- 随时间变化的决策(24 小时图表)
|
||
- 最常被阻止的 IP
|
||
- 最常触发的场景
|
||
- 平均决策持续时间
|
||
|
||
警报标签:
|
||
1. 警报管理
|
||
- 按场景分组的警报卡片
|
||
- 带日期标题的时间线视图
|
||
- 严重性指示器(关键/高/中/低)
|
||
- 相关决策链接
|
||
- 标记为已解决功能
|
||
|
||
Bouncers 标签:
|
||
1. Bouncer 状态
|
||
- 已连接 bouncer 列表
|
||
- 每个 bouncer:名称、类型、版本、最后拉取、状态
|
||
- 添加新 bouncer 及 API 密钥生成
|
||
- 带确认的删除 bouncer
|
||
- Bouncer 指标(已应用决策、已执行查询)
|
||
|
||
指标标签:
|
||
1. 性能指标
|
||
- CrowdSec 服务健康
|
||
- 决策拉取频率
|
||
- API 响应时间
|
||
- 内存和 CPU 使用
|
||
- LAPI/CAPI 状态指示器
|
||
|
||
设置标签:
|
||
1. CrowdSec 配置
|
||
- 启用/禁用服务
|
||
- 采集配置(日志路径)
|
||
- 场景管理(启用/禁用特定场景)
|
||
- 集合管理(安装/删除)
|
||
- 控制台注册状态
|
||
|
||
技术:
|
||
- RPCD:luci.crowdsec-dashboard
|
||
- 方法:getStats, getDecisions, getAlerts, getBouncers, getMetrics
|
||
- 命令:cscli decisions list/add/delete, cscli alerts list, cscli bouncers list
|
||
- 解析 cscli 命令的 JSON 输出
|
||
- 处理与 CrowdSec 守护进程的 API 通信
|
||
|
||
视觉增强:
|
||
- 威胁级别卡片的渐变边框(绿色到橙色到红色)
|
||
- 新警报的动画脉冲
|
||
- IP 地理定位的国家旗帜
|
||
- 指标的迷你图表
|
||
- 数据获取期间的加载骨架
|
||
```
|
||
|
||
### 4. Netdata 仪表板 (luci-app-netdata-dashboard)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有 1000+ 指标的 Netdata 系统监控仪表板:
|
||
|
||
设计:
|
||
- 标题:"系统监控" 带图表图标
|
||
- 强调实时图表和指标
|
||
- 统计徽章:警报 | 服务 | 图表 | 收集器
|
||
|
||
仪表板标签:
|
||
1. 概览指标网格
|
||
- 系统负载(1m, 5m, 15m)仪表图
|
||
- 每核 CPU 使用率(多核可视化)
|
||
- RAM 使用分解(已用/缓存/缓冲区/空闲)
|
||
- 磁盘 I/O 速率(读/写 MB/s)
|
||
- 网络吞吐量(所有接口合计)
|
||
|
||
2. 快速图表
|
||
- CPU 温度图表(如果可用)
|
||
- Swap 使用图表
|
||
- 进程数图表(运行中/睡眠/僵尸)
|
||
- 上下文切换和中断图表
|
||
|
||
3. 嵌入式 Netdata
|
||
- 完整 Netdata Web UI 嵌入 iframe
|
||
- 响应式尺寸
|
||
- 主题匹配(深色模式)
|
||
|
||
系统标签:
|
||
1. 系统指标深入分析
|
||
- CPU 频率和调速器
|
||
- CPU 空闲时间百分比
|
||
- 每核使用率条形图
|
||
- 每秒系统中断
|
||
- 上下文切换速率
|
||
- 内核内部指标
|
||
|
||
2. 内存详情
|
||
- 内存分配图表
|
||
- 页面错误率
|
||
- 已提交内存比率
|
||
- 大页面使用
|
||
- Slab 内存分解
|
||
|
||
进程标签:
|
||
1. 进程监控
|
||
- 按 CPU 排名的顶级进程(实时更新表)
|
||
- 按 RAM 排名的顶级进程
|
||
- 按状态的进程计数
|
||
- 总线程数
|
||
- 进程产生率
|
||
|
||
2. 进程详情
|
||
- 每进程 CPU 时间
|
||
- 每进程内存映射
|
||
- 每进程打开的文件
|
||
- 进程树可视化
|
||
|
||
实时标签:
|
||
1. 实时监控
|
||
- 实时 CPU 图表(1 秒粒度)
|
||
- 实时网络 I/O
|
||
- 实时磁盘 I/O
|
||
- 实时内存变化
|
||
- 每秒自动刷新
|
||
|
||
网络标签:
|
||
1. 网络指标
|
||
- 接口统计(所有接口)
|
||
- 数据包速率(数据包/秒 入/出)
|
||
- 错误和丢包计数器
|
||
- TCP/UDP 连接状态
|
||
- Netfilter 统计
|
||
- DNS 查询统计(如果可用)
|
||
|
||
设置标签:
|
||
1. Netdata 配置
|
||
- 启用/禁用 Netdata 服务
|
||
- 配置保留期
|
||
- 启用/禁用特定收集器
|
||
- 警报配置
|
||
- 流配置(中央 Netdata)
|
||
|
||
技术:
|
||
- RPCD:luci.netdata-dashboard
|
||
- Netdata API 集成(http://localhost:19999/api/v1/)
|
||
- 方法:/info, /charts, /data, /alarms
|
||
- 轮询实时数据获取
|
||
- Chart.js 或原生 Netdata 图表
|
||
- WebSocket 支持实时更新
|
||
|
||
要包含的图表:
|
||
- 时间序列数据的折线图
|
||
- 比较的条形图
|
||
- 当前值的仪表图
|
||
- 堆叠指标的面积图
|
||
- 紧凑概览的迷你图
|
||
```
|
||
|
||
---
|
||
|
||
## 网络智能模块
|
||
|
||
### 5. Netifyd 仪表板 (luci-app-netifyd-dashboard)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
使用 Netifyd(300+ 应用检测)创建深度包检测仪表板:
|
||
|
||
设计:
|
||
- 标题:"网络智能" 带放大镜图标
|
||
- 专注于应用和协议可见性
|
||
- 统计徽章:活跃流 | 应用 | 设备 | 协议
|
||
|
||
概览标签:
|
||
1. 网络活动摘要
|
||
- 总流量计数(当前 + 历史)
|
||
- 今日检测到的唯一应用
|
||
- 活跃设备数
|
||
- 协议分布(TCP/UDP/ICMP 饼图)
|
||
|
||
2. 顶级应用图表
|
||
- 按带宽排名的前 10 个应用条形图
|
||
- 已识别应用的图标(Netflix, YouTube, Spotify 等)
|
||
- 总流量百分比
|
||
- 点击按应用筛选流量
|
||
|
||
3. 顶级设备
|
||
- 设备卡片包含:主机名、MAC、IP、当前应用
|
||
- 每设备带宽使用(RX/TX)
|
||
- 设备类型图标(手机、笔记本、电视、IoT)
|
||
|
||
应用标签:
|
||
1. 应用发现
|
||
- 检测到的应用网格
|
||
- 每个卡片:应用图标、名称、类别、协议、活跃流
|
||
- 颜色编码类别:
|
||
* 流媒体(红色):Netflix, YouTube, Twitch
|
||
* 社交(蓝色):Facebook, Instagram, TikTok
|
||
* 即时通讯(绿色):WhatsApp, Telegram, Signal
|
||
* VoIP(紫色):Zoom, Teams, Discord
|
||
* 游戏(橙色):Steam, PlayStation, Xbox
|
||
- 每应用实时带宽(迷你图)
|
||
|
||
2. 应用详情
|
||
- 点击应用查看:活跃连接、总带宽、使用的协议
|
||
- 选定应用的流量时间线
|
||
- 设备分解(哪些设备使用此应用)
|
||
|
||
设备标签:
|
||
1. 设备清单
|
||
- 表格:IP、MAC、主机名、厂商、活跃应用、带宽
|
||
- 可排序和可搜索
|
||
- 按子网分组设备
|
||
- 手动设备命名/标记
|
||
|
||
2. 设备配置文件
|
||
- 每设备视图:所有流量、应用使用历史
|
||
- 带宽趋势(24 小时图表)
|
||
- 风险评估(未知协议、可疑应用)
|
||
- 阻止/允许规则管理
|
||
|
||
流量标签:
|
||
1. 活跃流量监控器
|
||
- 实时网络流量表
|
||
- 列:源、目标、应用、协议、带宽、持续时间
|
||
- 带暂停按钮的自动滚动
|
||
- 按风险级别颜色编码
|
||
- 点击查看流量详情(完整 5 元组 + DPI 数据)
|
||
|
||
2. 流量统计
|
||
- 按协议的流量(饼图)
|
||
- 顶级发送者(源 IP)
|
||
- 顶级目标(外部 IP)
|
||
- 端口分布
|
||
|
||
顶级发送者标签:
|
||
1. 带宽排行榜
|
||
- 按总流量排名的 IP 地址列表
|
||
- 方向指示器(上传/下载)
|
||
- 时间范围选择器(1h/24h/7d/30d)
|
||
- 导出到 CSV
|
||
|
||
风险标签:
|
||
1. 风险评估
|
||
- 可疑流量检测
|
||
- 未知协议列表
|
||
- 连接到黑名单 IP
|
||
- 异常端口使用
|
||
- 潜在恶意软件 C2 流量
|
||
- 每设备风险评分(0-100)
|
||
|
||
类别带宽标签:
|
||
1. 按类别的流量
|
||
- 显示随时间变化的类别堆叠面积图
|
||
- 类别:流媒体、社交、游戏、商业、其他
|
||
- 百分比分解
|
||
- 使用高峰时段
|
||
|
||
DNS 查询标签:
|
||
1. DNS 分析
|
||
- 最近 DNS 查询表
|
||
- 最常查询的域名
|
||
- 失败查询计数
|
||
- DNS 泄漏检测
|
||
- 阻止的查询(如果使用 DNS 过滤)
|
||
|
||
设置标签:
|
||
1. Netifyd 配置
|
||
- 启用/禁用 DPI
|
||
- 选择要监控的接口
|
||
- 应用检测灵敏度
|
||
- 流量导出配置
|
||
- 隐私设置(数据保留)
|
||
|
||
技术:
|
||
- RPCD:luci.netifyd-dashboard
|
||
- Netifyd API:Unix 套接字 /var/run/netifyd/netifyd.sock
|
||
- JSON 流量导出解析
|
||
- Netify 签名的应用数据库
|
||
- 实时流量更新(WebSocket 或 SSE)
|
||
|
||
视觉功能:
|
||
- FontAwesome 或自定义 SVG 集的应用图标
|
||
- 动画流量计数器(计数效果)
|
||
- 颜色编码的带宽条
|
||
- 交互式图表(点击筛选)
|
||
- 带详细信息的工具提示
|
||
```
|
||
|
||
### 6. 网络模式 (luci-app-network-modes)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有 5 种拓扑选项的网络模式配置向导:
|
||
|
||
设计:
|
||
- 标题:"网络配置" 带地球图标
|
||
- 向导式界面,带步骤进度
|
||
- 带插图的大型模式卡片
|
||
|
||
概览标签:
|
||
1. 当前模式显示
|
||
- 显示活跃模式及图标的大卡片
|
||
- 模式描述
|
||
- 当前网络配置摘要(WAN/LAN IP、DHCP 状态)
|
||
- "更改模式"按钮(渐变)
|
||
|
||
2. 模式比较表
|
||
- 所有 5 种模式在列中
|
||
- 行:用例、WAN 端口、LAN 端口、WiFi 角色、DHCP 服务器、NAT
|
||
- 高亮当前模式
|
||
|
||
向导标签:
|
||
1. 模式选择屏幕
|
||
- 5 个模式卡片网格:
|
||
* 路由器模式 - 默认家庭/办公室设置
|
||
* 桥接模式 - 透明第 2 层转发
|
||
* 接入点模式 - 仅 WiFi,有线上行
|
||
* 中继/扩展器模式 - WiFi 到 WiFi 中继
|
||
* 旅行路由器模式 - 从酒店以太网便携 WiFi
|
||
- 每个卡片:标题、描述、优缺点、图表
|
||
- 每个卡片的"选择"按钮
|
||
|
||
2. 配置屏幕(每个模式)
|
||
- 模式特定设置:
|
||
* 路由器:WAN 类型(DHCP/PPPoE/静态)、LAN 子网、DHCP 范围
|
||
* 桥接:桥接成员、启用 STP、VLAN 配置
|
||
* AP:上行接口、SSID、安全性、信道
|
||
* 中继:源 SSID 扫描、凭据、重广播 SSID
|
||
* 旅行路由器:客户端 WiFi 扫描、WAN MAC 克隆选项
|
||
|
||
3. 预览屏幕
|
||
- 应用前显示配置更改
|
||
- 带新拓扑的网络图
|
||
- 将被重新配置的服务列表
|
||
- 估计停机时间警告
|
||
- "应用"和"返回"按钮
|
||
|
||
4. 应用屏幕
|
||
- 应用期间的进度指示器
|
||
- 逐步状态:
|
||
* 停止服务...
|
||
* 更新网络配置...
|
||
* 重启接口...
|
||
* 启动服务...
|
||
- 回滚计时器(60 秒确认)
|
||
- 成功后的确认屏幕
|
||
|
||
路由器模式标签:
|
||
1. 路由器设置
|
||
- WAN 接口配置(DHCP 客户端、静态、PPPoE、3G/4G)
|
||
- LAN 接口配置(IP、掩码、DHCP 服务器)
|
||
- 端口映射(哪些物理端口是 WAN vs LAN)
|
||
- NAT 和防火墙规则
|
||
- DNS 转发器配置
|
||
|
||
接入点标签:
|
||
1. AP 设置
|
||
- 上行接口选择(以太网或 WiFi)
|
||
- 禁用 NAT 和 DHCP 服务器
|
||
- 桥接 LAN 和上行
|
||
- WiFi 配置(SSID、安全性、信道、功率)
|
||
- 快速漫游(802.11r)设置
|
||
|
||
中继标签:
|
||
1. 中继/扩展器设置
|
||
- 站点调查(扫描 WiFi 网络)
|
||
- 连接到上游 WiFi(凭据)
|
||
- 重广播 SSID(相同或不同)
|
||
- WiFi 到 WiFi 桥接配置
|
||
- 信号强度指示器
|
||
|
||
嗅探器模式标签:
|
||
1. 数据包捕获配置
|
||
- WiFi 监控模式
|
||
- 以太网混杂模式
|
||
- 捕获过滤器(BPF 语法)
|
||
- 输出格式(pcap, pcapng)
|
||
- 捕获轮换和存储
|
||
- 与 tcpdump/wireshark 集成
|
||
|
||
设置标签:
|
||
1. 高级网络设置
|
||
- VLAN 配置
|
||
- 链路聚合(绑定)
|
||
- QoS 设置
|
||
- IPv6 配置
|
||
- 自定义路由规则
|
||
|
||
技术:
|
||
- RPCD:luci.network-modes
|
||
- 方法:get_current_mode, get_available_modes, set_mode, validate_config
|
||
- UCI 配置操作(/etc/config/network, wireless, firewall, dhcp)
|
||
- 接口状态监控(network.interface 事件)
|
||
- 回滚机制(uci revert + 计时器)
|
||
|
||
验证:
|
||
- IP 地址格式验证
|
||
- 子网重叠检测
|
||
- DHCP 范围在子网内检查
|
||
- WiFi 信道可用性检查
|
||
- 物理端口分配冲突
|
||
```
|
||
|
||
---
|
||
|
||
## VPN 与访问控制模块
|
||
|
||
### 7. WireGuard 仪表板 (luci-app-wireguard-dashboard)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建带二维码生成的 WireGuard VPN 管理仪表板:
|
||
|
||
设计:
|
||
- 标题:"WireGuard VPN" 带锁图标
|
||
- 现代 VPN 仪表板美学
|
||
- 统计徽章:活跃对等方 | 数据传输量 | 运行时间 | 端点
|
||
|
||
概览标签:
|
||
1. VPN 状态
|
||
- 接口状态(上/下)带切换
|
||
- 公钥显示(等宽,复制按钮)
|
||
- 监听端口
|
||
- IP 地址(VPN 子网)
|
||
- 端点(如果是客户端模式)
|
||
|
||
2. 对等方统计
|
||
- 活跃对等方数量
|
||
- 总数据 RX/TX(所有对等方合计)
|
||
- 最新握手时间戳
|
||
- 连接质量指示器
|
||
|
||
3. 快速操作
|
||
- 启动/停止 VPN 按钮
|
||
- 生成新密钥对按钮
|
||
- 下载配置按钮
|
||
- 添加对等方按钮(快速弹窗)
|
||
|
||
对等方标签:
|
||
1. 对等方管理
|
||
- 对等方卡片网格:
|
||
* 每个卡片:名称、公钥(截断)、允许的 IP、端点、状态
|
||
* 颜色编码边框(绿色=活跃,橙色=过期,红色=断开)
|
||
* 最后握手时间(例如"2 分钟前")
|
||
* 数据传输计数器(RX/TX)
|
||
* 编辑和删除按钮
|
||
|
||
2. 添加对等方对话框
|
||
- 自动生成密钥对或粘贴现有公钥
|
||
- 分配 VPN IP 地址(自动建议下一个可用)
|
||
- 定义允许的 IP(0.0.0.0/0 为全隧道,特定子网为分割)
|
||
- 可选:持久 keepalive 间隔
|
||
- 可选:预共享密钥(PSK)用于后量子安全
|
||
- 即时生成配置文件和二维码
|
||
|
||
二维码标签:
|
||
1. 移动客户端设置
|
||
- 从下拉菜单选择对等方
|
||
- 生成 WireGuard 客户端配置
|
||
- 显示为二维码(用于 WireGuard 移动应用扫描)
|
||
- 同时显示配置文本(可复制)
|
||
- 下载 .conf 文件按钮
|
||
- 在配置中包含 DNS 服务器
|
||
|
||
2. 二维码选项
|
||
- 自定义 DNS 服务器
|
||
- 包含所有路由 vs 分割隧道
|
||
- MTU 配置
|
||
- 持久 keepalive 设置
|
||
|
||
流量标签:
|
||
1. 流量分析
|
||
- 实时带宽图表(每对等方)
|
||
- 历史流量图表(24h, 7d, 30d)
|
||
- 顶级带宽用户
|
||
- 按协议的流量(如果有 DPI)
|
||
|
||
配置标签:
|
||
1. 接口配置
|
||
- 私钥(默认隐藏,显示按钮)
|
||
- 公钥(派生,只读)
|
||
- 监听端口(默认 51820)
|
||
- IP 地址(逗号分隔用于多子网)
|
||
- MTU 大小
|
||
- 表(路由表编号)
|
||
|
||
2. 高级设置
|
||
- Pre-up/Post-up 脚本
|
||
- Pre-down/Post-down 脚本
|
||
- 防火墙区域分配
|
||
- NAT 伪装切换
|
||
|
||
设置标签:
|
||
1. 全局 VPN 设置
|
||
- 开机自启切换
|
||
- Keep-alive 间隔(全局默认)
|
||
- DNS 泄漏保护
|
||
- IPv6 支持切换
|
||
- 日志级别
|
||
|
||
2. 端点配置(客户端模式)
|
||
- 服务器端点主机名/IP
|
||
- 服务器公钥
|
||
- 允许的 IP(什么流量通过 VPN)
|
||
- 用于 NAT 穿越的持久 keepalive
|
||
|
||
技术:
|
||
- RPCD:luci.wireguard-dashboard
|
||
- 方法:status, get_interfaces, get_peers, add_peer, remove_peer, generate_keys, generate_config, generate_qr
|
||
- 命令:wg show, wg set, wg genkey, wg pubkey, wg genpsk
|
||
- 二维码生成:qrencode 命令或 JavaScript 库(qrcodejs)
|
||
- 配置文件模板生成
|
||
- 实时对等方状态更新
|
||
|
||
UI 增强:
|
||
- 动画连接状态指示器
|
||
- 活跃对等方的渐变边框
|
||
- 密钥和配置的复制到剪贴板
|
||
- 添加/编辑对等方的模态对话框
|
||
- 破坏性操作的确认对话框
|
||
- 成功/错误的 Toast 通知
|
||
```
|
||
|
||
### 8. 客户端守护者 (luci-app-client-guardian)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建网络访问控制(NAC)和强制门户系统:
|
||
|
||
设计:
|
||
- 标题:"访问控制" 带用户图标
|
||
- 专注于设备管理和访问策略
|
||
- 统计徽章:总设备 | 已允许 | 已阻止 | 访客
|
||
|
||
概览标签:
|
||
1. 网络摘要
|
||
- 曾见过的总设备(所有时间)
|
||
- 当前连接的设备
|
||
- 已允许设备数量
|
||
- 已阻止设备数量
|
||
- 访客设备(强制门户)
|
||
|
||
2. 最近活动
|
||
- 最近 20 个连接事件
|
||
- 每个事件:时间戳、MAC、IP、主机名、操作(允许/阻止/强制)
|
||
- 按操作类型颜色编码
|
||
|
||
3. 快速操作
|
||
- 阻止所有未知设备按钮(锁定模式)
|
||
- 允许所有按钮(开放模式)
|
||
- 清除访客会话按钮
|
||
|
||
客户端标签:
|
||
1. 设备表
|
||
- 列:MAC、IP、主机名、厂商、区域、状态、操作
|
||
- 所有列可排序
|
||
- 搜索/筛选栏
|
||
- 批量选择操作
|
||
|
||
2. 设备详情弹窗
|
||
- 完整设备信息:MAC、IP、主机名、厂商(来自 MAC 前缀)
|
||
- 连接历史(首次见、最后见、总连接数)
|
||
- 当前区域分配(LAN、访客、已阻止)
|
||
- 分配的策略
|
||
- 编辑按钮(更改主机名、区域、策略)
|
||
|
||
区域标签:
|
||
1. 区域管理
|
||
- 预定义区域:
|
||
* 受信任(完全访问)
|
||
* LAN(标准访问)
|
||
* 访客(受限访问,强制门户)
|
||
* IoT(隔离,有限访问)
|
||
* 隔离区(已阻止)
|
||
|
||
2. 区域配置
|
||
- 每区域设置:
|
||
* 允许的服务(HTTP、HTTPS、DNS 等)
|
||
* 带宽限制
|
||
* 时间限制
|
||
* 区域间通信规则
|
||
* 防火墙规则
|
||
|
||
强制门户标签:
|
||
1. 强制门户配置
|
||
- 启用/禁用门户
|
||
- 欢迎页面自定义:
|
||
* 自定义 Logo 上传
|
||
* 欢迎消息(HTML 编辑器)
|
||
* 服务条款文本
|
||
* 接受后重定向 URL
|
||
|
||
2. 门户主题
|
||
- 预定义主题(商务、酒店、咖啡馆、学校)
|
||
- 配色方案自定义
|
||
- 预览按钮
|
||
|
||
3. 门户设置
|
||
- 会话持续时间(1h, 4h, 24h, 无限)
|
||
- 访问前要求邮箱
|
||
- 要求短信验证
|
||
- 要求社交登录(Facebook, Google)
|
||
- 自动允许已知设备
|
||
|
||
门户设计标签:
|
||
1. 欢迎页面编辑器
|
||
- WYSIWYG HTML 编辑器
|
||
- 模板变量(例如 {{client_mac}}, {{client_ip}})
|
||
- 背景图片上传
|
||
- CSS 样式面板
|
||
- 实时预览
|
||
|
||
日志标签:
|
||
1. 访问日志
|
||
- 连接尝试日志
|
||
- 允许/阻止决策
|
||
- 强制门户认证
|
||
- 按时间范围、MAC、IP、区域、操作筛选
|
||
|
||
警报标签:
|
||
1. 安全警报
|
||
- MAC 欺骗检测
|
||
- 过多连接尝试
|
||
- 未知设备连接
|
||
- 设备更改区域
|
||
- 警报规则配置
|
||
|
||
家长控制标签:
|
||
1. 内容过滤
|
||
- 网站类别阻止(成人、社交、游戏等)
|
||
- 基于时间的访问控制(上课时间、就寝时间)
|
||
- 每设备或每用户策略
|
||
- SafeSearch 强制执行
|
||
- YouTube 限制模式
|
||
|
||
2. 设备组
|
||
- 分组设备(例如"儿童设备")
|
||
- 将策略应用于组
|
||
- 基于计划的规则(工作日 vs 周末)
|
||
|
||
设置标签:
|
||
1. 客户端守护者设置
|
||
- 新设备的默认区域
|
||
- MAC-IP 绑定强制执行
|
||
- ARP 缓存超时
|
||
- DHCP 集成(根据 IP 范围分配区域)
|
||
- 日志级别和保留期
|
||
|
||
技术:
|
||
- RPCD:luci.client-guardian
|
||
- 方法:list_clients, update_client, get_zones, configure_portal, get_logs
|
||
- 集成:
|
||
* nftables/iptables 用于访问控制
|
||
* dnsmasq 用于 DNS 和 DHCP
|
||
* nginx/uhttpd 用于强制门户
|
||
* ipset 用于高效设备分组
|
||
- 设备跟踪数据库(SQLite 或 UCI)
|
||
|
||
强制门户实现:
|
||
- 拦截未认证客户端的 HTTP 流量
|
||
- 重定向到欢迎页面
|
||
- 接受后,添加到允许的 ipset
|
||
- 使用 cookie 或令牌的会话管理
|
||
```
|
||
|
||
### 9. 认证守护者 (luci-app-auth-guardian)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有 OAuth2 和凭证券的认证和会话管理系统:
|
||
|
||
设计:
|
||
- 标题:"认证" 带钥匙图标
|
||
- 专业的认证仪表板
|
||
- 统计徽章:活跃会话 | OAuth 提供商 | 凭证券 | 绕过规则
|
||
|
||
概览标签:
|
||
1. 认证状态
|
||
- 注册用户总数
|
||
- 活跃会话数量
|
||
- 已配置的 OAuth 提供商
|
||
- 今日凭证券使用数
|
||
|
||
2. 最近认证
|
||
- 最近 20 个认证事件
|
||
- 每个:时间戳、用户名/邮箱、方法(OAuth/凭证券/绕过)、IP、状态
|
||
- 按状态颜色编码(成功=绿色,失败=红色)
|
||
|
||
会话标签:
|
||
1. 活跃会话表
|
||
- 列:用户、会话 ID、开始时间、最后活动、IP、设备、操作
|
||
- 点击查看会话详情
|
||
- 撤销会话按钮(带确认)
|
||
- 强制注销所有会话按钮
|
||
|
||
2. 会话管理
|
||
- 会话超时配置
|
||
- 每用户并发会话限制
|
||
- 空闲超时
|
||
- "记住我"持续时间
|
||
|
||
凭证券标签:
|
||
1. 凭证券管理
|
||
- 创建新凭证券按钮
|
||
- 凭证券表:代码、持续时间、剩余使用次数、创建时间、过期时间、状态
|
||
- 凭证券类型:
|
||
* 单次使用(仅一次)
|
||
* 多次使用(X 次使用)
|
||
* 时间限制(持续时间后过期)
|
||
* 带宽限制(X GB 配额)
|
||
|
||
2. 创建凭证券对话框
|
||
- 生成随机代码或自定义代码
|
||
- 凭证券持续时间(1h, 4h, 24h, 7d, 30d, 无限)
|
||
- 使用限制(1, 10, 100, 无限)
|
||
- 带宽配额(可选)
|
||
- 备注/描述字段
|
||
- 打印凭证券按钮(带代码的可打印页面)
|
||
|
||
3. 批量凭证券生成
|
||
- 一次生成 X 个凭证券
|
||
- 导出为 CSV
|
||
- 打印表格(每页多个凭证券)
|
||
|
||
OAuth 标签:
|
||
1. OAuth 提供商配置
|
||
- 支持的提供商:
|
||
* Google OAuth
|
||
* GitHub OAuth
|
||
* Facebook 登录
|
||
* Microsoft Azure AD
|
||
* 自定义 OAuth2 提供商
|
||
|
||
2. 提供商设置
|
||
- Client ID 输入
|
||
- Client Secret 输入(遮罩)
|
||
- 重定向 URI(自动生成)
|
||
- 作用域配置
|
||
- 每个提供商启用/禁用
|
||
- 测试按钮(启动 OAuth 流程)
|
||
|
||
3. 用户映射
|
||
- 将 OAuth 属性映射到本地用户字段
|
||
- 首次 OAuth 登录时自动创建用户
|
||
- 基于 OAuth 声明的组分配
|
||
|
||
欢迎页面标签:
|
||
1. 登录页面自定义
|
||
- 自定义 Logo 上传
|
||
- 欢迎文本编辑器
|
||
- 启用的认证方法(OAuth 按钮、凭证券输入、绕过链接)
|
||
- 背景图片或渐变
|
||
- 配色方案
|
||
- 预览按钮
|
||
|
||
绕过规则标签:
|
||
1. 绕过配置
|
||
- MAC 地址白名单(无需认证)
|
||
- IP 范围白名单
|
||
- 主机名白名单(正则表达式模式)
|
||
- 基于时间的绕过(例如办公时间,所有设备允许)
|
||
|
||
2. 绕过列表
|
||
- 表:MAC/IP、描述、添加时间、过期时间
|
||
- 添加/删除绕过规则
|
||
- 临时绕过(X 小时后过期)
|
||
|
||
日志标签:
|
||
1. 认证日志
|
||
- 所有认证尝试(成功和失败)
|
||
- 按日期范围、用户名、方法、IP 筛选
|
||
- 导出到 CSV
|
||
- 可视化:
|
||
* 随时间的认证尝试(折线图)
|
||
* 认证方法分解(饼图)
|
||
* 按 IP 的失败尝试(条形图)
|
||
|
||
设置标签:
|
||
1. 认证守护者设置
|
||
- 要求认证(全局切换)
|
||
- 默认会话持续时间
|
||
- 密码策略(如果有本地用户)
|
||
- 双因素认证(TOTP)
|
||
- 登录尝试限制(暴力破解保护)
|
||
- 会话存储(内存 vs 数据库)
|
||
|
||
技术:
|
||
- RPCD:luci.auth-guardian
|
||
- 方法:status, list_providers, list_vouchers, create_voucher, delete_voucher, validate_voucher, list_sessions, revoke_session
|
||
- OAuth 实现:
|
||
* 授权码流程
|
||
* JWT 令牌验证
|
||
* 提供商特定 API 调用
|
||
- 凭证券系统:
|
||
* 随机代码生成(字母数字,8-16 字符)
|
||
* 过期跟踪(cron 任务或守护进程)
|
||
* 使用日志记录
|
||
- 会话管理:
|
||
* 基于 Cookie 或令牌
|
||
* Redis 或内存存储会话
|
||
* 会话清理任务
|
||
|
||
集成:
|
||
- 与客户端守护者配合用于强制门户
|
||
- 认证后访问的防火墙集成
|
||
- RADIUS 支持(可选,用于企业)
|
||
```
|
||
|
||
---
|
||
|
||
## 带宽与流量模块
|
||
|
||
### 10. 带宽管理器 (luci-app-bandwidth-manager)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建全面的 QoS 和带宽管理系统:
|
||
|
||
设计:
|
||
- 标题:"带宽管理器" 带信号图标
|
||
- 专注于流量整形和配额
|
||
- 统计徽章:活跃规则 | 总带宽 | 跟踪的客户端 | 配额
|
||
|
||
概览标签:
|
||
1. 带宽摘要
|
||
- 总可用带宽(WAN 上行/下行)
|
||
- 当前使用(实时仪表)
|
||
- 峰值使用(今日最大)
|
||
- 平均使用(24h)
|
||
|
||
2. 顶级带宽用户
|
||
- 表:IP/主机名、下载、上传、总计、百分比
|
||
- 实时更新
|
||
- 点击应用快速规则
|
||
|
||
3. 流量分类
|
||
- 按协议:HTTP、HTTPS、DNS、P2P、流媒体、游戏
|
||
- 按优先级:高、中、低、批量
|
||
- 饼图可视化
|
||
|
||
规则标签:
|
||
1. QoS 规则表
|
||
- 列:名称、源、目标、服务、优先级、速率限制、状态
|
||
- 可排序和可筛选
|
||
- 每规则启用/禁用切换
|
||
- 编辑/删除操作
|
||
|
||
2. 添加规则对话框
|
||
- 规则类型:带宽限制、优先级、保证
|
||
- 匹配条件:
|
||
* 源 IP/MAC/子网
|
||
* 目标 IP/子网
|
||
* 端口/服务(HTTP、HTTPS、SSH 等)
|
||
* 协议(TCP、UDP、ICMP)
|
||
* 应用(基于 DPI,如果可用)
|
||
- 操作:
|
||
* 设置下载限制(kbps/mbps)
|
||
* 设置上传限制
|
||
* 设置优先级(1-7,或类名)
|
||
* 保证最小带宽
|
||
- 计划(始终、基于时间、星期几)
|
||
|
||
配额标签:
|
||
1. 带宽配额
|
||
- 每设备配额
|
||
- 每用户配额
|
||
- 家庭配额(设备组)
|
||
- 基于时间的配额(每日、每周、每月)
|
||
|
||
2. 配额配置
|
||
- 设置配额量(GB)
|
||
- 设置配额周期(日/周/月)
|
||
- 超过配额时的操作:
|
||
* 阻止所有流量
|
||
* 限制到 X kbps
|
||
* 仅发送通知
|
||
- 配额重置计划
|
||
- 滚动未使用配额(可选)
|
||
|
||
3. 配额使用仪表板
|
||
- 每设备/用户卡片显示:
|
||
* 配额限制
|
||
* 已用量
|
||
* 剩余
|
||
* 带颜色编码的进度条
|
||
* 重置日期
|
||
- 警告阈值(80%、90% 时通知)
|
||
|
||
使用标签:
|
||
1. 历史使用
|
||
- 图表:
|
||
* 每日使用(过去 30 天)条形图
|
||
* 每小时使用(过去 24 小时)折线图
|
||
* 每周使用(过去 12 周)面积图
|
||
- 按设备、服务、方向(上/下)筛选
|
||
- 导出到 CSV
|
||
|
||
2. 使用统计
|
||
- 本月总传输量
|
||
- 每日平均使用
|
||
- 峰值小时(使用最高时)
|
||
- 趋势应用
|
||
|
||
媒体标签:
|
||
1. 媒体流量检测
|
||
- 流媒体服务:Netflix、YouTube、Disney+、Twitch 等
|
||
- VoIP:Zoom、Teams、Discord、WhatsApp 通话
|
||
- 游戏:Steam、PlayStation、Xbox Live
|
||
- 社交媒体:Facebook、Instagram、TikTok
|
||
|
||
2. 媒体特定规则
|
||
- 快速模板:
|
||
* 优先 VoIP 于流媒体
|
||
* 工作时间限制流媒体
|
||
* 限制游戏带宽
|
||
- 每服务带宽分配
|
||
- 基于质量的限制(4K vs 720p 检测)
|
||
|
||
类标签:
|
||
1. 流量类(HTB/CAKE)
|
||
- 预定义类:
|
||
* 实时(VoIP、游戏):最高优先级
|
||
* 交互(网页浏览、SSH):高优先级
|
||
* 批量(下载、更新):低优先级
|
||
* 默认:中等优先级
|
||
|
||
2. 类配置
|
||
- 每类带宽分配(百分比或绝对值)
|
||
- 借用(允许类使用其他类的未用带宽)
|
||
- 上限(类可使用的最大带宽)
|
||
- 量子(公平队列的数据包大小)
|
||
|
||
客户端标签:
|
||
1. 每客户端管理
|
||
- 带当前带宽使用的客户端列表
|
||
- 快速操作:
|
||
* 为客户端设置带宽限制
|
||
* 对客户端应用配额
|
||
* 临时阻止客户端
|
||
* 分配到流量类
|
||
|
||
计划标签:
|
||
1. 计划管理
|
||
- 创建基于时间的规则
|
||
- 示例:
|
||
* 工作时间(9am-5pm 周一-周五):优先商业应用
|
||
* 晚间(6pm-11pm):允许流媒体
|
||
* 深夜(11pm-6am):限制一切
|
||
- 计划的日历视图
|
||
- 冲突检测
|
||
|
||
设置标签:
|
||
1. 全局设置
|
||
- WAN 带宽限制(上行/下行 Mbps)
|
||
- QoS 算法:CAKE、HTB、SFQ、FQ_CODEL
|
||
- 全局启用/禁用 QoS
|
||
- 默认流量类
|
||
- 带宽测试(测量实际 WAN 速度)
|
||
|
||
2. 高级设置
|
||
- DSCP 标记
|
||
- ECN(显式拥塞通知)
|
||
- 开销计算(用于 PPPoE 等)
|
||
- 每数据包开销字节
|
||
- 链路层适配
|
||
|
||
技术:
|
||
- RPCD:luci.bandwidth-manager
|
||
- 方法:getStats, getRules, addRule, deleteRule, getQuotas, setQuota, getUsage
|
||
- QoS 实现:
|
||
* tc(流量控制)命令用于 HTB
|
||
* cake qdisc 用于现代 QoS
|
||
* iptables conntrack 用于使用计费
|
||
* nftables meters 用于速率限制
|
||
- 数据库:
|
||
* SQLite 或 UCI 用于规则和配额
|
||
* RRD 用于历史带宽数据
|
||
* iptables 计数器用于实时统计
|
||
|
||
视觉增强:
|
||
- 带宽仪表图表(动画)
|
||
- 趋势迷你图
|
||
- 颜色编码的配额条
|
||
- 响应式规则卡片
|
||
```
|
||
|
||
### 11. 流量整形器 (luci-app-traffic-shaper)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有抗缓冲膨胀(CAKE)的高级流量整形模块:
|
||
|
||
设计:
|
||
- 标题:"流量整形器" 带火箭图标
|
||
- 技术/高级焦点
|
||
- 统计徽章:活跃队列 | 平均延迟 | 丢包率 | 吞吐量
|
||
|
||
概览标签:
|
||
1. 整形器状态
|
||
- QoS 启用状态切换
|
||
- 活跃算法(CAKE、HTB、FQ_CODEL)
|
||
- 整形的接口(WAN、LAN)
|
||
- 当前延迟(ping 到 1.1.1.1)
|
||
|
||
2. 性能指标
|
||
- 负载下的往返时间(RTT)
|
||
- 缓冲区大小(当前 vs 最佳)
|
||
- 丢包率
|
||
- 吞吐量(实际 vs 配置)
|
||
|
||
3. 缓冲膨胀测试
|
||
- 运行 DSLReports 速度测试按钮
|
||
- 显示结果:下载、上传、延迟、等级
|
||
- 历史测试结果图表
|
||
|
||
类标签:
|
||
1. 流量类(HTB 层次结构)
|
||
- 根类(总带宽)
|
||
- 带优先级的子类:
|
||
* 加速转发(EF):VoIP、游戏
|
||
* 确保转发(AF):商业应用
|
||
* 尽力而为(BE):网页、邮件
|
||
* 后台(批量下载)
|
||
|
||
2. 类配置
|
||
- 速率(保证带宽)
|
||
- 上限(最大带宽)
|
||
- 优先级(1-7)
|
||
- 量子(数据包大小)
|
||
- 突发(允许临时超限)
|
||
|
||
规则标签:
|
||
1. 分类规则
|
||
- 匹配条件:
|
||
* DSCP/TOS 字段
|
||
* 端口号
|
||
* IP 地址
|
||
* 协议
|
||
* DPI 签名
|
||
- 操作:分配到流量类
|
||
- 规则优先级(1-999)
|
||
|
||
2. 规则模板
|
||
- 预定义规则:
|
||
* VoIP 优化(SIP、RTP 端口)
|
||
* 游戏优化(已知游戏服务器)
|
||
* 流媒体降优先级
|
||
* P2P 限制
|
||
- 一键应用
|
||
|
||
统计标签:
|
||
1. 队列统计
|
||
- 每类指标:
|
||
* 发送的数据包
|
||
* 发送的字节
|
||
* 丢弃(超载指示器)
|
||
* 超限(达到上限)
|
||
* 重新排队
|
||
- 实时和历史图表
|
||
|
||
2. 接口统计
|
||
- 每接口计数器
|
||
- 队列深度图表
|
||
- 延迟测量(ICMP ping 或时间戳)
|
||
|
||
预设标签:
|
||
1. QoS 预设
|
||
- 游戏预设(最低延迟,优先游戏端口)
|
||
- 流媒体预设(平衡,允许流媒体带宽)
|
||
- 商业预设(优先 VoIP、远程桌面)
|
||
- 平衡预设(一般家用)
|
||
- 手动预设(自定义配置)
|
||
|
||
2. 预设配置
|
||
- 从下拉菜单选择预设
|
||
- 自动配置所有参数
|
||
- 显示将更改的内容(差异预览)
|
||
- 应用按钮
|
||
|
||
CAKE 配置标签:
|
||
1. CAKE 设置
|
||
- 带宽(上行/下行 Mbps)
|
||
- 开销:
|
||
* 无
|
||
* ADSL(带交织)
|
||
* VDSL2
|
||
* 以太网
|
||
* PPPoE
|
||
- 链路层适配:
|
||
* 以太网
|
||
* ATM
|
||
* PTM
|
||
- 流:
|
||
* 三重隔离(源 IP、目标 IP、端口)
|
||
* 双源主机
|
||
* 双目标主机
|
||
* 每主机
|
||
- Diffserv:
|
||
* Diffserv4(4 个 tin)
|
||
* Diffserv3(3 个 tin)
|
||
* Besteffort(单队列)
|
||
- ECN:启用/禁用
|
||
- ACK 过滤器:启用/禁用(用于慢上行链路)
|
||
|
||
技术:
|
||
- RPCD:luci.traffic-shaper
|
||
- 命令:
|
||
* tc qdisc add/del/replace
|
||
* tc class add/del/change
|
||
* tc filter add/del
|
||
* cake qdisc 配置
|
||
- 实时监控:
|
||
* tc -s qdisc show
|
||
* tc -s class show
|
||
* 解析输出以获取统计信息
|
||
- 延迟测试:
|
||
* 带时间戳的 ping 命令
|
||
* 与 fping 或 hping3 集成
|
||
|
||
视觉增强:
|
||
- 实时延迟图表(实时更新)
|
||
- 丢包率迷你图
|
||
- 类层次结构树视图
|
||
- 按优先级颜色编码的类
|
||
```
|
||
|
||
### 12. 媒体流 (luci-app-media-flow)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建媒体流和 VoIP 流量检测仪表板:
|
||
|
||
设计:
|
||
- 标题:"媒体监控器" 带电影图标
|
||
- 专注于流媒体服务和视频通话
|
||
- 统计徽章:活跃流 | VoIP 通话 | 带宽使用 | 服务
|
||
|
||
仪表板标签:
|
||
1. 活跃媒体流
|
||
- 每个活跃流的卡片:
|
||
* 服务 Logo(Netflix、YouTube 等)
|
||
* 客户端设备(IP、主机名)
|
||
* 流质量估计(4K、1080p、720p、SD)
|
||
* 当前比特率(Mbps)
|
||
* 持续时间
|
||
- 按服务类型颜色编码(流媒体=红色,VoIP=绿色)
|
||
|
||
2. 服务分解
|
||
- 饼图:按服务的带宽
|
||
- 服务:
|
||
* Netflix、Amazon Prime、Disney+、Hulu、HBO Max
|
||
* YouTube、Twitch、Vimeo
|
||
* Spotify、Apple Music、Pandora
|
||
* Zoom、Teams、Meet、Webex
|
||
* WhatsApp、Telegram、FaceTime
|
||
|
||
服务标签:
|
||
1. 流媒体服务网格
|
||
- 每个服务卡片:
|
||
* 图标/Logo
|
||
* 今日总带宽使用
|
||
* 活跃会话
|
||
* 检测到的峰值质量
|
||
* 平均会话持续时间
|
||
- 点击卡片查看详情
|
||
|
||
2. 服务历史
|
||
- 每服务随时间的使用
|
||
- 质量分布(4K vs HD vs SD 的频率)
|
||
- 观看高峰时段
|
||
|
||
客户端标签:
|
||
1. 设备媒体使用
|
||
- 表:设备、服务、质量、比特率、持续时间
|
||
- 按设备分组
|
||
- 显示每设备总媒体消耗
|
||
- 识别重度流媒体用户
|
||
|
||
历史标签:
|
||
1. 历史媒体活动
|
||
- 所有媒体会话的时间线视图
|
||
- 按日期范围、服务、设备、质量筛选
|
||
- 导出到 CSV
|
||
- 图表:
|
||
* 每日流媒体小时数
|
||
* 服务流行度趋势
|
||
* 质量与带宽相关性
|
||
|
||
警报标签:
|
||
1. 媒体警报
|
||
- 过度流媒体警报
|
||
- 质量下降警报(4K 降到 720p)
|
||
- VoIP 质量问题(丢包、抖动)
|
||
- 新服务检测
|
||
- 异常模式(例如凌晨 3 点流媒体)
|
||
|
||
2. 警报配置
|
||
- 设置警报阈值
|
||
- 通知方法(Web UI、邮件、webhook)
|
||
- 每设备警报规则
|
||
|
||
技术:
|
||
- RPCD:luci.media-flow
|
||
- DPI 集成:
|
||
* Netifyd 用于应用检测
|
||
* nDPI 库用于深度检查
|
||
* 流媒体协议的签名匹配
|
||
- 质量估计:
|
||
* 比特率分析(例如 >15 Mbps = 4K,5-15 Mbps = 1080p)
|
||
* DASH/HLS manifest 解析(如果可访问)
|
||
- VoIP 检测:
|
||
* RTP/RTCP 端口和模式
|
||
* SIP 信令检测
|
||
* WebRTC 检测
|
||
|
||
流媒体协议:
|
||
- HLS(HTTP 直播流)
|
||
- DASH(动态自适应流)
|
||
- RTMP(实时消息协议)
|
||
- RTP(用于 VoIP)
|
||
- WebRTC(用于视频通话)
|
||
```
|
||
|
||
---
|
||
|
||
## 性能与服务模块
|
||
|
||
### 13. CDN 缓存 (luci-app-cdn-cache)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有带宽节省分析的 CDN 缓存代理仪表板:
|
||
|
||
设计:
|
||
- 标题:"CDN 缓存" 带闪电图标
|
||
- 专注于性能和节省
|
||
- 统计徽章:缓存命中率 | 带宽节省 | 缓存对象 | 存储使用
|
||
|
||
概览标签:
|
||
1. 缓存性能
|
||
- 命中率百分比(大型仪表图)
|
||
- 今日请求:总计、命中、未命中
|
||
- 估计带宽节省(GB 和百分比)
|
||
- 存储使用(已用/总计)
|
||
|
||
2. 顶级缓存内容
|
||
- 表:URL/域名、命中数、大小、最后访问
|
||
- 内容类型分解(图片、视频、脚本、文档)
|
||
- 饼图:缓存 vs 不可缓存流量
|
||
|
||
缓存标签:
|
||
1. 缓存对象浏览器
|
||
- 缓存对象列表:
|
||
* URL
|
||
* Content-Type
|
||
* 大小
|
||
* 过期时间
|
||
* 命中计数
|
||
* 操作(查看、清除)
|
||
- 搜索和筛选
|
||
- 按模式批量清除
|
||
|
||
2. 缓存统计
|
||
- 总对象数
|
||
- 平均对象大小
|
||
- 最大对象
|
||
- 最多命中的对象
|
||
- 即将过期的计数
|
||
|
||
策略标签:
|
||
1. 缓存策略
|
||
- 要缓存的域名(白名单)
|
||
- 永不缓存的域名(黑名单)
|
||
- 要缓存的内容类型(image/*、video/*、text/css 等)
|
||
- 最大对象大小(MB)
|
||
- 按内容类型的缓存持续时间(TTL)
|
||
|
||
2. 缓存规则
|
||
- 规则编辑器:
|
||
* 匹配 URL 模式(正则表达式)
|
||
* 缓存持续时间覆盖
|
||
* 缓存或绕过决策
|
||
* 优先级(1-100)
|
||
|
||
统计标签:
|
||
1. 性能指标
|
||
- 响应时间比较:缓存命中 vs 未命中
|
||
- 带宽图表:缓存 vs 源站
|
||
- 随时间的请求率
|
||
- 缓存效率趋势(24h, 7d, 30d)
|
||
|
||
2. 节省计算器
|
||
- 原始带宽使用(无缓存)
|
||
- 节省的带宽(GB)
|
||
- 成本节省估计(ISP 每 GB $)
|
||
- 响应时间改进(ms)
|
||
|
||
维护标签:
|
||
1. 缓存维护
|
||
- 清除全部按钮(带确认)
|
||
- 按模式清除(例如 *.youtube.com/*)
|
||
- 清除过期对象
|
||
- 优化数据库(重建索引)
|
||
- 预热缓存(预取热门 URL)
|
||
|
||
2. 存储管理
|
||
- 存储使用分解
|
||
- LRU 淘汰设置(最近最少使用)
|
||
- 最大缓存大小配置
|
||
- 存储位置(磁盘、RAM 或混合)
|
||
|
||
设置标签:
|
||
1. CDN 缓存配置
|
||
- 启用/禁用缓存
|
||
- 上游 DNS 服务器
|
||
- 代理端口(透明或显式)
|
||
- SSL 证书处理(bump 或直通)
|
||
- 日志级别
|
||
|
||
2. 高级设置
|
||
- 负缓存(缓存 404 等)
|
||
- 范围请求处理
|
||
- Vary 头支持
|
||
- ETag 验证
|
||
- Stale-while-revalidate
|
||
|
||
技术:
|
||
- RPCD:luci.cdn-cache
|
||
- 缓存软件:
|
||
* Squid 代理
|
||
* Nginx 缓存代理
|
||
* Varnish
|
||
* OpenWrt 自带的 uhttpd 缓存模块
|
||
- 方法:getStats, getCacheObjects, purge, setPolicies
|
||
- 存储后端:文件系统或数据库
|
||
- 监控:解析访问日志以获取命中/未命中
|
||
|
||
视觉增强:
|
||
- 命中率动画仪表
|
||
- 趋势指标迷你图
|
||
- 颜色编码的节省(绿色 = 高节省)
|
||
- 前后对比图表
|
||
```
|
||
|
||
### 14. 虚拟主机管理器 (luci-app-vhost-manager)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建具有自动 SSL 的虚拟主机和反向代理管理器:
|
||
|
||
设计:
|
||
- 标题:"虚拟主机" 带地球图标
|
||
- 专注于 Web 托管和代理
|
||
- 统计徽章:活跃 VHosts | SSL 证书 | 总请求 | 可用性
|
||
|
||
概览标签:
|
||
1. VHost 摘要
|
||
- 已配置的虚拟主机总数
|
||
- 活跃(已启用)vs 非活跃
|
||
- 启用 SSL 的主机数量
|
||
- 证书过期警告
|
||
|
||
2. 快速操作
|
||
- 添加 VHost 按钮
|
||
- 请求 SSL 证书按钮
|
||
- 查看访问日志按钮
|
||
|
||
VHosts 标签:
|
||
1. 虚拟主机列表
|
||
- 每个 vhost 的卡片:
|
||
* 域名
|
||
* 类型(反向代理、静态站点、重定向)
|
||
* 后端(如果是代理)
|
||
* 状态(已启用/已禁用)
|
||
* SSL 状态(有效、即将过期、无)
|
||
* 操作(编辑、禁用、删除、查看日志)
|
||
|
||
2. 添加/编辑 VHost 对话框
|
||
- 域名输入(自动验证 DNS)
|
||
- VHost 类型:
|
||
* 反向代理(代理到后端服务器)
|
||
* 静态站点(从目录提供服务)
|
||
* 重定向(301/302 到其他 URL)
|
||
- 后端配置(用于代理):
|
||
* 后端 URL(http://192.168.1.10:8080)
|
||
* 协议(HTTP、HTTPS、WebSocket)
|
||
* 负载均衡(如果有多个后端)
|
||
- SSL 配置:
|
||
* 自动(通过 ACME 的 Let's Encrypt)
|
||
* 手动(上传证书 + 密钥)
|
||
* 无(仅 HTTP)
|
||
- 高级:
|
||
* 自定义头
|
||
* 访问控制(允许/拒绝 IP)
|
||
* 请求重写
|
||
|
||
内部标签:
|
||
1. 内部服务
|
||
- 常见服务的预定义代理:
|
||
* LuCI 本身
|
||
* Netdata
|
||
* CrowdSec 仪表板
|
||
* RustDesk
|
||
* 自定义应用
|
||
- 一键为内部服务启用代理
|
||
|
||
证书标签:
|
||
1. SSL 证书管理
|
||
- 证书列表:
|
||
* 域名
|
||
* 颁发者(Let's Encrypt、自签名、CA)
|
||
* 有效期从 - 有效期到
|
||
* 距过期天数
|
||
* 操作(续订、撤销、下载、删除)
|
||
|
||
2. ACME 配置
|
||
- ACME 提供商(Let's Encrypt 生产/测试、ZeroSSL、BuyPass)
|
||
- 通知邮箱
|
||
- 验证类型:
|
||
* HTTP-01(端口 80 验证)
|
||
* DNS-01(TXT 记录验证)
|
||
* TLS-ALPN-01(端口 443 验证)
|
||
- 自动续订切换(剩余 <30 天时续订)
|
||
|
||
3. 请求证书
|
||
- 域名输入(使用 DNS-01 支持通配符)
|
||
- 验证方法选择器
|
||
- 颁发按钮(显示进度)
|
||
|
||
SSL 标签:
|
||
1. SSL/TLS 设置
|
||
- 全局 SSL 设置:
|
||
* 最低 TLS 版本(1.0、1.1、1.2、1.3)
|
||
* 密码套件
|
||
* HSTS(HTTP 严格传输安全)
|
||
* OCSP 装订
|
||
- 每 vhost 覆盖
|
||
|
||
重定向标签:
|
||
1. 重定向规则
|
||
- 简单重定向:
|
||
* 从域名/路径
|
||
* 到 URL
|
||
* 类型(301 永久、302 临时、307 临时保留方法)
|
||
- 通配符重定向
|
||
- 基于正则表达式的重定向
|
||
|
||
日志标签:
|
||
1. 访问日志
|
||
- 所有 vhost 的组合访问日志
|
||
- 按 vhost、IP、状态码、日期筛选
|
||
- 列:时间戳、IP、方法、路径、状态、字节、引用者、User-Agent
|
||
- 实时日志流
|
||
- 导出到 CSV
|
||
|
||
2. 错误日志
|
||
- 代理错误(后端不可达、超时)
|
||
- SSL 错误(证书无效、过期)
|
||
- 配置错误
|
||
|
||
技术:
|
||
- RPCD:luci.vhost-manager
|
||
- 反向代理软件:
|
||
* Nginx
|
||
* HAProxy
|
||
* Caddy(用于自动 SSL)
|
||
* Apache
|
||
- ACME 客户端:
|
||
* acme.sh 脚本
|
||
* Certbot
|
||
* Caddy 内置 ACME
|
||
- 方法:getVHosts, addVHost, deleteVHost, requestCertificate, getLogs
|
||
|
||
集成:
|
||
- 通过 API 的 DNS 验证(Cloudflare 等)
|
||
- 动态 DNS 更新
|
||
- 防火墙端口开放(80、443)
|
||
- Let's Encrypt 速率限制处理
|
||
```
|
||
|
||
### 15. KSM 管理器 (luci-app-ksm-manager)
|
||
|
||
**Claude.ai 提示词:**
|
||
|
||
```
|
||
创建支持 HSM 的加密密钥和密钥管理仪表板:
|
||
|
||
设计:
|
||
- 标题:"密钥管理" 带锁图标
|
||
- 以安全为重点,专业美学
|
||
- 统计徽章:总密钥 | 活跃密钥 | 证书 | 密钥
|
||
|
||
概览标签:
|
||
1. 密钥管理状态
|
||
- 管理的密钥总数
|
||
- 密钥类型分解(RSA、ECDSA、ED25519)
|
||
- 即将过期的密钥(未来 30 天)
|
||
- HSM 状态(如果已连接)
|
||
|
||
2. 最近活动
|
||
- 最后的密钥操作:生成、使用、轮换、撤销
|
||
- 审计日志(最后 20 条)
|
||
|
||
密钥标签:
|
||
1. 加密密钥列表
|
||
- 表:密钥 ID、类型、大小、用途、创建时间、过期时间、状态
|
||
- 密钥类型:
|
||
* 签名密钥(用于代码、文档)
|
||
* 加密密钥(用于静态数据)
|
||
* 认证密钥(SSH、TLS 客户端)
|
||
- 操作:查看、导出公钥、轮换、撤销、删除
|
||
|
||
2. 生成密钥对话框
|
||
- 算法选择:
|
||
* RSA(2048、3072、4096 位)
|
||
* ECDSA(P-256、P-384、P-521)
|
||
* ED25519
|
||
- 用途标志:
|
||
* 数字签名
|
||
* 密钥加密
|
||
* 数据加密
|
||
- 存储:
|
||
* 软件(文件系统)
|
||
* HSM(如果可用)
|
||
* TPM(如果可用)
|
||
- 密码短语保护(可选)
|
||
|
||
HSM 标签:
|
||
1. 硬件安全模块
|
||
- HSM 连接状态
|
||
- HSM 信息:厂商、型号、固件版本
|
||
- 可用密钥槽
|
||
- HSM 操作:
|
||
* 初始化 HSM
|
||
* 在 HSM 上生成密钥
|
||
* 将密钥导入 HSM
|
||
* 备份 HSM
|
||
|
||
证书标签:
|
||
1. X.509 证书管理
|
||
- 列表:主题、颁发者、有效期从/到、序列号、指纹
|
||
- 证书链视图
|
||
- 操作:查看详情、导出(PEM/DER)、撤销
|
||
|
||
2. 证书请求(CSR)
|
||
- 生成 CSR 以供 CA 签名
|
||
- 字段:CN、O、OU、C、ST、L、Email
|
||
- 密钥用途扩展
|
||
- 导出 CSR 以提交给 CA
|
||
|
||
3. 自签名证书
|
||
- 快速生成自签名证书
|
||
- 有效期选择
|
||
- 主题备用名称(SANs)
|
||
|
||
密钥标签:
|
||
1. 密钥存储(保险库)
|
||
- 键值密钥存储
|
||
- 密钥列表:名称、类型、创建时间、最后访问
|
||
- 密钥类型:
|
||
* 密码
|
||
* API 密钥
|
||
* 令牌
|
||
* 连接字符串
|
||
- 静态加密
|
||
- 访问控制(哪些用户/应用可以访问)
|
||
|
||
2. 添加密钥对话框
|
||
- 密钥名称(基于路径:db/prod/password)
|
||
- 密钥值(遮罩输入)
|
||
- TTL(生存时间,自动过期)
|
||
- 版本控制(保留旧版本)
|
||
|
||
SSH 标签:
|
||
1. SSH 密钥管理
|
||
- SSH 密钥对列表
|
||
- 生成 SSH 密钥(RSA、ED25519、ECDSA)
|
||
- 导入现有密钥
|
||
- 导出公钥(用于 authorized_keys)
|
||
- 授权密钥管理(谁可以 SSH 登录)
|
||
|
||
审计标签:
|
||
1. 审计日志
|
||
- 所有密钥操作已记录:
|
||
* 生成、导入、导出、使用、轮换、撤销、删除
|
||
- 时间戳、用户、操作、密钥 ID、结果
|
||
- 按日期范围、操作类型、密钥 ID、用户筛选
|
||
- 导出审计日志
|
||
|
||
设置标签:
|
||
1. KSM 配置
|
||
- 密钥存储位置
|
||
- 默认密钥算法和大小
|
||
- 自动轮换策略(每 X 天轮换密钥)
|
||
- 备份位置和计划
|
||
- HSM 连接设置(如果支持)
|
||
|
||
技术:
|
||
- RPCD:luci.ksm-manager
|
||
- 密钥存储:
|
||
* OpenSSL 用于密钥操作
|
||
* GnuPG 用于 PGP 密钥
|
||
* SSH-keygen 用于 SSH 密钥
|
||
* 通过 PKCS#11 的 HSM 集成
|
||
- 密钥加密:
|
||
* 使用主密钥加密密钥
|
||
* 主密钥从密码短语派生或存储在 HSM 中
|
||
- 方法:listKeys, generateKey, exportKey, importKey, listSecrets, addSecret, getSecret
|
||
|
||
安全:
|
||
- 所有密钥静态加密
|
||
- 所有操作的审计日志
|
||
- 访问控制(基于角色)
|
||
- 安全密钥删除(删除前覆盖)
|
||
```
|
||
|
||
---
|
||
|
||
## 所有模块的通用 UI 模式
|
||
|
||
### 全局设计一致性
|
||
|
||
**所有模块必须包含:**
|
||
|
||
1. **页面头部模式**
|
||
```javascript
|
||
E('div', { 'class': 'sh-page-header' }, [
|
||
E('div', {}, [
|
||
E('h2', { 'class': 'sh-page-title' }, [
|
||
E('span', { 'class': 'sh-page-title-icon' }, '[图标]'),
|
||
'[模块标题]'
|
||
]),
|
||
E('p', { 'class': 'sh-page-subtitle' }, '[描述]')
|
||
]),
|
||
E('div', { 'class': 'sh-stats-grid' }, [
|
||
// 至少 4 个统计徽章
|
||
])
|
||
])
|
||
```
|
||
|
||
2. **统计徽章**(最小 130px,等宽值)
|
||
```javascript
|
||
E('div', { 'class': 'sh-stat-badge' }, [
|
||
E('div', { 'class': 'sh-stat-value' }, '[值]'),
|
||
E('div', { 'class': 'sh-stat-label' }, '[标签]')
|
||
])
|
||
```
|
||
|
||
3. **筛选标签**(用于分类)
|
||
```javascript
|
||
E('div', { 'class': 'sh-filter-tabs' }, [
|
||
E('div', { 'class': 'sh-filter-tab active', 'data-filter': 'all' }, [
|
||
E('span', { 'class': 'sh-tab-icon' }, '[图标]'),
|
||
E('span', { 'class': 'sh-tab-label' }, '[标签]')
|
||
])
|
||
])
|
||
```
|
||
|
||
4. **带颜色边框的卡片**
|
||
```javascript
|
||
E('div', { 'class': 'sh-card sh-card-success' }, [
|
||
E('div', { 'class': 'sh-card-header' }, [
|
||
E('h3', { 'class': 'sh-card-title' }, '[标题]')
|
||
]),
|
||
E('div', { 'class': 'sh-card-body' }, [
|
||
// 内容
|
||
])
|
||
])
|
||
```
|
||
|
||
5. **渐变按钮**
|
||
```javascript
|
||
E('button', { 'class': 'sh-btn sh-btn-primary' }, '[操作]')
|
||
```
|
||
|
||
6. **加载状态**
|
||
- 获取数据时的骨架屏
|
||
- 按钮操作的加载指示器
|
||
- 长操作的进度条
|
||
|
||
7. **错误处理**
|
||
- 用户友好的错误消息
|
||
- 重试按钮
|
||
- 回退内容
|
||
|
||
8. **响应式设计**
|
||
- 移动优先方法
|
||
- 移动端卡片堆叠
|
||
- 统计网格自适应(最小 130px)
|
||
- 表格变为可滚动或基于卡片
|
||
|
||
---
|
||
|
||
## 如何使用这些提示词
|
||
|
||
### 步骤 1:选择模块
|
||
从上面的列表中选择要重新生成/实现的模块。
|
||
|
||
### 步骤 2:复制完整提示词
|
||
复制该模块的整个提示词(从"创建..."到"视觉增强:")。
|
||
|
||
### 步骤 3:提供给 Claude.ai
|
||
将提示词粘贴到 Claude.ai(claude.ai 对话)并附加额外上下文:
|
||
|
||
```
|
||
我需要你为 OpenWrt LuCI 实现 [模块名称]。
|
||
|
||
重要约束:
|
||
- OpenWrt 使用 LuCI 框架(不是 React/Vue)
|
||
- JavaScript 使用 L.view 模式(不是 ES6 模块)
|
||
- 后端是 RPCD(shell 脚本)通过 ubus 通信
|
||
- CSS 必须使用 common.css 中的变量
|
||
- 所有代码必须是生产就绪的
|
||
- 精确遵循设计系统
|
||
|
||
这是完整的规格:
|
||
|
||
[在此粘贴提示词]
|
||
|
||
请提供:
|
||
1. 完整的 JavaScript 视图文件
|
||
2. RPCD 后端脚本
|
||
3. 所需的 CSS
|
||
4. ACL 配置
|
||
5. 菜单配置 JSON
|
||
|
||
确保所有代码与 secubox.cybermood.eu 上的在线演示匹配
|
||
```
|
||
|
||
### 步骤 4:迭代
|
||
如果需要,提供在线演示的截图或请求调整以精确匹配外观和感觉。
|
||
|
||
---
|
||
|
||
## 其他资源
|
||
|
||
- **在线演示:** https://secubox.cybermood.eu
|
||
- **设计系统:** DEVELOPMENT-GUIDELINES.md
|
||
- **快速开始:** QUICK-START.md
|
||
- **构建指南:** CLAUDE.md
|
||
|
||
---
|
||
|
||
**文档版本:** 1.0.0
|
||
**最后更新:** 2025-12-27
|
||
**维护者:** CyberMind.fr
|