There are many packages under Linux that can implement standard mail services. Unix/linux e-mail system model can be divided into the mail delivery Agent MTA, mail storage and acquisition agent MSA, and mail client Agent MUA three modules. Although there are some special mail applications that cannot be classified exactly as described above. Here's a brief overview of Linux mail services.
1, mail delivery agent-mta
The mail delivery agent under Linux includes SendMail, which has a corresponding version on almost any UNIX platform; and D.J. The postfix system of Bernstein QMail and Wietse Venema. They are responsible for receiving and transmitting mail. This sounds simple, and the settings can actually be quite complex. A series of routing and camouflage options are required for messaging policy management, and many features are implemented by language programming to filter or modify the header information of a relay message. In addition, the process of message routing and addressing mail store mailboxes involves complex interoperability with various directory services, which may include DNS, password files, NIS, LDAP alias/database management files, and a variety of common database systems.
Today's MTA also implements anti-spam features that control the to and from address formats of headers to allow or limit specific domain names or address ranges, primarily by modifying access control tables and rules. This process typically involves querying a datasheet or directory service, such as the real-time Black hole list program RBL of Paul Vixie, the Messaging abuse prevention system maps, and similar dorkslayer/orbs systems. The MTA has been growing to enable enhanced policy control and anti-virus and anti-worm capabilities.
In most cases, it is easier to install and set up an MTA system, but the implementation of powerful functionality is at the expense of high complexity. If your organization chooses a custom MTA to meet specific routing, system, security, and anti-spam requirements, it requires more complex setup options, including the design and handling of complex relationships between MTA and various subsystems such as LDAP and DNS servers.
2. Mail storage and get agent MSA
Once the MTA is installed and set up, the same configuration process is typically required for the MSA system. Most organizations today do not send mail directly to the desktop client system, but instead store messages to the server, allowing users to read their messages via POP or IMAP.
There are many kinds of protocols for managing mail storage, but POP3 and IMAP4 are most commonly used today. For the MTA, a service that is implemented by some programs, or called Daemon, to implement the corresponding protocol. Most MSA can interact with common MTA, and these systems also include locks or other security mechanisms that allow multiple MSA to work in parallel without conflict.
This means that some users can get mail through the POP protocol while others can use the IMAP protocol, while others can log on to the system and use local MUA such as Pine,mutt or Elm to process mail. Individual users can also switch from one access protocol to another without the need for system administrator intervention. Smart users can even bypass the usual Msa/mua services, and use the usual UNIX commands such as CP, MV, and FTP, or remote sync rsync to dispose of their messages at random. This is a bit arcane for ordinary users, but it can sometimes be used to easily fix a broken mailbox system.
It's pretty easy to set up a pop service on a Linux system that's already installed, and it doesn't even require any action. Pop daemon are usually established when the initial Linux operating system is installed. If the pop daemon is blocked, you can remove the comment for the corresponding line in the/etc/inetd.conf file and restart the daemon service.
Similarly, so is IMAP. POPs typically forward messages to the client and remove them from the server. IMAP allows users to store messages in a server-side folder, while the client's copy is a cache or a working copy, which requires more server storage space, but allows IT departments to focus on the server for backup and recovery, And let the client maintain considerable flexibility and security. IMAP can also be set up like pop to delete the server-side mail after the client reads it, which is no different from the operation. Both services are controlled by inetd, or can be referred to as network distribution services, equivalent to the "communication receptionist" of Linux.
POP or IMAP can run over and over and over and over. Without special care, silently serving hundreds of users and mailboxes. But sometimes the email response system makes some stupid mistakes, or some mail software creates bugs, which requires the system administrator to intervene, resolve some system failures, and clear some mail fragments and garbage.
For example, some users ' pop systems may crash, usually due to a customer receiving too large a message attachment. The larger attachment file exceeds the disk space limit, and the solution is to use the shell command to decode the attachment using UUDecode and store it in the user's home directory. You can also design small script programs to handle mail and restore the user's mailbox system. Typically, the mbox under UNIX is a simple text file, and qmail messages are stored in a directory containing a single small text file. A competent system administrator can easily achieve the above operation. In other words, most of the problems you encounter with MSA and MTA can be addressed through a text editor and common UNIX filters and applications.
3, mail customer agent MUA
Mail Customer agent MUA a wide variety, but also springing up, emerging, different. Most of them conform to POP and IMAP protocols. This also includes Microsoft's Outlook series. Under Linux, many people use Fetchmail to crawl messages and save them in a local mailbox. Then use any kind of mail client Agent Mua, such as Elm,pine,mutt,mh/exmh,emacs Rmail,vmail,mh-e,gnus and a lot of GUI interface such as Balsa, mahogany, etc. to process the message. There are also a number of Linux users who choose to use Netscape Communicator's built-in mail client.
4, alternative Linux messaging applications
Under Linux and UNIX, there are also many tools such as Procmail,vacation,biff, and Fetchmail, which cannot be grouped into Mta,msa,mua categories. Here to do an alternative profile.
Promail is often used as a "local delivery agent" and a mail processing agent. It is usually used to filter the part of the transmission information sent to the final recipient. Allows users to write scripts to implement automatic posting, rejection, recovery, or forwarding of specific messages. It can also be used as a processing mailbox, or as a regular e-mail programming language and library.
Vacation is an early and simple application of automatic reply to mail after receiving a letter. Originally used to remind the communicator that the recipient is on vacation, this function can be achieved by using a simple two-line procmail command.
Biff can be used to inform the user that a message has arrived. Under GUI, there are several similar applications, which can express mail events by displaying icons, animations, playing music or voice prompts. It is also possible to relay the BIFF information over the entire network through various background MSA protocols.
In short, the Linux mail Service is convenient and flexible, powerful and complex. As long as careful planning, careful design, careful configuration, can build an efficient and free multi-functional e-mail system platform.