The qmail home page

View a Russian-language site
View a Korean-language site
View a Chinese-language site
qmail francophone

Please note that this site is a reference for qmail users. It's not designed to be easy to use -- it's designed to be comprehensive. There are things in here which have sharp edges! If you're looking for a tutorial site, visit Dave Sill's excellent Life With Qmail site.

qmail is a modern SMTP server which makes sendmail obsolete, written by Dan Bernstein, who also has a web page for qmail. qmail is a secure package. You can download netqmail 1.06 (Redhat RPMs, and Debian .debs, HP-UX, Gentoo, and OpenBSD ports) and redistribute qmail for free. You can get the "big picture" of how qmail is organized. You should read Life with qmail.

There is a discussion list and an announcements list for qmail users, maintained by Dan Bernstein using qmail, of course. There's also an archive. You can search it. It's also archived at The Aims Group, at Gossamer Threads, and in Mailbox-format archives. Charles Cazabon has written some guidelines for posting to the list. There is also an FAQ, providing answers to frequently-asked questions. qmail is now open source.

Dan's updated FAQ is also available in other file formats, and in Spanish.

A number of large Internet sites are using qmail: USA.net's outgoing email, Address.com, Rediffmail.com, Colonize.com, Yahoo! mail, Network Solutions, Verio, MessageLabs (searching 100M emails/week for malware), listserv.acsu.buffalo.edu (a big listserv hub, using qmail since 1996), Ohio State (biggest US University), Yahoo! Groups, Listbot, USWest.net (Western US ISP), Telenordia, gmx.de (German ISP), NetZero (free ISP), Critical Path (email outsourcing service w/ 15M mailboxes), PayPal/Confinity, Hypermart.net, Casema, Pair Networks, Topica, MyNet.com.tr, FSmail.net, Mycom.com, and vuurwerk.nl.

updated Charles Cazabon, Dave Sill, Henning Brauer, Peter Samuel, and Russell Nelson have put together a netqmail-1.06 distribution of qmail. It is comprised of qmail-1.03 plus the recommended patches and some documentation.

Table of Contents:

   Commercial Support  

