Skip to content

更新日志 ​

2026-09-06 · 安全与一致性修复 ​

账号、注册与身份 ​

  • 强制启用邮箱认证的注册先验证找回邮箱,增加同一邮箱验证码频率和来源 IP 每小时/每日注册限制。
  • 本地注册页从禁止缓存的公开策略实时读取“邮箱验证”状态:开启时将邮箱标为必填并在提交前校验,关闭时明确显示为可选;字段缺失时安全默认为开启。OAuth 首次建号流程不受这个开关影响。
  • 将注册、密码重置、找回邮箱绑定和安全提醒改为独立“系统 SMTP”;发送失败不再回退到服务器直接发信,并支持候选配置测试成功后保存。
  • Cloudflare Turnstile 覆盖登录、注册、验证码、找回密码、OAuth 登录和 NodeLoc 绑定发起;密钥不完整或验证服务不可用时故障关闭。
  • 修复后台保存配置后环境变量无法紧急关闭 Turnstile 的问题;只有显式 false/0/no/off 会覆盖数据库启用状态,空值或拼写错误不会意外绕过验证。
  • 密码修改、密码找回、管理员重置密码、重置 2FA 和强制退出使用数据库持久化令牌边界,Redis 丢失后旧会话也不会恢复。
  • 首次引导按真实邮箱状态判定,已有邮箱用户不会重复创建;管理员账号直接进入后台。
  • 普通账号、NodeLoc 注册来源、NodeLoc 真实 TL0–TL4 和本站配额 L0–L4 分开显示。普通账号绑定 NodeLoc 后仍为普通账号,并同步真实等级。
  • NodeLoc 身份登录与绑定使用同一数据库锁和规范化唯一键,禁止并发创建重复账号、跨用户抢绑或用另一个 NodeLoc 身份覆盖。
  • NodeLoc 登录同步与账号更新在同一事务提交,较早开始的后台同步不会覆盖更新的授权登录结果;OAuth 登录返回的找回邮箱验证状态按数据库真实值展示。
  • 最低 NodeLoc 等级只约束新账号和首次绑定;既有用户不会因策略提高而被禁止登录。

邮件、共享与配额 ​

  • 邮箱共享统一为只读,权限覆盖列表、搜索、详情、会话、原文、附件和缩略图,并严格执行文件夹/标签范围与阅读记录。
  • 个人与组织邮箱的创建、删除、转让、存储和归属校验改为事务内二次检查,降低并发越权或超配额风险。
  • 个人每日发信按 To、Cc、Bcc 收件人数原子预留;企业邮箱改为全组织共享企业套餐每日额度,不占受派成员个人额度或能量。通道额度和存储空间也在外部投递前预留并按结果结算。
  • 入站 SMTP 增加短窗口原始内容指纹,减少上游重试造成的重复副本。
  • rspamd 判定为高风险的来信改为完整保存到邮箱隔离区。邮箱所有者可以安全预览、放行到收件箱或永久删除;隔离内容计入存储配额并按管理员设置的保留天数自动清理。
  • 邮箱级外部转发正式接入收信流程;规则转发仍只允许本人已验证的找回邮箱。自动转发会消耗正常发信配额与能量、记录投递结果,并通过自动邮件标记与自转发校验阻止循环。
  • 自动回复统一执行个人/组织每日额度和能量预留与结算,并用数据库级 24 小时发送声明在多实例间去重;发送失败可重试,远端已接受后的进程中断会保守避免重复回复。
  • 个人清理和“全部粉碎”严格限定为本人个人邮箱;全部粉碎覆盖所选邮箱的所有文件夹、附件和隔离邮件,但不能处理企业邮箱。
  • 默认签名增加数据库唯一约束;删除邮箱会级联删除邮箱签名,不再误变成全局签名。
  • 个人图床密钥、出站通道、SMTP、对象存储、支付、Telegram 和 TLS 等敏感设置统一加密保存且不回显。
  • 规则、联系人、附件、邮件搜索、组织邮箱和协议访问修正前后台字段、空值、所有权与分页边界。

