3.1 Where to Find Qmail

The official place to get qmail is through Dan Bernstein's web and FTP server at http://cr.yp.to. (The .to domain is actually the island nation of Tonga, but they'll sell a "vanity" address to anyone willing to pay, and Dan's professional interests center around cryptography.) An alternate address is http://pobox.com/~djb/qmail.html.

Both URLs are currently redirected to Dan's FTP server, koobera.math.uic.edu, at the Math department of University of Illinois at Chicago. For the rest of this book, we'll nickname that site koobera. The actual name of the site is subject to change at any time, which is the whole point behind using cr.yp.to and pobox.com.

If you use a web browser or a graphical FTP program to open an FTP connection to koobera, the list of files you receive may be scrambled. Dan uses an FTP server of his own creation, publicfile, which is good and bad. It's good because it's a typical Dan Bernstein program: small, secure, and fast. It's bad because most web browsers and visual FTP programs don't know how to parse the server's listing format.

Visual FTP programs without special support for anonftpd's file format (EPLF, Easily Parsed Listing Format) cannot give you a listing of files. The standard command-line FTP that comes with BSD, Linux, and most versions of Unix has no such troubles, nor does the FTP distributed with versions of Windows, because neither attempts to parse the listing. The current version of squid, a popular proxy server, has support for EPLF, so if you're accessing the Net through a squid FTP proxy, you should have no troubles.

Once you've made sure you can contact the FTP server, make a directory where you're going to download and build your software such as /var/src or /usr/local/src, and FTP a copy of qmail there. Use gunzip and tar or pax to unpack it into a subdirectory.

3.1.1 Copyright

Dan Bernstein reserves most rights when he distributes qmail. Copyright law lets him prohibit anyone from making copies (except within fair use, which includes actually loading the software from disk into memory, memory into cache, cache into processor, and disk onto backup media and back again). Dan has given users several permissions, however. You can redistribute the source to any of qmail 1.00, 1.01, 1.02, and 1.03. This source must be unmodified, in the original .tar.gz format, and match a certain checksum provided by Dan.

In addition to redistributing unmodified source, you can also redistribute certain derived works. An executable that is equivalent to that which a user would create through the documented install process is also redistributable. In practice, this means that you can download, compile, patch, install, and use qmail any way you want. The one thing you can't do is to distribute modified versions of qmail. That's why all of the user modifications are distributed as patches relative to the distributed 1.03, rather than as modified versions of qmail itself.[1]

[1] Disclaimer: this description undoubtedly has a different legal import than Dan's permissions. Read Dan's license before you make any decisions about redistributing qmail yourself.

Netqmail

Three well-known members of the qmail user community, Charles Cazabon, Russell Nelson, and Dave Sill, made a package called netqmail 1.05 that includes qmail 1.03, a small set of recommended patches, and a script to create a patched version of qmail ready to build. It also contains a few recommended patches for other packages often used with qmail. For people installing qmail from scratch, netqmail is the best place to start. It's on the web at http://www.qmail.org/netqmail.

To use netqmail, download and unpack it, which will create a directory called netqmail-1.05. Go into that directory and run ./collate.sh to unpack qmail 1.03 and apply the patches. Once you've done that, there will be a second netqmail-1.05 directory within the first one containing a patched set of sources ready to build as we describe in this chapter.


3.1.2 Should I Upgrade?

For better or worse, there's never been a good answer to that question. The best answer that I can offer is that in qmail 1.02 a user could crash the copy of qmail-smtpd she was running, by issuing a:

rcpt to: <>

However, this would only cause the user's copy to crash. Nobody else would be affected.

A good answer might be "because there's a bug that prevents X from working." This has never happened. Another good answer might be "because there's a security hole that endangers the security of your machine." This has also never happened.

The only way to answer your question is to examine the CHANGES file that comes with qmail. If you see a change there that affects you, then you should consider upgrading your version of qmail. Otherwise, the wise maxim "If it's not broken, don't fix it" applies.

The most important reason to upgrade is that if you're running the same version as most other qmail users, it's easier to ask them specific questions, pass patches and configuration tricks around, and otherwise be part of the qmail community. For most people, this is the best reason to stay in sync with new versions. I assume that you're using Version 1.03, the most recent as of the time this book was published, or netqmail 1.05, which is 1.03 with some recommended patches.

3.1.3 Other Software You Should Fetch

As long as you're accessing koobera, there's some other software you should fetch. I'm going to leave the version number out of the package name. Look for the current version when you're downloading.

Unpack most of these packages the same way you do qmail, with gunzip and tar or pax, each into its own subdirectory of your download directory. Starting with Version 0.75 of daemontools and, presumably, new versions of other packages, Dan has invented a new installation setup described at the end of this chapter.


ucspi-tcp

A package for servers that respond to incoming TCP connections, as an alternative to the old inetd daemon. It used to be optional, but its tcpserver is now the only supported way to run qmail's SMTP daemon. If your system has the newer xinetd, it's possible to run qmail's SMTP daemon from it, although I don't recommend it. See http://www.barriebremner.com/qmailxinetd.html.


checkpassword

If you're using qmail's built-in POP3 server, you want Dan's checkpassword program, which validates user logins as well. Even if you're installing an alternative checkpassword, it's nice to have Dan's checkpassword installed for testing.


dot-forward

For compatibility with sendmail's .forward file. It interprets the contents of a .forward file, and forwards the mail or deliver, it to a mailbox as needed.


fastforward

For compatibility with sendmail's /etc/aliases file and handling large tables of forwarding addresses. It converts an aliases-format file into a CDB (Constant Data Base another of Dan's packages) and forwards by a CDB lookup, which is fast and efficient. If you have more than a thousand aliases, you'll probably want this package.


serialmail

To deliver mail on-demand. Qmail's queue is designed to deliver mail to hosts that should always be available. Its queuing and scheduling policy presumes that domains' MX hosts are usually able to receive mail at any time other than relatively short downtimes. If this is not the case for any reason, then serialmail should be used to deliver mail when the host is able to receive it. Serialmail is also useful to single-thread deliveries to recipient hosts that can't handle parallel deliveries.


mess822

Contains ofmipd, the Old-Fashioned Mail Injection Protocol (OFMIP) daemon. SMTP isn't supposed to fix up mail that it transfers (a rule too widely ignored by sendmail and other MTAs). OFMIP is just like SMTP, except that ofmipd rewrites any hostnames or headers in messages it handles into standard compliant form. Mail sent by your users using desktop mail clients should be accepted using ofmipd.



qmail
qmail
ISBN: 1565926285
EAN: 2147483647
Year: 2006
Pages: 152

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net