Modoboa 2.11.1 介绍与选型指南
基于官方渠道联网溯源的 Modoboa 2.11.1 认知篇:Django 面板+Postfix/Dovecot 编排架构、组件清单、功能特性、与 Mailcow/Stalwart/docker-mailserver/Postal/Maddy/iRedMail 的量化选型对比。
Modoboa 2.11.1 介绍与选型指南
目标:面向"自建企业邮箱托管平台"的选型读者,讲清 Modoboa 是什么、由哪些组件协同工作、能做什么、不能做什么,并与站内已有同类邮件组件做量化对比。本篇为纯联网溯源的认知篇:所有版本、星数、许可证与能力描述均来自官方渠道(GitHub Releases、PyPI、官方文档站 modoboa.readthedocs.io),统一标注来源与查询日期 2026-10-21;本篇不含本地实测环节,部署实测内容见同专栏部署篇。
一、环境信息
本篇信息取证来源与查询日期如下,读者可按同一渠道复核:
- 取证日期:2026-10-21
- 官方网站与文档站:modoboa.readthedocs.io(官方文档,VitePress 构建)
- 官方代码仓库:github.com/modoboa/modoboa
- 版本来源:GitHub Releases(releases.atom 订阅源)与 PyPI(pypi.org/pypi/modoboa/json)
- 最新稳定版:2.11.1,发布于 2026-10-09(GitHub Releases 与 PyPI 双源一致,查询日期 2026-10-21)
- 社区热度:GitHub Stars 3.5k(shields.io 实时徽章,查询日期 2026-10-21)
- 许可证:ISC(shields.io license 徽章读取仓库 LICENSE,查询日期 2026-10-21)
- 技术栈:Python / Django(官方文档原文 "a Django project"),前端为 Vue.js(仓库 frontend/src 目录与 Vue i18n 语言文件可证)
- 作者与维护方:Antoine Nguyen(GitHub ID:tonioo),文档页脚版权 "Copyright © 2010-2026 Antoine Nguyen",项目自 2010 年持续维护至今
- 商业形态:除开源版外存在商业订阅版 Modoboa Pro(官方文档导航含 "Modoboa Pro" 入口,管理界面中亦会提示 Pro 功能)
二、软件概述
2.1 一句话定位
Modoboa 是一个用 Python/Django 编写的开源邮件托管与管理局:它本身不直接收发邮件,而是提供一套 Web 管理面板(域名、邮箱账号、别名、路由、DKIM、限额、隔离区、统计图表),把 Postfix(SMTP 收发)、Dovecot(IMAP/POP3 存储)、Rspamd 或 Amavis(反垃圾)、OpenDKIM(签名)等业界成熟的邮件组件"编排"成一个统一管理的整体。官方文档对其的定义是 "Mail hosting and management platform — simplified Web User Interface designed to work with Postfix and Dovecot"(邮件托管与管理平台,为配合 Postfix 与 Dovecot 工作而设计的简化版 Web 界面)。
💡 技术拓展:自建邮件服务器方案在"管理面板与邮件核心的关系"上有两种流派。一种是 all-in-one 自研核心,即收发信引擎由项目自己实现(如 Stalwart 用 Rust 自研 SMTP/IMAP/JMAP、Maddy 用 Go 自研),管理面板与引擎一体;另一种是 面板 + 成熟组件编排,即引擎复用 Postfix/Dovecot 等久经考验的组件,面板只做管理与编排(如 Modoboa、Mailcow、iRedMail)。前者代码内聚、单进程部署简单;后者各组件可独立升级替换、社区知识库深厚。Modoboa 属于后者,本文后续对比均以此为基准。
2.2 项目身份速览
| 维度 | 内容 | 来源与日期 |
|---|---|---|
| 最新稳定版 | 2.11.1(2026-10-09 发布) | GitHub Releases / PyPI,2026-10-21 |
| 开源许可证 | ISC(宽松许可,可商用、可闭源二次分发) | shields.io 读仓库 LICENSE,2026-10-21 |
| 开发语言 | Python(Django)+ Vue.js 前端 | 官方文档与仓库结构,2026-10-21 |
| GitHub Stars | 3.5k | shields.io,2026-10-21 |
| 运行平台 | Debian 12+、Ubuntu 20.04+(官方安装器实测覆盖) | modoboa-installer README,2026-10-21 |
| 部署形态 | 物理机/虚拟机原生部署(pip + venv + systemd)为主,无官方容器发行 | 官方文档与仓库核查,2026-10-21 |
| 商业支持 | Modoboa Pro 订阅(官方文档站导航提供入口) | modoboa.readthedocs.io,2026-10-21 |
关键差异解读:Modoboa 的 ISC 许可证在邮件平台同类项目中最为宽松(Mailcow 为 GPL-3.0、Stalwart 为 AGPL-3.0、Maddy 为 GPL-3.0),对需要将平台嵌入商业产品分发的团队更友好;同时它没有官方容器发行版,这一点与 Mailcow(仅提供 Docker Compose 形态)正好相反,选型时先确认自己的基础设施偏好。
2.3 版本节奏
以 GitHub Releases 订阅源(releases.atom)2026-10-21 拉取的最近发布记录为准,Modoboa 保持着高频小版本节奏:最近的 2.11.1 发布于 2026-10-09,更新内容包括日语翻译改进、管理界面中 Modoboa Pro 提示等小改动,属于 2.11.x 维护线;此前版本同样以数周为周期滚动发布。对运维方的含义是:上游活跃、补丁来得快,但升级也应保持小步快跑(官方文档提供独立的 Upgrade Instance 章节)。
三、核心架构
3.1 组件编排视图
Modoboa 的一台完整邮件服务器由"管理平面 + 数据平面"两层构成。管理平面是 Django 应用(Modoboa 本体),数据平面由官方安装器(modoboa-installer)编排的下列组件构成,组件清单取自官方 modoboa-installer README(查询日期 2026-10-21):
| 组件 | 角色 | 与 Modoboa 的关系 |
|---|---|---|
| PostgreSQL 或 MySQL | 主数据库 | 存放域名、账号、别名、限额、日志统计等管理数据(Django ORM) |
| Postfix | SMTP 收发(25/465/587) | 通过数据库查询表(虚拟域/邮箱映射)实现收信路由,并把策略请求交给 Modoboa policy daemon |
| Dovecot | IMAP/POP3 存储(143/993/110/995)、LMTP 投递、Sieve 过滤 | 邮箱存储引擎,账号验证走数据库,RQ worker 代管 Sieve 脚本 |
| Amavis(SpamAssassin + ClamAV)或 Rspamd | 反垃圾/防病毒 | 二选一,扫描结果回写数据库供隔离区展示 |
| OpenDKIM | DKIM 签名 | 密钥由 Modoboa 界面生成,RQ worker 落盘 |
| Radicale | CalDAV/CardDAV | 日历与通讯录(modoboa-radicale 扩展) |
| Nginx + uWSGI | Web 入口与 WSGI 应用服务 | 承载管理面板与 API |
| Redis | 队列与计数 | RQ 异步任务与 policy daemon 发送限额计数 |
| RQ workers | 异步任务 | 日志解析、DKIM 密钥落盘、Sieve 推送、消息清理等 |
关键差异解读:从这张表能看出 Modoboa 的本质——它把"邮件服务器"拆成一组各自独立的守护进程,用数据库做唯一事实源串起来。这带来了两个选型推论:其一,故障域是分散的(Postfix 挂了面板还在),排障要跨多个服务看日志;其二,资源占用是叠加的(每个组件都有独立内存足迹),官方要求安装期至少 2GB 内存(依赖编译需要,modoboa-installer README,查询日期 2026-10-21)。
3.2 管理平面的常驻进程
以手动安装(pip + venv)为例,除 uWSGI 承载的 Web 应用外,Modoboa 还有三类常驻后台进程(官方文档 Manual Installation 章节,查询日期 2026-10-21):
- policy daemon(
manage.py policy_daemon):Postfix 的 SMTPD 策略服务,默认监听 127.0.0.1:9999,实现按域名/账号的每日发信限额(需要 Redis)。 - RQ workers(
manage.py rqworker <队列>):按队列分工——privileged(需要 root 的任务)、modoboa(常规任务)、dkim(DKIM 密钥管理)、dovecot(Sieve 脚本推送,以 vmail 用户运行)。 - cron 调度器(
manage.py rqcron <instance>/cron_config.py)+ 系统 cron(manage.py clearsessions清理会话表):把周期任务纳入 RQ 队列。
这三类进程在生产上都需要 systemd 或 supervisor 托管,官方文档逐个给出了 supervisor 配置样例;本专栏部署篇给出了对应的 systemd 单元写法。
3.3 扩展机制
Modoboa 的功能扩展通过"核心 + 扩展包"实现:核心(modoboa 包)自带域名/账号/别名/中继域/限额管理;扩展以独立 pip 包发布(如 modoboa-webmail 网页邮局、modoboa-amavis 隔离区管理、modoboa-radicale 日历、modoboa-sieve 过滤规则管理、modoboa-contacts 等),部署实例时用 modoboa-admin.py deploy --extensions 一并安装,或事后追加。扩展在 settings.py 的 MODOBOA_APPS 列表注册(官方文档 Manual Installation 说明,查询日期 2026-10-21)。
四、功能特性
以下能力清单整理自官方文档站首页、REST API 章节与安装器组件清单(查询日期 2026-10-21):
- 域名与账号托管:多域名管理、邮箱账号、别名、域别名、转发、中继域,全部入库并可批量导入导出。
- 邮件安全三件套:SPF/DKIM/DMARC 辅助——DKIM 密钥在界面生成并经 worker 落盘给 OpenDKIM;反垃圾/防病毒经 Amavis(SpamAssassin + ClamAV)或 Rspamd 集成,隔离区在面板中可见可放行。
- 发送限额(policy daemon):按域名/账号设置每日发信上限,Postfix 在会话期实时查询,计数存 Redis。
- REST API:每个实例自带 API 与在线文档(新端点
/api/schema-v2/提供 OpenAPI 文档与 Swagger UI,旧端点/api/v1/),Token 认证,便于与外部系统(自助开通、工单、计费)集成——这是官方文档站首页明确列出的三大卖点之一。 - Webmail 与协作:官方 webmail 扩展提供网页收发;Radicale 扩展提供 CalDAV/CardDAV 日历通讯录。
- 可观测性:解析 Postfix 日志入库,面板出流量图表(基于 rrdtool),消息日志可审计。
- 多语言与权限:界面多语言(含中文翻译条目),管理员可按域名划分管理权限,支持按账号/域名的资源限额(管理员配额模型)。
- 商业版增量(Modoboa Pro):官方文档提供 Pro 入口,管理界面会提示 Pro 功能(如更丰富的统计/审计能力),按订阅授权。
五、快速开始(最小可用示例)
以下为官方推荐的一键安装路径,命令摘自 modoboa-installer 官方 README(查询日期 2026-10-21,非本篇实测;逐命令实测与真实回显见同专栏《Ubuntu 22.04 安装 Modoboa 指南》):
# 前置:一台全新 Debian 12+ / Ubuntu 20.04+ 服务器,2GB 以上内存,
# 已设置 FQDN(如 mail.example.com),/tmp 未挂 noexec
git clone https://github.com/modoboa/modoboa-installer
cd modoboa-installer
sudo python3 run.py <your domain> # 例:sudo python3 run.py example.com
安装器首次运行会生成 installer.cfg 配置文件(数据库口令、证书、反垃圾引擎选择等),确认后继续执行即可完成"PostgreSQL + Nginx/uWSGI + Postfix + Dovecot + Rspamd(或 Amavis/ClamAV)+ OpenDKIM + Radicale + Modoboa 面板"的全栈部署,完成后浏览器访问 https://<服务器地址> 进入管理面板。
若只需要 Modoboa 管理面板本身(不连带整台邮件服务器),可用轻量的手动路径(官方 Manual Installation 章节):
# 在 venv 中安装 Modoboa 核心(PostgreSQL 需另装 psycopg 绑定)
pip install modoboa
pip install "psycopg[binary]>=3.1"
# 部署一个实例(--dburl 指向已建好的数据库)
modoboa-admin.py deploy instance --collectstatic --domain mail.example.com \
--dburl default:postgres://user:pass@localhost/modoboa
💡 说明:两条路径的取舍——一键安装器适合"整台邮件服务器从零起步"的典型场景;手动路径适合"只想要管理面板/与既有 Postfix、Dovecot 集成"或需要精细控制每个组件的场景。本专栏两篇部署文档覆盖的是手动路径的完整实测。
六、适用场景与限制
6.1 适用场景
- 中小团队/托管商自建企业邮箱:多域名、多租户(按域名分权管理)、限额与统计齐全,是最贴合 Modoboa 设计目标的主场景。
- 需要与业务系统集成的邮件平台:REST API + Token 认证 + OpenAPI 文档,适合工单/计费/自助开通系统对接。
- 想要"Postfix/Dovecot 经典栈 + 现代面板"的运维团队:复用已有 Postfix/Dovecot 运维经验,面板只接管管理动作。
6.2 限制与注意(均来自官方渠道,查询日期 2026-10-21)
- 自身不是邮件服务器:没有 Postfix/Dovecot 就收不了信;若想要单二进制 all-in-one,应看 Stalwart 或 Maddy(见第七节对比)。
- 无官方容器发行:官方未提供 Docker 镜像或 Compose 模板(modoboa 组织下无 docker 仓库,2026-10-21 核查),容器化需自行封装;Mailcow 则是反过来"只有容器形态"。
- 安装器实测平台范围:Debian 12+ 与 Ubuntu 20.04+(modoboa-installer README),其他发行版未获官方背书。
- 安装期资源门槛:依赖编译要求至少 2GB 内存;
/tmp分区不能挂noexec;口令含特殊字符可能导致安装失败(README 明示的三条警告)。 - 升级模式标注为实验性:安装器提供 upgrade 模式但 README 标注 "experimental",生产升级应先备份并阅读官方 Upgrade Instance 章节。
七、同类选型对比
对比口径说明:各组件"专栏记录版本"取自 quzuo.net 站内对应专栏文档(撰写日期见各专栏);Stars 与许可证于 2026-10-21 经 shields.io 徽章逐一实查;Stalwart 仓库未在 LICENSE 徽章中声明许可证("not specified"),其许可信息以官方仓库说明为准。站内已发布的同类专栏以可点击链接给出,便于交叉阅读。
| 组件(站内专栏) | 专栏记录版本 | 语言栈 | 许可证(2026-10-21) | GitHub Stars(2026-10-21) | 形态与定位差异 |
|---|---|---|---|---|---|
| Modoboa(本篇) | 2.11.1 | Python/Django | ISC | 3.5k | 面板+Postfix/Dovecot 编排;原生部署;多租户面板最强;REST API |
| Mailcow | 2026-09a | PHP + Go | GPL-3.0 | 14k | 仅 Docker Compose 形态;开箱全家桶;SOGo webmail 体验好 |
| Stalwart | v0.16.26 | Rust | 官方仓库声明(徽章未标) | 15k | all-in-one 自研 SMTP/IMAP/JMAP;单二进制;现代 API 优先 |
| docker-mailserver | 16.0.1 | Shell + Postfix/Dovecot | MIT | 20k | 无面板,容器化 Postfix/Dovecot 配置集;轻运维取向 |
| Postal | 3.3.7 | Ruby | MIT | 17k | 事务性/批量发信平台(ESP 形态),非通用收件邮箱托管 |
| Maddy | 0.9.6 | Go | GPL-3.0 | 6.1k | 轻量 all-in-one(单二进制 SMTP+IMAP),小规模/边缘场景 |
| iRedMail | 1.8.8 | Shell 安装器 | 官方仓库声明 | —(安装器项目) | 同为"安装器编排 Postfix/Dovecot"流派;开源版面板功能较基础 |
如何选(关键差异解读):
- 要多域名多租户管理面板 + 可对接的 API,且服务器是原生 Linux 主机 → Modoboa 是本组中最贴合的;注意接受"无官方容器发行"的现实。
- 要容器一键全家桶、不想碰各组件配置 → Mailcow(形态唯一但成熟度高,见《Mailcow Docker Compose 部署指南》)。
- 要单二进制、极简运维、现代协议(JMAP) → Stalwart;小规模/边缘节点要省资源 → Maddy。
- 只需要给现有 Postfix/Dovecot 加容器化封装、可以接受无面板 → docker-mailserver。
- 主要发验证码/通知类事务邮件而非收件托管 → Postal。
- Modoboa 与 iRedMail 同流派,选型焦点在面板能力:Modoboa 的面板功能、扩展体系与 REST API 明显更完整,iRedMail 则以安装器"装完即用"的省心见长(见《iRedMail 1.8.8 介绍与选型指南》)。
八、参考链接
- 官方文档站(含 Manual Installation / REST API / Upgrade):https://modoboa.readthedocs.io/
- 官方代码仓库:https://github.com/modoboa/modoboa
- 官方一键安装器:https://github.com/modoboa/modoboa-installer
- PyPI 版本页:https://pypi.org/project/modoboa/
- 官方 Demo(含在线 API 文档示例):https://demo.modoboa.org/
- 站内同专栏部署与进阶篇:《Ubuntu 22.04 安装 Modoboa 指南》、《Modoboa 2.11.1 配置参数详解》、《Modoboa 2.11.1 管理 API 使用详解》