管理后台与安全 ​

  • 后台用户页分别展示注册来源、NodeLoc 实际等级、系统配额等级、找回邮箱状态和有效配额,并补齐筛选、搜索、用量与高风险操作。
  • 组织品牌只在全局启用、组织与企业套餐都处于生效或宽限状态且域名已验证时公开匹配;组织暂停或套餐失效后恢复平台品牌。
  • 管理员代入会话禁止修改密码、TOTP、找回邮箱、OAuth、应用专用密码和 API Key。
  • 系统设置按分区独立保存,覆盖注册 SMTP、Turnstile、配额等级、第三方映射、图床、附件存储、Telegram、出站通道、协议限制、TLS 和 rspamd。
  • 修复升级后旧浏览器分块导致侧边栏点击无反应的问题;检测到旧分块加载失败时仅刷新目标页面一次。
  • Telegram webhook 不再把 Bot Token 放在 URL 中,改用 Secret Token 请求头;对外错误和服务日志不泄露凭据 URL。
  • OAuth Token 与用户信息请求增加超时和响应大小上限,对外不再返回提供方原始敏感错误。
  • 对外 5xx 改为通用信息,数据库和第三方详情只写受限日志;删除用户时保留必要审计历史。
  • Nginx 增加可信代理 IP 规范化、HTTPS 跳转、HSTS、内容安全策略和隐私日志建议,防止伪造来源 IP 与查询参数泄露。

数据、部署与验证 ​

  • 数据库迁移扩展到 065:在既有安全与一致性约束上增加持久化隔离邮件,以及独立的组织每日发信用量和预留账本。
  • 生产环境缺失或格式错误的 SENDCHANNEL_KEK_HEX 会拒绝启动;安装与部署脚本不再自动执行远程脚本或 git pull。
  • seed 只创建缺失的管理员,不重置已有管理员密码、权限或启用状态。
  • Docker 基础镜像固定摘要,构建使用锁定依赖;后端测试、静态检查、前端与官网检查和构建纳入发布验证。

2026-09-05 · 草丛 Mail 平台升级 ​

产品与界面 ​

  • 品牌统一为中文“草丛 Mail”、英文“CaoCong Mail”,恢复原项目闪电标志。
  • 新增独立产品官网,邮箱应用迁移到 /app/,保留旧地址兼容跳转。
  • 完成中英文界面、移动端布局和本地化检查。

账号与安全 ​

  • 新增可配置的邮箱注册、邮箱验证码、找回密码和绑定邮箱流程。
  • OAuth 提供方改为后台可配置,保留 NodeLoc 旧回调地址兼容。
  • 增加 TOTP 两步验证、强制退出、管理员重置 2FA 和登录审计。
  • 登录接口加强限流;访问令牌和刷新令牌用途分离。

邮箱与协作 ​

  • 加强邮件搜索、会话、原文查看、批量处理、附件下载和导入导出。
  • 增加邮箱排序、应用专用密码、自动回复、共享邀请与活动记录。
  • 增加邮箱转让、延迟清理、永久保留和彻底清理流程。
  • 修复 IMAP UID 完整性,并优化大邮箱 POP3 列表性能。

企业邮局 ​

  • 新增组织、所有者/管理员/成员角色、自有域名验证和企业邮箱管理。
  • 支持组织品牌、Logo、主色和自定义发信通道。
  • 增加企业套餐、订阅生命周期、域名/邮箱/存储配额。

发信与安全 ​

  • 增加域名发信审批、用户发信申请、直接 MX 与中继通道策略。
  • 完善 DKIM 签名、DNS 健康检查、收件人预检、黑名单和抑制名单。
  • 增加初版“被拦截邮件”记录页。

套餐、支付与通知 ​

  • 新增个人 Pro 与企业套餐、订单和支付回调,并提供个人订阅取消/恢复。
  • 新增钱包、人民币充值、交易流水和兑换码。
  • 新增站内通知、未读计数、系统公告、浏览器与 Telegram 通知。

开发与运维 ​

  • 新增个人 API 密钥、作用域控制、开发者页面和 OpenAPI 说明。
  • 数据库迁移扩展到 047,并使迁移失败时服务停止启动,避免半迁移运行。
  • Docker 构建改为锁定依赖安装,加入官网服务和同域 Nginx 路由。
  • 保留原有用户、邮箱和邮件数据完成原地升级。
  • 更新 mail.to9.us 的 IMAP、POP3 与 SMTP TLS 证书并配置自动续期。

2026-05 · 原版维护 ​

  • 增加全部邮箱视图、原始邮件查看和邮箱选择器。
  • 完善标签、白名单、签名、图床、自动回复和安全提示说明。
  • 修复邮箱列表可空字段及设置页切换问题。
  • 建立 GitHub Pages 文档站。

草丛 Mail · 企业与个人邮箱服务