NodeSeek Mail v4.0.0 更新公告
多组织、统一身份、域名与证书自动化、邮箱工作台
发布日期: 2026-08-29
版本范围: 2026-04-04 ~ 2026-08-29 | 415 commits | 770+ 个文件 | 145,000+ 行代码变更
重点更新
多组织平台架构
系统从原来的单组织邮箱服务升级为平台、组织两级架构。平台可以统一管理组织、套餐、配额、域名、登录方式和全局策略;每个组织拥有独立的管理员、用户、邮箱、域名、品牌和安全边界。原有 NodeSeek 用户和邮箱已平滑迁移到默认组织,原有使用方式保持兼容。
统一域名与身份体系
平台管理端、平台用户端以及各组织的管理端、Webmail 和邮件协议域名现在可以分别配置。NodeSeek CAuth 已升级为通用 SSO Provider,支持平台级和组织级 OAuth、存量身份识别、JIT 注册、组织专属登录入口和第三方身份绑定。
邮箱工作台全面升级
用户端邮件工作台重新设计,支持三栏宽度调节、紧凑侧边栏、邮箱分组与排序、高级搜索、正文缩放、主题场景和更清晰的邮件状态。邮件正文改为隔离渲染,复杂 HTML、深浅色兼容和超小字体邮件的可读性得到改善。
邮箱安全生命周期
邮箱和一次性地址释放后不再立即永久删除,而是进入可恢复保留期。用户可以在保留期内恢复误删邮箱,重要邮箱还可以锁定,避免误释放、误删除或误转让。
邮件 TLS 证书自动化
新增完整的邮件协议证书管理体系,覆盖 SMTP、IMAP、POP3 及其 TLS 端口。支持手动上传、ACME 自动签发、SNI 多证书、自动续签、历史版本、续签记录和运行时热更新。
新功能
多组织与平台管理
- 新增平台、组织两级管理模型
- 新增组织创建、停用、邀请、自助注册和品牌白标
- 新增平台管理员、组织管理员、角色和权限分层
- 新增组织套餐、用户/邮箱/域名配额和策略覆盖
- 新增平台视图、组织视图和超级管理员组织模拟视图
- 用户名和管理员用户名改为组织内唯一
- 预留邮箱拆分为平台级和组织级资源
- 公告、通知、审计、反垃圾和管理列表支持组织范围
- 新增 Community / XPack 版本识别与 Edition API
域名与访问入口
- 平台管理域名与平台用户域名可以独立配置
- 组织可以配置独立的管理端、Webmail 和邮件协议域名
- 支持 TXT 所有权验证、DNS 检查和域名状态流转
- 支持管理端和 Webmail 的 CNAME 目标提示
- 后端根据 Host 自动分流管理 SPA 与用户 SPA
- 支持组织域名锁定,防止从错误组织入口登录
- 支持组织 slug 登录入口和工作空间 URL
- 支持平台默认 SMTP、IMAP、POP3 主机名与端口
- 邮件客户端连接信息会自动使用对应平台或组织端点
- Community 单组织模式支持将前端 SPA 嵌入后端二进制
SSO、登录与 2FA
- NodeSeek CAuth 解耦为通用 Auth Provider
- 支持平台级和组织级多个 OAuth Provider 实例
- Provider 密钥加密保存,State 使用 HMAC 校验
- 支持 JIT 新用户注册并指定默认组织
- 用户可以绑定、查看和解绑第三方登录身份
- 平台入口可以识别来自不同组织的存量用户
- 组织自定义域严格限制为本组织身份
- 密码登录支持用户名或邮箱地址
- 平台入口遇到跨组织同名账号时提供组织选择
- 已绑定 CAuth 的用户可重新认证后自助关闭丢失的 2FA
- OAuth 登录统一补发认证与 CSRF Cookie
邮箱地址管理
- 新增邮箱地址分组、颜色标识和分组筛选
- 支持邮箱分组与邮箱地址自定义排序
- 邮箱切换器同步展示分组、置顶和排序结果
- 邮箱支持置顶、强调和锁定
- 锁定邮箱禁止删除、释放和转让
- 邮箱释放进入 1-30 天可配置保留期,默认 7 天
- 支持在保留期内恢复邮箱及其邮件、附件和设置
- 新增释放历史、清理状态和失败重试
- 支持
user+tag@domain子地址路由和自动标签 - 新增邮箱地址一键复制和创建规则提示
一次性邮箱地址
- 新增接收专用的一次性邮箱地址,与“临时发信权限”相互独立
- 一次性地址收到的邮件投递到用户选择的正式邮箱
- 支持随机地址、自定义地址、备注、最大接收次数和过期时间
- 一次性地址域名可以与目标邮箱域名分开选择
- 页面明确提示一次性地址不能用于发信和登录邮件客户端
- 未启用一次性邮箱功能时隐藏无效创建入口并显示状态说明
- 暂停、删除和过期均纳入统一生命周期
- 释放后进入可恢复保留期,降低误删和地址被立即抢注的风险
邮件阅读与处理
- 邮件工作台支持左侧导航、邮件列表和正文三栏独立调节
- 侧边栏支持紧凑图标模式,悬浮显示菜单名称
- 邮件正文支持独立缩放并记住用户偏好
- 复杂 HTML 邮件使用隔离文档渲染,减少样式污染
- 优化深浅色背景、正文对比度、固定宽度和超小字体邮件
- 邮件切换时保留稳定布局,避免正文闪烁或显示上一封内容
- 新增常见验证码自动提取,列表和详情均可一键复制
- 显示 SPF、DKIM、DMARC 等发件人认证结果
- 新增追踪像素识别、屏蔽和用户级隐私设置
- 支持邮件提醒、会话视图、稍后处理和线程导航
- 附件、CID 图片、远程图片和下载失败状态提示更加明确
搜索与筛选
- 邮件搜索支持发件人、收件人、主题、正文、日期、附件和文件夹等组合条件
- 高级搜索在正文区域内展示,不再遮挡整个工作台
- 打开高级搜索不会关闭当前筛选菜单
- 搜索条件与普通列表状态分离,退出搜索后正确恢复
- 搜索结果显示正文命中提示和关键词高亮
- 邮箱分组可直接用于邮箱切换和邮件范围筛选
- 大列表支持虚拟滚动、请求取消和搜索防抖
- 管理端邮件搜索支持位置与多条件组合
用户操作日志
- 新增独立的用户操作日志页面
- 支持分页查询,不再只在首页展示固定数量
- 邮箱创建、释放、转让、锁定、排序和 API 操作均写入审计记录
- OpenAPI 创建邮箱等写操作补齐操作日志
- 操作类型统一中文显示,并保留时间、对象和来源信息
邮件转发与发送
- 邮件转发支持 ARC 签名
- 自动转发保留原始发件人、Reply-To 和 X-Original-To
- 优化 SRS / Sender 展示,用户可以识别原始发件域名
- 保持标准 Return-Path 语义,不影响 SPF 和退信处理
- 邮件转发增加熔断、超时和失败保护
- 自动回复增加频率限制
- 发信和转让留档流程补齐审计与失败状态
TLS 证书管理
- 使用 Go 内置 ACME 客户端,不再依赖
acme.sh - 支持 Let's Encrypt HTTP-01 自动签发和强制重签
- 支持手动上传平台主域名证书
- 支持多证书并存并按 SNI 匹配域名和通配符
- 支持 SMTP、Submission、IMAP、POP3 证书热更新
- 证书更新无需重启后端和邮件协议端口
- 自动计算续签时间并记录上次续签结果
- 新增续签任务历史、失败原因、重试时间和清理策略
- 每次上传、签发和续期保留独立证书版本
- 旧证书可以手动重新激活
- 区分邮箱域名与实际 Mail 端点证书覆盖关系
- 支持 SafeLine、标准 Nginx 等边缘代理转发 ACME challenge
外观与主题
- 用户可以配置背景图、自定义 CSS 和布局偏好
- 新增主题市场、场景主题和原创形象主题
- 主题支持背景位置、尺寸、透明度、遮罩和模糊强度
- 支持平台、组织、用户三级主题级联
- 组织可以锁定主题或限制用户修改范围
- 管理员主题和用户偏好均持久化保存
- 管理端与用户端统一状态图标、按钮和反馈样式
- 深浅色模式状态对比度和可读性全面调整
工单、转让与附件
- 工单内联图片改为永久附件,关闭或转让后仍可查看
- 管理员可以在工单详情中查看用户上传的图片
- 工单附件增加独立权限和下载校验
- 邮箱转让增加
completing状态和并发锁 - 同一转让请求只允许生成一条完成记录
- 修复转让前留档,收件、已发送邮件和附件统一归档
- 转让不可提交时展示明确原因
存储、清理与运维
- 邮件二进制内容支持本地存储与 S3 冷归档
- 二进制写入失败进入异步重试队列
- 新增待清理时间线和删除原因说明
- 区分用户主动删除、系统清理、转让和邮箱释放
- 管理端可查看保留记录和邮件生命周期审计
- 新增
/healthz、/readyz健康检查 - 定时任务支持分布式锁、超时、取消和优雅停止
- 新增升级前基线、在线分批回填和升级后验收断言
- 备份恢复链和迁移中断续跑能力得到加强
Bug 修复
登录与权限
- 修复旧版本升级后平台管理员无法查看组织和套餐管理
- 修复平台 SSO 使用
org_id=0查询导致存量用户无法登录 - 修复 NodeSeek SSO 新用户无法确定组织、无法注册
- 修复 OAuth 回调重复绑定导致请求体为空
- 修复 OAuth redirect 登录后缺少认证或 CSRF Cookie
- 修复 CAuth State 重放风险
- 修复多组织同名用户登录可能 panic
- 修复登录页 401 循环刷新和组织上下文丢失
邮件列表、搜索与阅读
- 修复邮件详情偶发 404 或被错误提示“邮件不存在”
- 修复标记已读失败以及旧会话 Cookie 不完整
- 修复高级搜索条件遗留到普通邮件列表
- 修复搜索接口忽略发件人、文件夹等条件
- 修复搜索失败返回 500 和列表空结果异常
- 修复高级搜索弹窗超出正文区域、必须滚动才能操作
- 修复筛选菜单点击高级搜索后意外关闭
- 修复 HTML 邮件浅色模式文字不可见、字体过小和宽度溢出
- 修复转发邮件继承站点 CSS 变量导致正文颜色异常
- 修复正文滚动、缩放、远程图片和链接显示问题
- 修复三栏拖动分割线重复、首次拖动多线和无法缩小
- 修复紧凑侧边栏头像菜单层级错误
邮箱、一次性地址与转让
- 修复一次性邮箱目标邮箱下拉框无法选择
- 修复空数组返回结构不一致导致一次性邮箱页面不可用
- 修复一次性邮箱只能使用目标邮箱所属域名
- 修复邮箱分组只在管理页生效、切换邮箱时不可见
- 修复邮箱释放、转让和锁定之间的状态冲突
- 修复转让留档失败及残留
pending/completing状态 - 修复删除或转让后已发送邮件状态不一致
- 修复释放保留接口路由缺失
域名与 TLS
- 修复 ACME challenge 未正确转发到后端
- 修复证书签发后旧证书仍保持激活
- 修复自动续签状态、历史和下次执行时间不可见
- 修复证书只覆盖 Mail 端点时被误报为域名异常
- 修复多个邮箱域名复用同一证书时缺少匹配说明
- 修复 DNS 检查对
@域名和 CNAME 目标处理错误 - 修复 ACME 初始化拖慢或阻断服务启动
工单、通知与管理端
- 修复工单图片使用临时 URL 导致历史图片失效
- 修复工单附件和图片的跨用户访问风险
- 修复通知重试被重复领取以及永久失败状态缺失
- 修复操作日志缺少分页和部分动作未汉化
- 修复管理端邮件管理无法打开详情
- 修复管理端状态标签浅色模式对比度过低
- 修复 OpenAPI 文档入口、折叠菜单提示和弹层层级问题
数据库与 API
- 修复大表迁移拆分后静默漏列和中途失败无法续跑
- 迁移器增加语句级 hash 与进度记录,可精确续跑
- 修复增量备份错误包含表结构、恢复时可能覆盖数据
- 修复用户、邮箱、邮件、身份和组织成员回填语义
- 修复多处 nil slice 返回 JSON
null导致前端异常 - 补齐 OpenAPI 写操作日志与组织范围校验
- 修复接口错误被统一映射为 404、掩盖真实数据库问题
安全修复
- 全面补齐用户、邮箱、邮件、附件、标签、文件夹和工单的组织隔离
- 修复平台与组织管理员之间的角色提权风险
- 修复共享授权、别名、附件下载和邮件查看的跨组织越权
- 修复 API Key、OpenAPI、发信渠道和 SMTP 规则的跨组织枚举
- JWT 增加
jti吊销名单,退出后 Token 立即失效 - OAuth Provider 密钥加密保存并增加 State HMAC 校验
- CAuth 回调增加签名重放防护
- 上传接口增加文件大小、MIME 和实际内容检查
- SMTP 中继测试限制目标,防止利用管理接口探测内部地址
- 外部 HTTP 请求统一增加超时、连接池和 SSRF 防护
- TLS 私钥不通过管理 API 返回
- 加强 Cookie、CSRF、API Scope 和写操作审计
性能与稳定性
- 增加邮件、邮箱、组织和清理任务关键索引
- 优化数据库连接池和连接等待超时
- 邮件列表使用轻量字段查询,避免重复读取完整正文
- 大列表引入虚拟滚动、请求取消和搜索防抖
- 深分页改用 Cursor 或受控 Offset
- 邮件清理统计改为按用户和组织范围查询
- 清理查询由大范围扫描改为两路 Top-N 合并
- 多处 N+1 查询改为批量预加载
- 大批量删除改为分批执行并支持取消
- S3 / 二进制写入移出核心数据库事务
- 服务启动、证书加载和性能恢复任务移出关键路径
- 定时任务增加分布式锁,防止多实例重复执行
功能调整
- 精简重复或差异过小的普通配色,保留具有明确辨识度的主题
- 用户状态、空状态和操作反馈统一使用 Lucide 图标
- 保留 v3 已有的 OpenAPI、临时发信、工单、图床、多渠道发信和结构化日志体系
版本说明
v4.0.0 是 v3.0.0 之后的主版本。版本号提升的主要依据不是界面功能数量,而是多组织、身份、域名、权限和数据库模型均发生了系统级变化。后续兼容性修复使用 v4.0.x,新功能且保持兼容使用 v4.x.0;只有再次发生不兼容的核心架构变化时才升级到 v5.0.0。









久违的更新
更新不少内容
bdbd
这么多更新
虽然还没用过 感觉可以试试了

这个不错
支持
bd
支持支持
bd
很好的邮箱系统,支持