OpenSMTPD is a FREE implementation of the server-side SMTP protocol as defined by RFC 5321, with some additional standard extensions. It allows ordinary machines to exchange emails with other systems speaking the SMTP protocol.
Started out of dissatisfaction with other implementations, OpenSMTPD is a fairly complete SMTP implementation.
OpenSMTPD is primarily developed by Gilles Chehade and Eric Faurot, with contributions from various OpenBSD hackers and members from other communities.
OpenSMTPD is part of the OpenBSD Project. The software is freely usable and re-usable by everyone under an ISC license.
The Python standard library once included a basic SMTP server in the smtpd module, based on the old asynchronous libraries asyncore and asynchat. It was formally removed in v3.12.
This package provides such an implementation of both the SMTP and LMTP protocols using the asyncio module (which has been standard since Python v3.4). Supports the relevant RFCs natively.
Can be executed from the command line, defaulting to port 8025/tcp: python3 -m aiosmtpd -n
or aiosmtpd -n
Mox is a modern full-featured open source secure mail server for low-maintenance self-hosted email. Quick and easy to start/maintain mail server, for your own domain(s). SMTP (with extensions) for receiving, submitting and delivering email. IMAP4 (with extensions) for giving email clients access to email. Webmail for reading/sending email from the browser. SPF/DKIM/DMARC for authenticating messages/delivery. Reputation tracking, learning (per user) host-, domain- and sender address-based reputation from (Non-)Junk email classification. Bayesian spam filtering that learns (per user) from (Non-)Junk email. Rejected emails are stored in a mailbox called Rejects for a short period, helping with misclassified legitimate synchronous signup/login/transactional emails. Automatic TLS with ACME, for use with Let's Encrypt and other CA's. DANE and MTA-STS for inbound and outbound delivery over SMTP with STARTTLS, including REQUIRETLS and with incoming/outgoing TLSRPT reporting. Web admin interface that helps you set up your domains and accounts (instructions to create DNS records, configure SPF/DKIM/DMARC/TLSRPT/MTA-STS), for status information, managing accounts/domains, and modifying the configuration file. Account autodiscovery (with SRV records, Microsoft-style, Thunderbird-style, and Apple device management profiles) for easy account setup (though client support is limited). "mox localserve" subcommand for running mox locally for email-related testing/developing, including pedantic mode. Most non-server Go packages mox consists of are written to be reusable.
At least it tells you how to compile and install it so you don't have to reverse engineer a bunch of Dockerfiles.
Maddy Mail Server implements all functionality required to run a e-mail server. It can send messages via SMTP (works as MTA), accept messages via SMTP (works as MX) and store messages while providing access to them via IMAP. In addition to that it implements auxiliary protocols that are mandatory to keep email reasonably secure (DKIM, SPF, DMARC, DANE, MTA-STS).
It replaces Postfix, Dovecot, OpenDKIM, OpenSPF, OpenDMARC and more with one daemon with uniform configuration and minimal maintenance cost.
Full re-implementation in Go.
I wrote this script during the grueling process of installing and setting up an email server. It perfectly reproduces my successful steps to ensure the same setup time and time again, now with many improvements.
I'm glad to say that dozens, hundreds of people have now used it and there is a sizeable network of people with email servers thanks to this script.
I've linked this file on Github to a shorter, more memorable address on my website so you can get it on your machine with this short command:
curl -LO lukesmith.xyz/emailwiz.sh
When prompted by a dialog menu at the beginning, select "Internet Site", then give your full domain without any subdomain, i.e. lukesmith.xyz.
Debian (and derivatives) specific.
They host e-mail and provide IMAP, POP3, and webmail. No storage limits. Pay by the e-mail address. MFA. Collects as little user data as they can because they don't want to secure it. Hosted on AWS. Fairly decent privacy policy and procedures. Everything is encrypted where it won't break the user experience.
Delta Chat is like Telegram or Whatsapp but without the tracking or central control. Delta Chat does not need your phone number. Uses the most massive and diverse open messaging system ever: the existing e-mail server network. Chat with anyone if you know their e-mail address, no need for them to install DeltaChat! All you need is a standard e-mail account. Full clients for multiple platforms available.
Github: https://github.com/deltachat/
A microservice that implements a REST API for sending e-mail. Doesn't actually implement SMTP, it proxies to a real SMTP server.
chasquid is an SMTP (email) server with a focus on simplicity, security, and ease of operation.
It sends and receives email as a typical MTA (for example, can be used instead of Postfix or Exim), and it is designed mainly for individuals and small groups.
It's written in Go, and is open source under the Apache license 2.0.
Secure your email server with STARTTLS Everywhere! Your email service can be insecure in numerous different ways. The service below performs a quick check of your email server's security configuration, including whether STARTTLS is supported, and whether it may qualify for the STARTTLS Policy List.
A website that can extract many different sorts of information pertaining to IP addresses and networks, least of all querying several dozen blacklists to see if an address has been flagged as a spammer's.
An SMTP daemon that sits between the network and your actual SMTP server (it was designed with Postfix in mind but it should be possible to drop in front of other servers, like Qmail). It runs all SMTP traffic through an antivirus scanner (ClamAV by default) before passing it along to the rest of the SMTP server. Designed to be simple and lightweight (written in C instead of Perl).
How to interactively edit the mail queue of a Postfix server to delete messages, clean up junk, or other stuff. Requires administrative access. Read the whole thing before you do anything.
Archived.
A shell script that turns a brand-new VPS or server into a mail server with a single command. Sets up webmail, IMAP, SMTP, a contacts application, a calendar, and even a web-based control panel for the whole shebang. Includes spam filtering, greylisting, backing up, and TLS certs for everything from Let's Encrypt. Even does virtual domains. No configuration during setup, and you can't really tweak the settings once it's up and running.
Github: https://github.com/mail-in-a-box/mailinabox