Stalwart SMTP Server

Stalwart SMTP is a modern SMTP server developed in Rust with a focus on security, speed, and extensive configurability. It features built-in DMARC, DKIM, SPF and ARC support for message authentication, strong transport security through DANE, MTA-STS and SMTP TLS reporting, and offers great flexibility and customization thanks to its dynamic configuration rules and native support for Sieve scripts.

Key features:

  • Sender and Message Authentication:
    • Domain-based Message Authentication, Reporting, and Conformance (DMARC) verification and failure/aggregate reporting.
    • DomainKeys Identified Mail (DKIM) verification, signing and failure reporting.
    • Sender Policy Framework (SPF) policy evaluation and failure reporting.
    • Authenticated Received Chain (ARC) verification and sealing.
    • Reverse IP (iprev) validation.
  • Strong Transport Security:
    • DNS-Based Authentication of Named Entities (DANE) Transport Layer Security.
    • SMTP MTA Strict Transport Security (MTA-STS).
    • SMTP TLS Reporting (TLSRPT) delivery and analysis.
  • Inbound Filtering and Throttling:
    • Sieve scripting language with support for all registered extensions.
    • Filtering, modification and removal of MIME parts or headers.
    • DNS block lists (DNSBL) & Greylisting.
    • Inbound concurrency & rate limiting.
    • Integration with external content filtering systems such as SpamAssassin and ClamAV.
  • Flexible Queues:
    • Unlimited virtual queues with custom routing rules.
    • Delayed delivery with FUTURERELEASE and DELIVERBY extensions support.
    • Priority delivery with MT-PRIORITY extension support.
    • Outbound throttling & Disk quotas.
  • Logging and Reporting:
    • Detailed logging of SMTP transactions and events, including delivery attempts, errors, and policy violations.
    • Integration with OpenTelemetry to enable monitoring, tracing, and performance analysis of SMTP server operations.
    • Automatic analysis of incoming DMARC/TLS aggregate reports, DMARC/DKIM/SPF authentication failure reports as well as abuse reports.
  • And more:
    • SASL authentication.
    • PostgreSQL, MySQL, MSSQL and SQLite support.
    • Granular configuration rules.
    • REST API for management.
    • Memory safe (thanks to Rust).

Get Started

Install Stalwart SMTP on your server by following the instructions for your platform:

You may also compile Stalwart SMTP from the source.

Support

If you are having problems running Stalwart SMTP, you found a bug or just have a question, do not hesitate to reach us on Github Discussions, Reddit or Discord. Additionally you may become a sponsor to obtain priority support from Stalwart Labs Ltd.

Documentation

Table of Contents