Commercial support is available for qmail.

  • James Craig Burley, Software Craftsperson, offers assessment, installation, support, training, and documentation for qmail and related software, specializing in low-maintenance, rock-solid anti-spam, anti-virus solutions for small- and medium-size organizations.
  • Saffron Solutions is a customer-focused IT services company offering computer system, network, and security consulting and systems integration. Based in Boston, MA, Saffron Solutions provides qmail and other open source software support to customers in the US and Canada.
  • bettercom (located in Hamburg, Germany) provides support, installation and administration services for qmail and open-source software in Germany and elsewhere in Europe.
  • Andrew Richards is a qmail solutions specialist: Straightforward support, consultancy, maintenance and troubleshooting services for qmail and related systems. Design and installation of new qmail-based systems - any size, any location. Tel. +44 1142 789 884.
  • G-Tech Consulting offers high-quality services and support contracts at the lowest prices. We offer support for Qmail, Webmail, Courier-Imap, djbdns, etc and a wide variety of open-source software such as Apache, ProFTPD, Linux, FreeBSD, OpenBSD.
  • David Harris, author of open source qmail addons, provides expert qmail support and installation through his firm DRH Internet. Call toll free at 866-374-4678; internationally 410-461-5316.
  • Inter7 provides qmail support world-wide: remote access or at your location. Call toll free in the U.S. at 866.528.3530, Internationally at 815.776.9465 or via Voip at sip:support@inter7.com
  • Quist Consulting provides support for qmail in Canada, the USA and elsewhere over the Internet.
  • AiDA Systems offers Qmail, Webmail AntiVirus, AntiSpam, and djbdns support. We also offer high-availability, clustering, redundancy, load balancing (layer 4 switching, round-robin dns) and failover services for medium/large ISP's. We also support migration from Windows/Unix platforms to any Unix platform (FreeBSD, OpenBSD, Linux, Solaris, others) Call 209.639.2989
  • BlackMesh provides a full range of qmail services, from consulting to shared qmail servers and dedicated qmail servers. In addition to qmail support, BlackMesh provides a full range of consulting and hosting--from shared to dedicated--services. 888.473.0854
  • iBase Technologies from Hong Kong offers qmail based corporate email solutions for the Asian region. Solutions include corporate email solutions, anti-spam/anti-virus, high-volume servers, consultancy and system administration services.
  • Ross Cooney from Rozmic provide support for qmail to European based organisations and ISP's. Rozmic also provide a managed spam filtration service called EmailCloud which is built upon qmail.
  • RIEGER - Consulting & Management offers consulting, installaton and adminstrative services for qmail, djbdns and other software including help with general server tasks to customers located in Germany and nearby countries.
  • LinuxIS Consulting provides consulting, installation, and support services for qmail, djbdns, and most other DJB-ware and Open Source software. Accepts Visa, M/C, American Express and Paypal.
  • Clearly Connected provides contractual and by-the-hour support for qmail and other MTAs. We have a great deal of expertise in qmail on Linux, FreeBSD, and Solaris.
  • Excello provides support for wide range of qmail applications for SMB & Enterprise customers in the Germany and Czech republic. They also run excellent high performance antispam and antivirus solution on qmail platform known as Virusfree.cz.
  • LinuxMagic Inc. Offers high volume mail server support for ISP's and Enterprise throughout the world. They have published free qmail support tools. Also specializing in Anti-Spam solutions, Integration, High Performance Tuning. Located in Canada, 24/7 support contracts also available.
  • Advanced Consulting Group - Los Angeles based Qmail installation and support. Support for spam filtering, large deployments, and 24/7 support. Support all unix platforms. Call toll free (888) 595-9775.
  • Disch Services GmbH (located near Nuremberg, Germany) is providing professional services for open source software. The company is running also e-mail servers with qmail for her german customers.

   User-Contributed Documentation  

Documentation contributed by users


   Author's Enhancement Software for qmail  

Enhancements and additions to qmail by its author, Dan Bernstein.


   User-Contributed Software for Qmail  

General software contributed by users and supporters of qmail.


   User-Contributed Maildir Support  

Maildir-specific software contributed by qmail users. Maildir is a lock-free mailbox standard which is reliable over NFS.


   EZ Mailing List Manager  

EZ Mailing List Manager (EZMLM) is a mailing list manager which allows users to create their own mailing lists with a single command.

  • Dan Bernstein's ezmlm page.
  • Fred Lindberg and Fred B. Ringel have written an ezmlm FAQ. In addition, Fred L. has also written (in his copious free time) the Ezman, an ezmlm manual for both list owners and users.
  • Fred Lindberg has an add-on to ezmlm-0.53 called ezmlm-idx. It gives you headers, trailers, threaded digests, multi-message get, thread retrieval in MIME multipart/digest with headers filtered to make the digest rfc1153-like (default). It also has all aspects of message moderation, subscription moderation, and remote administration of subscriber addresses.
  • Fred Lindberg is the latest author of code to ensure that an ezmlm subscriber is on the list
  • Fred Lindberg has an EZMLM list splitter. It forwards subscribe/unsubscribe requests from a main list to one of a set of sublists based on the target address (hash or domain name). This way, the list can be split into a number of hosts for load splitting or geographic splitting without inconveniencing the user (who always deals with the main list).
  • Özgür Kesim has a ezmlm HOWTO for advanced mailing lists.
  • Steve Peterson implemented a simple web subscribe/unsubscribe interface to ezmlm.
  • Michael Hirohama wrote Ezmlm-Thresh, which allows EZMLM mailing list messages to be limited to a threshold per subscriber.
  • Guy Antony Halse has a web interface to ezmlm called ezmlm-web, currently at 2.1. It has improvements over Glen Stewart's version.
  • Glen Stewart has improved on Guy Antony Halse's EZmlm-Web 1.02. He's calling his version EZmlm-Web v1.0.2gs1.2. The gs1.2 version suffix modifications are fairly extensive and done by Glen Stewart. Some of the most notable changes in this release include:
    • list owner logon screen & password
    • ListMaster access/control from filtered, configurable IP addresses
    • Only the ListMaster can create and delete lists
    • skeleton support for WebGlimpse indexing of selected list archives
    • spam filter option for list owner addresses
    • tooltip help for all list configuration settings
    • case-insensitive list and subscriber address sorting
    • list owner can change their owner address
    • configuration tour (help) for list owners
    • many other fixes and enhancements
  • Sergiusz Pawlowicz wrote ezmlm-cgi-py, a more approachable (i.e. Python, not djb-C) version of "the Freds" ezmlm-cgi archive formatter.


   Living with Qmail - Tips & Advice  

