qmail + vpopmail + Dovecot | Roberto's qmail notes

Quoting D. J. Bernstein definition

qmail is a secure, reliable, efficient, simple message transfer agent. It is designed for typical Internet-connected UNIX hosts

References

You can find a comprehensible introduction on how a mail server works in this page of the Dovecot site. The qmail newbie's guide to relaying by Chris Johnson is very clear. It’s very suitable reading material for someone who’s just getting started.

Disclaimer

The aim of this short guide is NOT to teach you how a mail server works, even though by the time you’re finished reading it you will hopefully have a working e-mail server. These notes just serve as a reminder of the main steps to follow in order to build a quick installation of qmail and related software. I published them because of the lack of any up-to-date documentation concerning the qmail “distributions” I was familiar with, hoping that these notes could be useful to others out there. And I created this guide partly just because I enjoy doing this kind of thing.
Therefore, to learn in depth how a mail server works, you are invited to read carefully at least the references I will mention in each page.

Secondly, I am NOT responsible for what you do with your server :) Use my guide at your own risk.

Finally, comments, criticisms and suggestions are always welcome! :-p

Which distro?

These notes have been written without a specific Linux distribution in mind. I tested them on my Slackware virtual mail servers, both 64 and 32 bit, and a number of guys out there can confirm that it works with other common distributions.

Is this a toaster?

According to the DJB's definition of a toaster, the answer would be yes. I personally consider a toaster something a la Bill Shupp or qmailtoaster, which comes with the packages included. Since I prefer to let you check for the latest versions of everything yourself, strictly speaking this shouldn’t properly be considered a toaster. I would simply call this site “Roberto’s qmail notes” instead. At any rate, I’ve included a paragraph about qmail toasters here just to satisfy the search engines -as most people come here actually looking for a toaster :)).

Before we start...

As I am not  a native english speaker, I will gladly accept every hint to improve the understanding of this guide.

Edit: I would like to address a big thank to Dave Martin, who revised my english in the qmail section of this guide.

Index

I will explain shortly how to put together:

  • daemontools
  • ucspi-tcp6 (IPv6 and greetdelay support)
  • netqmail 1.06
    • patches applyed:
      • qmail-authentication
      • qmail-tls
      • force-tls
      • chkuser
      • qmail queue custom error
      • SPF
      • SRS
      • oversize DNS
      • reread concurrency
      • big concurrency
      • big concurrency fix
      • maildir++
      • better qmail-smtpd logging
      • Greeting delay (both qmail-smtpd and rblsmtpd)
      • DKIM and SURBL
      • EXT-TODO
      • BIG-TODO
      • qmail-inject-null-sender
      • doublebounce-trim
      • esmtp-size
      • qmail-tap
      • qmail-remote CRLF
      • outgoingip
      • qmail-bounce
      • qmail-smtpd pid, qp log patch
      • any-to-cname
      • rfc2821
      • qmail-dnsbl
      • qmail-moreipme
      • qmail-hide-ip-headers
      • qmail-date-localtime
      • qmail-liberal-lf
      • maxrcpt
      • queue-extra
      • qmail-empf
    • Recipient verification and Mail From: Address Verification
    • submission service (port 587)
    • RBL support (patched for greetdelay)
  • vpopmail (mysql auth)
  • vqadmin
  • qmailadmin
  • ezmlm mailing list (ezmlm-web, ezmlm-browse web interfaces)
  • Dovecot
    • IMAPs
    • POP3s
    • sieve
    • clearing of old Junk and Trash emails
  • Roundcube webmail (spamassassin user's preferences, sieve filtering, password plugins)
  • Spammassassin spam filter (with userprefs)
  • Clamav virus filter
  • simscan mail scanner
  • setting up fail2ban

Licence

Creative Commons License

Roberto's qmail notes is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.