现已可用 · GPLv3

Nextcloud 版 Missivus

Nextcloud 发出的一切——密码重置、共享通知、动态摘要、管理员告警——都以一个免费共享邮箱的名义通过 Microsoft Graph 投递。无需 SMTP,无需用户登录,也不必另外运行中继守护进程。

对于 Microsoft 365 租户,SMTP AUTH 基本身份验证自 2026 年 12 月底起默认禁用,此后新建租户默认不可用;最终移除时间将公布于 2027 年下半年。而 Nextcloud 的外发邮件设置只认 SMTP 或 sendmail。 最新时间表(2026 年 1 月)

它做什么

Nextcloud 产生的每一封邮件

Missivus 用一个直接对话 Graph API 的装饰器替换掉 Nextcloud 的系统邮件组件——核心邮件以及每一个使用 Nextcloud 邮件组件的应用都被覆盖,不必逐个应用去切换。

一个邮箱,由 Exchange 强制限定

整体设计围绕一条限定到单个免费共享邮箱的应用程序访问策略。即便凭据完全泄露,也只能以恰好一个免回复地址发信——安装指南把这一步当作头等大事,并给出验证它已生效的命令。

大附件也能处理

小于 Graph 那个约 3 MB 内联上限的文件走内联;更大的文件会自动通过 Graph 的上传会话上传。这里没有任何会被设置错的开关。

密码或证书

客户端密码是最快的入门方式,也是默认选项;证书认证作为可选的加固手段同样受支持。令牌缓存在 Nextcloud 的分布式缓存中,并留有安全余量。

机密可以不进数据库

每个值都可以来自 config.php 里的 missivus 数组,它优先于设置界面——由文件管理的机密永远不会碰到数据库,而已存储的机密是只写的敏感值。

出错就报,绝不静默

安装后默认关闭。每一次 Graph 失败都会以 error 级别记录并显示在设置页面上,绝不吞掉。测试邮件按钮、occ missivus:test 和 occ missivus:status 可以端到端验证整条链路。回退到 Nextcloud 自带邮件组件的选项默认关闭。

委派发信方案与 Missivus 对比

用应用程序权限,而不是委派登录

常见的 Microsoft 365 发信路线都让某个人的账户成为发件人——由真人登录,并且一直保持登录。对服务器来说,这个形状是错的。

Missivus——应用程序权限委派发信方案
谁在发信应用程序本身,以一个免费共享邮箱的名义某个人的账户,靠点一下“登录”连接上
配置方式管理员创建一次应用注册由真人登录并一直保持登录
有人离职时什么都不会发生邮件中断
凭据泄露时的影响范围一个邮箱,由 Exchange 强制限定那个人能做的一切
额外的服务没有有时中间还得架一个 SMTP 中继

环境要求

  • Nextcloud 33 或 34(自托管),PHP 8.2 及以上——没有 Composer 依赖,没有 SDK,没有第三方运行时代码
  • 一个 Microsoft 365 租户,以及一位能创建应用注册、授予管理员同意并运行一条 Exchange Online PowerShell 命令的管理员
  • 一个用于发信的共享邮箱——它不需要许可证
  • 一次性的 Microsoft 端配置大约需要三十分钟

获取应用

从 GitHub 下载

采用 App Store 目录结构的发行版 tarball、源码、更新日志和问题追踪。

Nextcloud App Store

Nextcloud App Store 上的条目正在准备中——在它上线之前,请用 GitHub 发行版 tarball 安装。

两种上线方式

自己动手安装

安装指南是写给从没打开过 Microsoft Entra 的人的——每一次点击都写得清清楚楚。Microsoft 那一侧请预留半小时。

打开安装指南

请 Solvetus 安装

一次预约——Entra 应用、访问策略、邮箱、应用安装、测试邮件、交接文档。软件依然免费;您付的是工时,不是工具。

安装与支持