SMTP servers

4 min

SMTP servers that are recommended for Aerogramme are the ones that support:

Postfix supports these 2 features and is the only recommended choice for now.


Configuring Postfix requires to add these 4 lines to

smtpd_sasl_type = dovecot
smtpd_sasl_path = inet:localhost:12345
virtual_mailbox_domains = your-domain.tld
virtual_transport = lmtp:[::1]:1025

Aerogramme implements Dovecot SASL protocol. By configuring Postfix with it,

Make sure that your-domain.tld is not already configured in the mydomain variable, or it might conflict with Postfix local delivery logic.

Indeed, Postfix internally has its default configuration for "local" mail delivery, that maps to the old way of managing emails. LMTP delivery is a more recent, and maps to the "virtual" mail delivery mechanisms of Postfix. Your goal is thus to deactivate as much as possible the "local" delivery capabilities of Postfix and only allow the "virtual" ones.

You can learn more about Postfix LMTP capabilities on this page: lmtp(8).


Maddy is a more recent email server written in Go. However it does not support LMTP delivery over TCP, only over UNIX socket: without a specific adapter, it's not yet compatible with Aerogramme.

For LMTP delivery, read SMTP & LMTP transparent forwarding. For the Dovecot Auth Protocol, read Dovecot SASL.


Something like below might work (untested):

action "remote_mail" lmtp "/var/run/dovecot/lmtp" rcpt-to virtual <virtuals>
match from any for domain "your-domain.tld" action "remote_mail"

The syntax is described in their manpage smtpd.conf(5). opensmtpd does not support Dovecot's SASL protocol, you can signal your interest in their dedicated issue.


chasquid supports LMTP delivery and the Dovecot Auth Protocol but only over UNIX sockets. Thus, it's not yet compatible with Aerogramme.

Other servers

Exim has some support for LMTP too.

sendmail might deliver to LMTP through a dedicated binary named smtpc.