Mail Transfer Agents (MTAs) and Mail User Agents (MUAs)


The role of a Mail Transfer Agent (MTA) is to transfer mail from one mail server to another. The schematic diagram for an email message's path from one person to another is shown in Figure 25.1. Whether the user is on a dial-up connection from a remote site or sitting at the console on the mail server itself, the path the message takes is the same: From the user's input into the Mail User Agent (commonly known as an email client program or similar name), the message moves into the sending SMTP server's message queue, where the MTA (for example, Sendmail) pulls it out as soon as a connection to the receiving SMTP server becomes available and transmits it. (Because this process transmits a message that doesn't originate or terminate on the SMTP server machine itself, this step is known as relaying.) On the remote system, the MTA places the received message into the recipient's mailbox, where it can be read online with a server-side Mail User Agent (MUA) or downloaded to a client-side MUA through POP3 or IMAP.

Figure 25.1. Diagram of an email message's path from one user to another, showing the roles of MUAs and MTAs.


As a FreeBSD administrator, you'll be interested in the way Sendmail operates as an MTA, both in sender (relay) and receiver roles. This section also discusses MUA programsboth the local kind that users run on the FreeBSD machine itself and the remote kind that operate by uploading and downloading messages. You learn how these programs interact with the "holding areas" of the MTAs: the message queues and the user mailboxes.

Common MTAs

Here are a few of the Mail Transfer Agent programs routinely used on the Internet:

  • Sendmail By far the most widely used MTA, Sendmail was developed by Eric Allman in 1983, and has developed into a cross-platform de facto standard with both a commercially supported and a freeware component. Sendmail, Inc. (http://www.sendmail.com) is a fully functional corporation that exists to support Sendmail for commercial UNIX and Linux resellers; the Sendmail Project (http://www.sendmail.org) is the free, volunteer-supported component, with grassroots resources positioned in the traditional open-source way for users of systems such as FreeBSD in which Sendmail is bundled.

  • Microsoft Exchange The Windows equivalent of Sendmail, as well as of a multitude of other types of message transfer (such as POP3, NNTP, LDAP, and calendaring), Exchange is commercially developed and "closed source," in the Microsoft tradition.

  • Postfix Written by Wietse Venema as an alternative to Sendmail, Postfix is designed to be faster, more secure, and easier to operate than Sendmail. You'll learn more about Postfix at the end of this chapter.

  • Qmail Another response to Sendmail, Qmail was written by Dan Bernstein and is gaining rapidly in popularity due to its reputation for security and speed (although Postfix is reputedly faster). Also, unlike Postfix (which attempts to mimic Sendmail in its interactions with the system, for instance, where it keeps its spool and config files), Qmail uses its own structure and doesn't try to ease the transition for Sendmail users. Qmail is a good choice for administrators running the EZMLM mailing list manager, also by Bernstein, with which Qmail is tightly integrated.

A great many more MTAs are in general use throughout the Internet; the ones ported to FreeBSD can be found in /usr/ports/mail.

Common MUAs

Mail User Agents are even more numerous than MTAs. Because Windows and Macintosh email clients (such as Microsoft Outlook/Outlook Express, Eudora, Apple Mail, Mozilla Thunderbird, and so on) are so widely understood, the following list contains only the more popular MUAs available for FreeBSD:

  • Pine Ostensibly an acronym for "Program for Internet News and Email," rumors persist that the name of this open-source product of the University of Washington is actually an acronym for "Pine Is Not Elm." In either case, Pine is quite widely used, providing an intuitive user interface, many modern message-handling features, integrated USENET newsgroup reading, and a message composer that incorporates the stalwart pico editor, which comes packaged with Pine.

  • Elm The progenitor of Pine (at least, if you believe the rumors), Elm evolved from the ancient mail and mailx programs that performed email duties for the university and government networks that predated the modern commercial Internet. Primitive by today's standards, Elm still claims many loyal users.

  • Mutt Conceived as a "mongrel" MUA and incorporating features from Elm, Pine, and a number of other programs, Mutt claims to be the most advanced of them alland it just may be. It has features the others don't, including many that require a graphical client-side MUA in other contexts as well as a great deal of customization.

  • mail The ancestor of all the modern user-friendly email clients, the command-line utility mail is available on all UNIX platforms (including FreeBSD) and gives a user rudimentary access to email even when nothing else is available. It can also be scripted and incorporated into shell or Perl programs quite usefully.

Note that the email agents listed here are all shell oriented, meaning that they run in a Telnet or SSH session, monopolizing that session's window. This means they're (almost) exclusively text-based, and such things as inline images and HTML formatting won't work (although they can be configured to open attachments in helper applications, if you're running them on a graphical FreeBSD workstation). However, it also means that you can check your mail using these programs no matter where you're computing fromjust open up a Telnet or SSH session from wherever you are. You'll also be virtually guaranteed to be safe from the Windows/Outlook-oriented viruses that plague the Internet.

A number of full-featured, graphical email applications are available for FreeBSD, integrated into the KDE or GNOME environments. These applications turn FreeBSD into a user workstation where graphical, media-rich messages can be directly viewed, as long as you're sitting at the computer's console (it doesn't work so well if the FreeBSD machine is a remote server where the X11 environment is not available to you). For more information on these kinds of email programs, see the "Email Applications" subsection of Chapter 6, "Working with Applications."




FreeBSD 6 Unleashed
FreeBSD 6 Unleashed
ISBN: 0672328755
EAN: 2147483647
Year: 2006
Pages: 355
Authors: Brian Tiemann

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