annotate thesis/tex/3-MailTransferAgents.tex @ 131:a496788a30b3

bib stuff: Ref on the Internet -> Websites
author meillo@marmaro.de
date Wed, 10 Dec 2008 08:32:12 +0100
parents 6ce355da579f
children a83a29e10b10
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
1 \chapter{Mail transfer agents}
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
2
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
3 After having analyzed the market for electronic mail and trends for it in the last chapter, this chapter takes a look at \mta{}s, the intelligent most important parts of the email infrastructure. \MTA{}s will be grouped by similarities, and the four most popular \freesw\ \mta{}s, will be presented to the reader in a short overview and with the most important facts. At the end of this chapter a comparison of these programs in several disciplines will be done.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
4
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
5
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
6
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
7
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
8 \section{Types of MTAs}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
9 ``Mail transfer agent'' is a term covering a variety of programs. One thing is common to them: they transfer email from one machine to another.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
10
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
11 This is how Bryan Costales defines a \mta\ in \cite{costales97}:
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
12 \begin{quote}
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
13 A mail transfer agent (MTA) is a highly specialized program that delivers mail and transports it between machines, like the post office.
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
14 \end{quote}
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
15 \name{The Free Dictionary} is a bit more concrete on the term: \citeweb{website:thefreedictionary}
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
16 \begin{quote}
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
17 Message Transfer Agent - (MTA, Mail Transfer Agent): Any program responsible for delivering e-mail messages. Upon receiving a message from a Mail User Agent or another MTA, [...] it [...] delivers it to any local addressees and/or forwards it to other remote MTAs (routing) for delivery to remote recipients.
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
18 \end{quote}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
19
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
20 Common to all \MTA{}s is the transfer of mail to other machines; this is the actual job. Besides this similarity, \MTA{}s can be very different. Some of them have \NAME{POP3} and/or \NAME{IMAP} servers included. Some can fetch mails through these protocols. Others have have all features you can think of. And maybe there are some that do nothing else but transporting email.
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
21
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
22 Following is a classification of \mta{}s into groups of similar programs, regarding what is viewable from the outside.
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
23
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
24
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
25 \subsubsection*{Relay-only MTAs}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
26 \label{subsec:relay-only}
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
27 This is the most simple kind of \MTA. It transfers mail only to defined \name{smart hosts}\footnote{\name{smart host}s are \MTA{}s that receives email and route it to the actual destination}. \name{Relay-only} \MTA{}s do not receive mail from outside the system, and they do not deliver locally.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
28
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
29 Most \MTA{}s can be configured to act as such a \name{forwarder}. But this is usually an additional functionality.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
30
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
31 One would use such a program to give a system the possibility to send mail, without the need to do lots of configuration. In a local network, usually the clients are set up with a \name{relay-only} \MTA, while there is one \name{mail server} that acts as a \name{smart host}. The ``dumb'' clients send mail to this one \name{mail server} which does all the work.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
32
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
33 Examples for that group are: \name{nullmailer}, \name{ssmtp} and \name{esmtp}.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
34
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
35
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
36 \subsubsection*{Groupware}
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
37 Normally the term ``groupware'' does not mean one single program, but a suite of programs. They build a framework which is then populated with various modules that provide actual functionality. Modules for mail transfer, file storage, calendars, resource management, instant messaging, etc., are commonly available.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
38
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
39 One would use one of these program suites if the main work to do is not mail transfer, but providing integrated communication facilities and team working support for a group of people. The most common scenario are companies. They have \name{groupware} running to provide adequate services for their teams to work efficiently. But one may use \name{groupware} on the home server for his family members also.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
40
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
41 Examples are: \name{Lotus Notes}, \name{Microsoft Exchange}, \name{OpenGroupware.org} and \name{eGroupWare}.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
42
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
43
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
44 \subsubsection*{``Real'' MTAs}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
45 There is a third type of \mta{}s in between the minimalistic \name{relay-only} \MTA{}s and the bloated \name{groupware}. Those programs may be named ``real \MTA{}s'', or ``proper \MTA{}s'', though there is no common name. They are what is meant with the term ``\mta''---programs that transfer mail between hosts.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
46
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
47 Common to them is their focus on transferring email, while being able to act as \name{smart host}. Their variety ranges from ones mostly restricted to mail transfer (\name{qmail}) to others already having interfaces for adding further mail processing modules (\name{postfix}). They cover everything in between the other two groups. %FIXME: are postfix and qmail good examples?
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
48
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
49 This group is of importance in this document. All programs selected for the comparison in the following section are ``real \MTA{}s''. \masqmail\ is one too.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
50
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
51
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
52 \subsubsection*{Other segmenting}
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
53 \name{Mail transfer agents} can also be split in other ways.
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
54 \begin{itemize}
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
55 \item
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
56 Due to \sendmail's significance---described in section \ref{sec:sendmail}---compatibility interfaces for \sendmail\ are of importance for \unix\ \MTA{}s. Being not \emph{sendmail-compatible} does not need to matter for some fields of action, but makes the program ineligible for serving as a general purpose \MTA\ on \unix\ systems. Hence being sendmail-compatible is a major property of a \mta. %todo: how many MTAs are sendmail-compatible?
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
57 \MTA{}s not having a \emph{sendmail-compatible} interface or not offering it as a compatibility add-on, will not be covered here. One example for such a program is \name{Apache James}. %FIXME: check if correct
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
58
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
59 \item
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
60 Another separation can be done between \freesw\ programs and proprietary software. Many of the \MTA{}s for \unix\ systems are \freesw. Only these are regarded in the following sections, because comparing \freesw\ with proprietary or commercial software is not what typical users of programs like \masqmail\ do. %fixme: what are typical users?
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
61 Comparison with those non-free programs may be a point for large \freesw\ projects, trying to step into the business world. Small projects, mostly used by individuals at home, %fixme: is this the right target field? see chap02
119
73fe291f79e6 added missing backslashes
meillo@marmaro.de
parents: 117
diff changeset
62 need to be compared against other projects of similar shape. The document should be seen from \masqmail's point of view---an \MTA\ for a \unix\ system on home servers, workstations, or maybe embedded platforms---so non-free software is out of the way.
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
63 \end{itemize}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
64
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
65
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
66
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
67
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
68 \section{Popular MTAs}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
69
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
70 This section introduces a selection of popular \MTA{}s; they are the most likely substitutes for \masqmail. All are \emph{sendmail-compatible} ``smart'' \freesw\ \MTA{}s that focus on mail transfer, as is \masqmail.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
71
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
72 The programs chosen are: \sendmail, \name{exim}, \name{qmail}, and \name{postfix}. They are the most important representatives of the regarded group. Although \MTA\ statistics are rare, FIXME(have different results), and good data is hard to collect, these programs tend to stay near the top.
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
73
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
74 Table \ref{tab:mta-market-share} shows the Top 10 \MTA{}s of three different statistics. The first published by \name{O'ReillyNet} in YYYY \citeweb{oreillynet:mta-stats} , the second by \name{Mailradar.com} from YYYY \citeweb{mailradar:mta-stats} , and the third by \textsc{Daniel~J.\ Bernstein} (the author of \name{qmail}) done in 2001 \citeweb{djb:mta-stats}.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
75
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
76 \begin{table}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
77 \begin{center}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
78 \input{input/mta-market-share.tex}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
79 \end{center}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
80 \caption{Market share of \MTA{}s}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
81 \label{tab:mta-market-share}
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
82 \end{table}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
83
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
84 Other members of the same group are: \name{smail}, \name{zmailer}, \name{mmdf}, and \name{courier-mta}. They all are less important and rarely used, thus ommited here.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
85
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
86
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
87 Now follows a small introduction to the five programs chosen for comparison, except \masqmail\ which already was introduced in chapter \ref{chap:introduction}. Longer introductions, including analysis and comparison, were written by \textsc{Jonathan de Boyne Pollard} \citeweb{jdebp}.
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
88
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
89
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
90
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
91 \subsubsection*{sendmail}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
92 \label{sec:sendmail}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
93 \sendmail\ is the most popular \mta, since it was one of the first and was shipped as default \MTA{}s by many vendors of \unix\ systems. %fixme: ref
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
94
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
95 The program was written by Eric Allman as the successor of his program \name{delivermail}. \sendmail\ was first released with \NAME{BSD} 4.1c in 1983. Allman was not the only one working on the program. Other people developed own versions of it and a variety of flavors came up, especially in the late eighties when Allman was inactive. %fixme: ref
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
96
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
97 \sendmail\ is focused on transferring mails between different protocols and networks, this lead to a very flexible (though complex) configuration.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
98
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
99 The latest version is 8.14.3 from May 2008. The program is distributed under the \name{Sendmail License} as both, \freesw\ and proprietary software of \name{Sendmail, Inc.}.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
100
128
6f622eb5c812 some sentences about MTA comparison
meillo@marmaro.de
parents: 126
diff changeset
101 Further development will go into the project \name{MeTA1} (the former name was \name{sendmail X}) which succeeds \sendmail.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
102
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
103 More information can be found on the \sendmail\ homepage \citeweb{sendmail:homepage}.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
104
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
105
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
106
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
107 \subsubsection*{exim}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
108 \label{sec:exim}
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
109 \name{exim} was started in 1995 by Philip Hazel at the \name{University of Cambridge}. It is forked of \name{smail-3}, and inherited the monolithic architecture, similar to \sendmail's. But having no separation of the individual components of the system, like \name{qmail} and \name{postfix} have, did not hurt. Its security is comparably good. %fixme: ref
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
110
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
111 \name{exim} is highly configurable, especially in the field of mail policies. This makes it easy to specify how mail is routed through the system and who is allowed to send email to whom. Also interfaces for integration of virus and spam check programs are provided by design. %fixme: ref
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
112
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
113 The program is \freesw, released under the \GPL. The latest stable version is 4.69 from December 2007.
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
114
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
115 One finds \name{exim} on its homepage \citeweb{exim:homepage}.
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
116
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
118
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
119 \subsubsection*{qmail}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
120 \label{sec:qmail}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
121 \name{qmail} is seen by its community as ``a modern SMTP server which makes sendmail obsolete''.%fixme: ref
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
122 It was written by Daniel~J.\ Bernstein starting in 1995. His primary goal was to create a secure \MTA\ to replace the popular, but vulnerable, \sendmail. %fixme: ref
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
123
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
124 \name{qmail} first introduced many innovative concepts in \mta\ design and is generally seen as the first security-aware \MTA\ developed. %fixme:ref
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
125 %fixme: what about mmdf?
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
126
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
127 Since November 2007, \name{qmail} is released in the \name{public domain} which makes it \freesw. The latest release is 1.03 from July 1998.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
128
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
129 The programs homepages are \citeweb{qmail:homepage1} and \citeweb{qmail:homepage2}. Further information about \name{qmail} is available with Dave Sill's ``Life with qmail'' \citeweb{lifewithqmail}.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
130
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
131
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
132
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
133 \subsubsection*{postfix}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
134 \label{sec:postfix}
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
135 The \name{postfix} project was started in 1999 at \name{IBM research}, then called \name{VMailer} or \name{IBM Secure Mailer}. Wietse Venema's program ``attempts to be fast, easy to administer, and secure. The outside has a definite Sendmail-ish flavor, but the inside is completely different.''\citeweb{postfix:homepage} In fact, \name{postfix} was mainly designed after qmail's architecture to gain security. But in contrast to \name{qmail} it aims much more on being fast and full-featured.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
136
119
73fe291f79e6 added missing backslashes
meillo@marmaro.de
parents: 117
diff changeset
137 Today \name{postfix} is taken by many \unix\ systems and \gnulinux\ distributions as default \MTA.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
138
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
139 The latest stable version is numbered 2.5.5 from August 2008. \name{postfix} is covered by the \name{IBM Public License 1.0} which is a \freesw\ license.
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
140
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
141 Additional information is available on the program's homepage \citeweb{postfix:homepage}.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
142
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
143
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
144
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
145
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
146
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
147
120
3b5e6ffd7b27 typographic cleanups
meillo@marmaro.de
parents: 119
diff changeset
148 \section{Comparison of MTAs}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
149
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
150 This section tries not to provide an overall \MTA\ comparison, because this is already done by others. Remarkable are the one by Shearer \cite{shearer06} and an email discussion on the mailing list \name{plug@lists.q-linux.com} \citeweb{plug:mtas}. Tabulary overviews may be found at \citeweb{mailsoftware42} and \citeweb{wikipedia:comparison-of-mail-servers}.
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
151
128
6f622eb5c812 some sentences about MTA comparison
meillo@marmaro.de
parents: 126
diff changeset
152 Here provided is an overview on a selection of important properties, covering the four previously introduced programs. The data comes from the above stated sources and is collected in table \ref{tab:mta-comparison}.
6f622eb5c812 some sentences about MTA comparison
meillo@marmaro.de
parents: 126
diff changeset
153
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
154
121
0d34a3283c1c added masters thesis by Munawar Hafiz, but text talking about it is still missing
meillo@marmaro.de
parents: 120
diff changeset
155
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
156 \begin{table}
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
157 \begin{center}
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
158 \input{input/mta-comparison.tex}
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
159 \end{center}
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
160 \caption{Comparison of MTAs}
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
161 \label{tab:mta-comparison}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
162 \end{table}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
163
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
164
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
165
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
166 \subsection{About architecture}
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
167
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
168 Hafiz \cite{hafiz05} discusses in detail on \mta\ architecture (comparing \sendmail, \name{qmail}, \name{postfix}, and \name{sendmail X}).
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
169
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
170
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
171 \url{http://archives.neohapsis.com/archives/postfix/2006-07/1762.html} %sloc evolution of postfix, sendmail, qmail
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
172
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
173
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
174
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
175 \subsection{Security comparison}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
176
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
177
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
178
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
179
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
180
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
181
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
182 \paragraph{Ref back to \ref{sec:what-will-be-important}}
126
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
183
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
184 provider indepencence -> easy config:
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
185 \sendmail\ and \name{qmail} appear to have bad positions at this point. Their configuration is complex, thus they would need simplification wrappers around them to provide easy configuration.
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
186
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
187 performance not so important:
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
188 \name{postfix} focuses much on performance, this might not be an important point then.
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
189
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
190 security:
27ddf2506157 outsourced floats; minor stuff
meillo@marmaro.de
parents: 124
diff changeset
191 It seems as if all widely used \mta{}s provide good security nowadays. \name{qmail}'s architecture, also used in \name{postfix}, is generally seen to be conceptually more secure, however.
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
192
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
193
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
194
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
195 \paragraph{local mail delivery}
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
196 But for example delivery of mail to local users is \emph{not} what \mta{}s should care about, although most \MTA\ are able to deliver mail, and many do. (\name{mail delivery agents}, like \name{procmail} and \name{maildrop}, are the right programs for this job.)
93
a6f8a93abd64 new chapter 4 (split ch5); added lots of annotations
meillo@marmaro.de
parents: 92
diff changeset
197
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
198
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
199 \paragraph{various protocols}
124
1cb6a2f5f077 spell checking done
meillo@marmaro.de
parents: 121
diff changeset
200 protocols like \NAME{SMTP} and \NAME{UUCP}, between which mail is transferred.\footnote{\sendmail{}'s initial purpose was moving mail between \NAME{UUCP}, \NAME{SMTP}, and \name{Berknet}.}
89
3b5ba7331eb5 complete restructuring of whole document
meillo@marmaro.de
parents:
diff changeset
201
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
202
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
203
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
204
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
205
117
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
206
098bd0876934 worked on ch03 (MTAs)
meillo@marmaro.de
parents: 116
diff changeset
207
130
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
208
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
209 << complexity >> << security >> << simplicity of configuration and administration >> << flexibility of configuration and administration >> << code size >> << code quality >> << documentation (amount and quality) >> << community (amount and quality) >> << used it myself >> << had problems with it >>
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
210
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
211
6ce355da579f market share stuff and more
meillo@marmaro.de
parents: 128
diff changeset
212 << quality criteria >> << standards of any kind >> << how to compare? >> << (bewertungsmatrix) objectivity >> << how many criteria for ``good''? >>