安全、可扩展的邮件与协作服务器,支持全面的协议 🛡️
(IMAP, JMAP, SMTP, CalDAV, CardDAV, WebDAV)
功能
Stalwart 是一个开源的邮件与协作服务器,支持 JMAP、IMAP4、POP3、SMTP、CalDAV、CardDAV 和 WebDAV,并具备广泛的现代功能。它使用 Rust 编写,旨在安全、快速、健壮且可扩展。
主要功能:
-
Email 服务器,具备完整的协议支持:
- JMAP:
- IMAP:
- IMAP4rev2 和 IMAP4rev1 服务器。
- ManageSieve 服务器。
- 支持众多 extensions。
- POP3:
- POP3 服务器。
- 支持 STLS 和 SASL 以及其他 extensions。
- SMTP:
-
Collaboration 服务器:
- 日历和日程安排:
- CalDAV 和 CalDAV Scheduling 支持。
- JMAP for Calendars 支持。
- 联系人管理:
- CardDAV 支持。
- JMAP for Contacts 支持。
- 文件存储:
- WebDAV 支持。
- JMAP for File Storage 支持。
- 具有细粒度访问控制的共享:
- WebDAV ACL 支持。
- JMAP Sharing 支持。
- 日历和日程安排:
-
Spam 和 Phishing 内置过滤器:
-
与主流解决方案相媲美的全面规则过滤集。
- 由 LLM 驱动的垃圾邮件过滤和消息分析。
- 具有协同过滤、自动训练功能和地址簿集成的统计垃圾邮件分类器。
- 对 IP 地址、域名和哈希值进行 DNS 黑名单(DNSBLs)检查。
- 基于协同摘要的垃圾邮件过滤,使用 Pyzor。
- 针对同形异义 URL 攻击、发件人欺骗及其他技术的钓鱼防护。
- 可信回复跟踪,以识别并优先处理真实的电子邮件回复。
- 按 IP 地址、ASN、域名和电子邮件地址进行发件人信誉监控。
- 灰名单机制,用于暂时延迟未知发件人。
- 垃圾邮件陷阱,用于设置诱饵电子邮件地址以捕获和分析垃圾邮件。
-
灵活:
- 可插拔的存储后端,支持 RocksDB、FoundationDB、PostgreSQL、mySQL、SQLite、S3-Compatible、Azure 和 Redis。
- 使用内置搜索引擎或通过 Meilisearch、ElasticSearch、OpenSearch、PostgreSQL 或 mySQL 后端,提供 17 种语言的全局搜索功能。
- 支持所有已注册扩展的 Sieve 脚本语言。
- 支持电子邮件别名、邮件列表、子寻址和通配地址。
- 自动化 DNS 管理。
- 通过 autoconfig 和 autodiscover 实现自动账户配置和发现。
- 支持多租户,具有域名和租户隔离功能。
-
按用户和租户划分的磁盘配额。
-
安全且健壮:
-
可扩展且容错:
- 设计用于无缝处理增长,从小型部署到数千节点的大规模部署。
- 以容错和高可用性为核心设计,在硬件或软件故障时以最小的运维影响恢复。
- 点对点集群协调,或使用 Kafka、Redpanda、NATS 或 Redis。
- 支持 Kubernetes、Apache Mesos 和 Docker Swarm,用于自动扩展和容器编排。
- 读副本、分片 Blob 存储和内存数据存储,以实现高性能和低延迟。
-
认证与授权:
-
可观测性:
-
使用 OpenTelemetry、journald、日志文件和控制台支持的日志记录与追踪。
- 使用 OpenTelemetry 和 Prometheus 集成的指标。
- 用于事件驱动自动化的 Webhooks。
- 带有电子邮件和 webhook 通知的警报。
- 实时追踪和指标。
-
基于 Web 的管理:
- 带有实时统计和监控的仪表板。
- 账户、域名、组和邮件列表管理。
- 用于消息和出站 DMARC 及 TLS 报告的 SMTP 队列管理。
- 用于接收的 DMARC、TLS-RPT 和故障 (ARF) 报告的报告可视化界面。
- 邮件服务器所有方面的配置。
- 具有搜索和过滤功能的日志查看器。
- 用于密码重置和静态加密密钥管理的自助服务门户。
截图
演示
想要深入了解? 需要向你的老板解释为什么 Stalwart 是最佳选择?无论你是在评估选项、向团队提出建议,还是仅仅好奇其内部工作原理,这些幻灯片将带你了解 Stalwart 的关键特性、架构和优势。浏览 幻灯片 以了解其独特之处。
快速开始
按照你所在平台的说明,在你的服务器上安装 Stalwart:
所有文档均可在 stalw.art/docs 获取。
支持
如果你在运行 Stalwart 时遇到问题、发现 bug 或有任何疑问,请访问位于 support.stalw.art 的 Stalwart 支持门户。 此外,你可以购买 企业许可证 以从 Stalwart Labs LLC 获得优先支持,包括响应时间承诺以及门户上的私有优先支持区域。
贡献
我们欢迎贡献,但为了保持项目的可维护性,在提交拉取请求之前,有几点需要了解。由于大量低质量的 AI 生成提交,拉取请求仅限于经过担保的贡献者列表;如需加入,请在 support.stalw.art 发帖,描述您希望提交的更改,并附上拟议更改的链接。目前仅接受错误修复和翻译,不接受新功能,除非新功能仅涉及几行代码。 完整的指南,请阅读 CONTRIBUTING.md。
路线图
Stalwart 在其发展历程中已到达一个令人兴奋的节点,它现在是功能完备的。我们旨在支持的所有核心功能以及开放标准的电子邮件和协作协议均已就位。换句话说,Stalwart 已经具备了一个现代、符合标准的邮件和协作平台所应具备的一切功能。
下一个主要里程碑专注于完善:最终确定数据库架构并专注于性能优化,以确保一切运行尽可能高效和可靠。完成后,我们将准备好发布版本 1.0。
当然,开发并未止步于此。社区贡献了数百个关于改进和新功能的好点子,从细微的可用性调整到全新的集成应有尽有。你可以在我们的 GitHub issues 上查看完整的提案列表。如果您希望某些内容被优先处理,只需点个赞,我们将根据社区的投票来规划增强功能的实现。
赞助
您的支持对于帮助我们继续改进项目、添加新功能以及保持最高质量至关重要。通过 成为赞助商,您将为 Stalwart 的开发和未来提供资金。作为感谢,每月贡献 5 美元或以上的赞助商将自动获得 Enterprise edition 许可证。此外,每月贡献 30 美元或以上的赞助商还可以获得来自 Stalwart Labs 的 Premium Support。
资金
本项目的部分开发资金来自:
- NGI0 Entrust Fund,该基金由 NLnet 设立,并获得欧洲委员会 Next Generation Internet 计划的财政支持,在通信网络、内容和技术总司(DG Communications Networks, Content and Technology)的监管下,依据编号为 101069594 的资助协议执行。
- NGI Zero Core,该基金由 NLnet 设立,并获得欧洲委员会计划的财政支持,在通信网络、内容和技术总司(DG Communications Networks, Content and Technology)的监管下,依据编号为 101092990 的资助协议执行。
如果您觉得该项目有用,您可以通过成为赞助者来提供帮助。谢谢!
许可证
本项目采用双重许可,分别为 GNU Affero General Public License v3.0(AGPL-3.0;由自由软件基金会发布)和 Stalwart Enterprise License v2 (SELv2):
- GNU Affero General Public License v3.0 是一种自由软件许可证,确保您使用、修改和分发软件的权利,条件是任何修改后的软件版本也必须以相同的许可证进行分发。
- Stalwart Enterprise License v2 (SELv2) 是一种专为商业使用设计的专有许可证。它为不愿遵守 AGPL-3.0 许可证要求的商业企业提供额外功能和更大的灵活性。
本项目中的每个文件顶部都包含一个许可证声明,指明适用的许可证。该许可证声明遵循 REUSE 指南,以确保清晰和一致。每个许可证的完整文本可在 LICENSES 目录中找到。
版权
Copyright (C) 2020, Stalwart Labs LLC