This is the second edition of Sendmail: Theory and Practice, an update of the 1995 first edition. Otherwise quite well written, the first edition suffered from not covering sendmail version 8. Version 8 had come to prominence with the original release of the O'Reilly "Bat Book", and a spate of security problems with vendor shipped versions of sendmail in 1993. Since the first edition, sendmail has developed at a phenomenal pace. An update to the first edition is definitely in order.
A comparison of the table of contents between the first and second editions shows a strong similarity. The book takes a methodical approach at the topic, first explaining how email works, then providing a description of the high-level operation of sendmail. Once the foundation is in place, the authors discuss the meat of the sendmail.cf file, including options and rulesets. They close with three chapters on administering email servers, preventing spam, and security issues. The book concludes with 10 appendices which provide several tables, mostly lists of sendmail configuration parameters.
The book does acknowledge that sendmail has progressed since the pre-8 days. A number of features that became available in later versions, including 8.11 and 8.12 are discussed. However, this is done only in passing. The whole tone of the book is unchanged from the first edition, and, frankly, it was obsolete when it was released. The information on UUCP email routing is mildly interesting as a historical note, and there may be someone out there who still finds it useful, but even a person as nostalgic as I won't be able to muster any interest in email routing over DECnet Phase IV.
The authors provide a long example of email address rewriting in order to mask the specific host from which email is being sent. The correct way to perform these tasks is to use masquerading, or in a complex environment, by using the genericstable. Neither of these options are mentioned anywhere in the text of the book. Baroque methods are suggested in order to avoid revealing information via the SMTP EXPN and VRFY commands, but the PrivacyOptions variable isn't mentioned, except in an appendix. I have many other more minor complaints, but I do not believe that a book on sendmail can be considered relevant if the M4 macro processing language isn't mentioned at all between its covers. Frankly, given the fact that very little of this book has been updated, I honestly don't know why they chose to release a second edition.
In my opinion, the best part of the book is the last three chapters. Certainly, the authors are savvy email administrators, and most of their advice is pretty well reasoned. Vixie is clearly an Internet expert on eliminating spam, and I found some of the information in this chapter especially useful. Even so, the information here is much more sketchy than I would have preferred. There's very little depth here. The anti-spam information doesn't even mention the use of sendmail's access database.
The book is well written and the arguments are coherent, yet I cannot
recommend this book. Some might argue that it fills a gap between
a one-chapter description of sendmail in a book such as
Nemeth, et. al.'s UNIX System Administration Handbook
and the formidable presence of Costales and Allman's sendmail.
However,
it is my opinion that Craig Hunt's Linux Sendmail Administration
does a much better job in this role. Hunt provides much more up-to-date
methods to solve email problems, and he explains how to maintain
configurations using M4, which is the preferred method these days.
I would claim that the first edition of Sendmail: Theory and
Practice was all but obsolete when it first hit the shelves.
Unfortunately, the second edition does not update very much. While
the explanations are clear, many of the methods the book suggests
for accomplishing tasks with sendmail are inappropriate.
Craig Hunt's Linux Sendmail Administration is a much
better book, even for those who don't use Linux.
Click here to return to the index of reviews.
Capsule: