mirror of
https://gitlab.com/simple-nixos-mailserver/nixos-mailserver.git
synced 2025-12-25 04:10:52 +01:00
Simple and complete declarative NixOS Mailserver setups
This migrates the key exchange curve group configuration into the OpenSSL
configuration format, which is the only path forward to configure these.
We now prefer a hybrid key exchange for TLS handshake and as a client
we'll send key shares for that and pure X25519, while keeping backwards-
compat for P256 and P384.
The statistics for my personal mail server over the last month show a
clear trend for X25519 key exchanges:
156 secp384r1
225 secp256r1
19541 x25519
|
||
|---|---|---|
| .hydra | ||
| docs | ||
| mail-server | ||
| migrations | ||
| scripts | ||
| tests | ||
| .editorconfig | ||
| .envrc | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .readthedocs.yaml | ||
| default.nix | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| pyproject.toml | ||
| README.md | ||
| shell.nix | ||
Release branches
For each NixOS release, we publish a branch. You then have to use the SNM branch corresponding to your NixOS version.
- For NixOS 25.05
- For NixOS 24.11
- For NixOS unstable
- Use the SNM branch
master - Documentation
- Use the SNM branch
Features
- Continous Integration Testing
- Multiple Domains
- Postfix
- SMTP on port 25
- Submission TLS on port 465
- Submission StartTLS on port 587
- LMTP with Dovecot
- DANE and MTA-STS validation
- SMTP TLS Reports (RFC 8460)
- Dovecot
- Maildir folders
- IMAP with TLS on port 993
- POP3 with TLS on port 995
- IMAP with StartTLS on port 143
- POP3 with StartTLS on port 110
- Certificates
- ACME
- Custom certificates
- Spam Filtering
- Via Rspamd
- Virus Scanning
- Via ClamAV
- DKIM Signing
- Via Rspamd
- User Management
- Declarative user management
- Declarative password management
- LDAP users
- Sieve
- Allow user defined sieve scripts
- Moving mails from/to junk trains the Bayes filter
- ManageSieve support
- User Aliases
- Regular aliases
- Catch all aliases
In the future
- Automatic client configuration
- DKIM Signing
- Allow per domain selectors
- Allow passing DKIM signing keys
- Improve the Forwarding Experience
- User management
- Allow local and LDAP user to coexist
- OpenID Connect
- Depends on relevant clients adding support, e.g. Thunderbird
Get in touch
- Matrix: #nixos-mailserver:nixos.org
- IRC:
#nixos-mailserveron Libera Chat
How to Set Up a 10/10 Mail Server Guide
Check out the Setup Guide in the project's documentation.
For a complete list of options, see in readthedocs.
Development
See the How to Develop SNM documentation page.
Contributors
See the contributor tab
Alternative Implementations
Credits
- send mail graphic by tnp_dreamingmao from TheNounProject is licensed under CC BY 3.0
- Logo made with Logomakr.com
