Stalwart is an Open-source Self-hosted Mail Server
Stalwart Labs Mail Server: A Reliable Self-Hosted Email Solution
Stalwart Mail Server is an open-source, self-hosted email server solution designed to be robust, secure, and easy to manage. It aims to provide a comprehensive set of features for handling email with minimal configuration, making it a great choice for small businesses, developers, and tech enthusiasts.
Key Features
- Complete Email Solution: Includes SMTP, IMAP, and POP3 services.
- Security: Built-in support for TLS/SSL, DKIM, SPF, and DMARC.
- Web-Based Management: User-friendly interface for managing email accounts and server settings.
- Spam and Virus Protection: Integrates with SpamAssassin and ClamAV.
- Multi-Domain Support: Host multiple domains on a single server.
- Extensibility: API support for custom integrations.
Other Features
JMAP Server
- JMAP Core and Mail: Full compliance with JMAP standards.
- JMAP for Sieve Scripts: Manage Sieve scripts with JMAP.
- JMAP Extensions: Includes JMAP for WebSocket, Blob Management, and Quotas.
IMAP4, POP3, and ManageSieve Server
- IMAP4rev2 and IMAP4rev1: Supports numerous extensions.
- POP3 Server: Includes extensions, STLS, and SASL support.
- ManageSieve Server: Manage Sieve scripts efficiently.
SMTP Server
- Message Authentication: Built-in DMARC, DKIM, SPF, and ARC support.
- Transport Security: Supports DANE, MTA-STS, and SMTP TLS reporting.
- Inbound Throttling and Filtering: Granular configuration rules, sieve scripting, MTA hooks, and milter integration.
- Distributed Virtual Queues: Features delayed delivery, priority delivery, quotas, routing rules, and throttling support.
- Envelope Rewriting and Message Modification: Flexible handling of message envelopes and modifications.
Spam and Phishing Filter
- Filtering Rules: Comprehensive set on par with popular solutions.
- Spam Classifier: Automatic training capabilities.
- DNS Blocklists: Checks IP addresses, domains, and hashes.
- Collaborative Filtering: Uses Pyzor for spam filtering.
- Phishing Protection: Against homographic URL attacks, sender spoofing, and more.
- Trusted Reply Tracking: Recognizes and prioritizes genuine replies.
- Sender Reputation Monitoring: By IP address, ASN, domain, and email address.
- Greylisting: Temporarily defers unknown senders.
- Spam Traps: Analyzes spam through decoy email addresses.
Flexibility and Scalability
- Pluggable Storage Backends: Supports RocksDB, FoundationDB, PostgreSQL, MySQL, SQLite, S3-Compatible, Redis, and ElasticSearch.
- Clustering Support: Node autodiscovery and partition-tolerant failure detection.
- Authentication Backends: Built-in, LDAP, or SQL support.
- Full-Text Search: Available in 17 languages.
- Sieve Scripting: Supports all registered extensions.
- Email Aliases and Mailing Lists: Includes subaddressing and catch-all addresses support.
- Automatic Account Configuration: Uses autoconfig and autodiscover.
- OpenTelemetry Integration: Enables monitoring, tracing, and performance analysis.
- Webhooks: For event-driven automation.
- Disk Quotas: Manage storage efficiently.
Web-Based Administration
- Comprehensive Management: Account, domain, group, and mailing list management.
- SMTP Queue Management: Handles messages and outbound DMARC and TLS reports.
- Report Visualization: Interface for DMARC, TLS-RPT, and Failure (ARF) reports.
- Configuration Management: Configure every aspect of the mail server.
- Log Viewer: Search and filter capabilities.
- Self-Service Portal: For password reset and encryption-at-rest key management.
Security and Robustness
- Encryption at Rest: S/MIME or OpenPGP.
- TLS Certificate Provisioning: Automatic with ACME using various challenges.
- OAuth 2.0: Authorization code and device authorization flows.
- Two-Factor Authentication: Time-based One-Time Passwords (2FA-TOTP).
- App Passwords: For application-specific access.
- Automated Blocking: Of hosts causing multiple authentication errors (fail2ban).
- Access Control Lists (ACLs): Manage permissions and access.
- Rate Limiting: Prevents abuse and overload.
- Security Audited: Read the security report.
- Memory Safe: Thanks to Rust programming language.
Pros and Cons
Pros:
- Open-Source: Free to use and modify.
- Comprehensive Features: Includes everything needed for a full email server.
- Security: Strong focus on security features.
- Ease of Use: Simple installation and management through a web interface.
Cons:
- Resource Intensive: Requires a dedicated server or VPS.
- Configuration Complexity: May require some technical knowledge to set up.
- Maintenance: Requires regular updates and maintenance.
Installation Guide
To install Stalwart Labs Mail Server, follow these steps:
System Requirements:
- A server running Linux (Ubuntu/Debian recommended).
- Minimum 2 GB RAM.
- A domain name and DNS records configured.
Configure Environment:
Edit the .env
file with your domain and other settings.
Access the Web Interface:
Open your browser and navigate to http://your-domain.com:8080
.
Set Up Email Accounts:
Use the web interface to create and manage email accounts.
Start the Mail Server:
docker-compose up -d
Copy the example environment file:
cp .env.example .env
Clone the Repository:
git clone https://github.com/stalwartlabs/mail-server.git
cd mail-server
Install Dependencies:
sudo apt install docker docker-compose -y
Update System:
sudo apt update && sudo apt upgrade -y
License
Not listed
Conclusion
Stalwart Mail Server offers a robust and secure email server solution suitable for various use cases. Its comprehensive feature set and open-source nature make it an attractive option for those looking to host their own email server.
With a bit of setup, you can have a fully functional mail server up and running, tailored to your specific needs.