Some good advice for new qmail users, contributed by qmail users.


   Alternative Checkpassword Implementations  

qmail-popup and qmail-pop3d are glued together by a program called checkpassword. It's run by qmail-popup, reads the username and password handed to the POP3 daemon, looks them up in /etc/passwd, verifies them, switches to the username/home directory, and runs pop3d. At least that's what the standard one does. Some alternatives are listed below.

Mark Delany has a clever way to test your checkpassword with a bit of command line re-direction. For example, with username fred, password bloggs,
printf "%s\0%s\0%s\0" fred bloggs Y123456 | /bin/checkpassword id 3<&0
will execute /bin/id if the password is right.

If you haven't a printf then enter the data into a file with your favourite binary editor, such as emacs, and then it's simply:
/bin/checkpassword id 3<test.file

Or use perl: perl -e 'printf "%s\0%s\0Y123456\0","fred","bloggs"' | ...

Or use qmail-popup and use the 'user' and 'pass' commands: /var/qmail/bin/qmail-popup /bin/checkpassword id


   Yet More Qmail Addons  

Still need something more from qmail? The chances are good that you can find it here, contributed by users and supporters of qmail.


   Microsoft virus prevention  
Microsoft products are susceptible to a large variety of viruses, worms, and other fauna. The best solution is to not use them. A secondary solution is to use anti-virus software to keep viruses away from Microsoft products.


   Patches for high-volume servers  


   Anti-spam techniques and code  


   Qmail books  


   Recommended patches  
  • Arnt Gulbrandsen has implemented unicode address support according to RFC 6530-32 on behalf of CNNIC. A patch that requires the TLS patch is available for download, ask Arnt if you prefer a patch without TLS.
  • The definitions of errno in qmail (and tcpserver) do not work with the newest glibc (2.3.1). Debian and redhat are updating to this glibc. Executables compiled with older glibc's (2.3) abort on startup, and recompilation with 2.3.1 is not possible. Mate Wierdl has patches for all of djb's software. Erwin Hoffmann points out that a one-line sed script will fix most of DJB's software. Look in the Tips section.
  • Erik Sjölund pointed out this bug in qmail-local.
  • qmail ought to recognize as a local IP address. This patch from Scott Gifford implements that change.
  • David Phillips noticed that sendmail's -f option sets a default From: header, and so should qmail's emulation.
  • Bruce Guenter has written a patch which causes any program that would run qmail-queue to look for an environment variable QMAILQUEUE. If it is present, it is used in place of the string "bin/qmail-queue" when running qmail-queue. This could be used, for example, to add a program into the qmail-smtpd->qmail-queue pipeline that could do filtering, rewrite broken headers, etc.

Send kudos/brickbats/contributions to Russell Nelson. Some design contributed by Steve Cole and Olivier Mueller. Some lint'ing by Paul Theodoropoulos.
Last modified: Sun Jan 17 17:02:48 EST 2016

Gratuitious blank lines added so that top.html#link works.