docs/diploma

diff thesis/tex/1-Introduction.tex @ 275:003410b64739

new texts and rework in ch01: online routes, why masqmail
author meillo@marmaro.de
date Thu, 15 Jan 2009 15:27:03 +0100
parents ddfb228a62a4
children 591217f50f69
line diff
     1.1 --- a/thesis/tex/1-Introduction.tex	Thu Jan 15 12:35:19 2009 +0100
     1.2 +++ b/thesis/tex/1-Introduction.tex	Thu Jan 15 15:27:03 2009 +0100
     1.3 @@ -148,7 +148,6 @@
     1.4  \end{description}
     1.5  
     1.6  
     1.7 -
     1.8  In general, all kinds of usage scenarios within a trusted network are possible. Important to notice is that mail can not be send from outside into the trusted network then. For using \masqmail\ on notebooks it is suggested to only accept mail from local users, because notebooks are often in untrusted environments. This limitation leads to the next section.
     1.9  
    1.10  
    1.11 @@ -212,7 +211,7 @@
    1.12  
    1.13  Outgoing \SMTP\ connections feature \SMTP-\NAME{AUTH} and \SMTP-after-\NAME{POP} authentication, but incoming connections do not. Using wrappers for outgoing connections is supported. This allows encrypted communication through a gateway application like \name{openssl}.
    1.14  
    1.15 -Mail queuing and alias expansion is both supported.
    1.16 +Mail queuing is essential for \masqmail\ and supported of course, alias expansion is also supported.
    1.17  
    1.18  The \masqmail\ executable can be called under various names for sendmail-compatibility reasons (see section \ref{sec:sendmail-compat}). This is organized by symbolic links with different names pointing to the \masqmail\ executable. The \sendmail\ names are \path{/usr/lib/sendmail} and \path{/usr/sbin/sendmail} because many programs expect the \mta\ to be located there. Further more \sendmail\ supports calling it with a different name instead of supplying command line arguments. The best known of this shortcuts is \path{mailq}, which is equivalent to calling it with the argument \verb+-bq+. \masqmail\ recognizes the shortcuts \path{mailq}, \path{smtpd}, \path{mailrm}, \path{runq}, \path{rmail}, and \path{in.smtpd}. The first two are inspired by \sendmail. Not implemented is the shortcut \path{newaliases} because \masqmail\ does not generate binary representations of the alias file.\footnote{A shell script named \path{newaliases}, that invokes \texttt{masqmail -bi}, can provide the command to satisfy other software needing it.} \path{hoststat} and \path{purgestat} are missing for complete sendmail-compatibility.
    1.19  %masqmail: mailq, mailrm, runq, rmail, smtpd/in.smtpd
    1.20 @@ -225,45 +224,48 @@
    1.21  \subsubsection*{Online detection and routes}
    1.22  \label{sec:masqmail-routes}
    1.23  
    1.24 -\masqmail\ focuses on non-permanent online connections, thus a concept of online routes is used. One may configure any number of routes to send mail. Each route can have criteria to determine if some message is allowed to be sent over it. This concept is explained in section \ref{sec:masqmail-routes} in detail. Mail to destinations outside the local network gets queued until an online connections is available.
    1.25 +\masqmail\ focuses on handling different non-permanent online connections, thus a concept of online routes is used. One may configure any number of routes to send mail. Each route can have criteria to determine if some message is allowed to be sent over it. Mail to destinations outside the local network gets queued until a suitable online connections is available.
    1.26  
    1.27 -\masqmail\ queues mail for destinations outside the local network if no connection to the internet is online. If the machine goes online, this mail is sent. Mail to local machines is sent immediately.
    1.28 +The background of this concept was the send mail to the Internet while using one of a set of dial-up Internet connection from different \NAME{ISP}s. It was quite common that \NAME{ISP}s accepted mail for relay only if it came over a connection they managed. This means, one was not able to relay mail over the mail server of \NAME{ISP}\,1 while being online over the connection of \NAME{ISP}\,2. \masqmail\ is a solution to the wish of switching the relaying mail server easily.
    1.29  
    1.30 -\masqmail\ sends mail to local destinations, like users on the same machine and on other machines in the local net, immediately. Email to recipients outside the local net are queued when offline and sent when a online connection gets established.
    1.31 +Related is \masqmail's ability to rewrite the send's email address dependent on which \NAME{ISP} is used. This prevents mail from being likely classified as spam.
    1.32  
    1.33 -Further more does \masqmail\ respect online connections through different \NAME{ISP}s; a common thing for dial-up connections. In particular can different sender addresses be set, dependent on the \NAME{ISP} that is used. This prevents mail to be likely classified as spam.
    1.34 ----
    1.35 +To react on the different situations, \masqmail\ needs to query the current online state. Is an online connection available, and if it is, which one? Three methods are implemented: (1) Reading from a file, (2) reading the output of a command, and (3) by asking an \name{mserver} system. Each method may return a string naming the routes that is online or returning nothing to indicate offline state.
    1.36  
    1.37 -As \masqmail\ is focused on non-permanent Internet connections, online state can be queried by three methods: reading from a file, reading the output of a command, or by asking an \name{mserver}. Each method may return a string indicating one of the available routes being online, or returning nothing to indicate offline state.
    1.38  
    1.39 -Delivery to recipients on the local host or in local nets is done at once; delivery to recipients on the Internet is only done when being online, and queued otherwise. Each online route may have a different mail server to which mail is relayed. Return address headers are modified appropriate if wished.
    1.40 +Mail for hosts within the local network or for users on the local machine is not touched by this concept, it is always sent immediately.
    1.41  
    1.42 ----
    1.43  
    1.44 -\masqmail\ focuses on non-permanent online connections, thus a concept of online routes is used. One may configure any number of routes to send mail. Each route can have criteria, like matching \texttt{From:} or \texttt{To:} headers, to determine if some message is allowed to be sent over it. Mail to destinations outside the local network gets queued until an online connections is available.
    1.45  
    1.46  
    1.47  
    1.48  
    1.49  
    1.50  
    1.51 +\section{Why \masqmail\ is worthy}
    1.52  
    1.53 +First of all, \masqmail\ is better suited for its target field of operation (multiple non-permanent online connections) than every other \MTA. Especially is such usage easy to set up because \masqmail\ was designed for that.
    1.54  
    1.55 +Additionally does \masqmail\ make it easy to run an \MTA\ on workstations or notebooks. There is no need to do complex configuration or to be a mail server expert. Only a handful of options need to be set; the hostname, the local networks, and one route for relaying are sufficient in most times. %fixme: is that true?
    1.56  
    1.57 +Not to forget is \masqmail's size. It is much smaller than full-blown \MTA{}s like \sendmail, \postfix, or \exim, and still smaller than \qmail. (See section \ref{sec:mta-comparison} for details.) This makes \masqmail\ a good choice for workstations or even embedded computers.
    1.58  
    1.59 -\section{Why \masqmail?}
    1.60  
    1.61 -As main advantage, \masqmail\ makes it easy to set up an \MTA\ on workstations or notebooks without the need to do complex configuration or to be an mail server expert.
    1.62 +Although development on \masqmail\ stopped in 2003 it still has its users. Having users is alone reason enough for futher development and maintenance. Especially if the software covers a niche, and especially if requirements for such software in general change.
    1.63  
    1.64 -Workstations use %FIXME
    1.65 +It is difficult to get numbers about users of Free Software, because no one needs to tell anyone when he uses some software. \debian's \name{popcon} statistics \citeweb{debian:popcon} are a try to provided numbers. The statistics report 61 \masqmail\ installations, in January 2009. If it is assumed that two third of all \debian\ users report their installed software, there would be in total around 90 \masqmail\ installations in \debian. As \masqmail\ is also distributed with \name{Ubuntu} and FIXME %fixme
    1.66 +, the number is incremented by the guessed number of further 30 systems with \masqmail\ on it. Including an additional amount of 20 installations on operating systems that do not ship \masqmail\ makes about 140 \masqmail\ installations in total. Of course one person may have \masqmail\ installed on more than one computer, but a total of 100 different users seems to be a good guess.
    1.67  
    1.68 -\textbf{Alternatives?}
    1.69 - http://anfi.homeunix.org/sendmail/dialup10.html
    1.70 +Software that is used should be developed and maintained.
    1.71  
    1.72  
    1.73 -<< explain why masqmail is old and why it is interesting/important however! >>
    1.74 +% alternative: http://anfi.homeunix.org/sendmail/dialup10.html
    1.75  
    1.76 -<< why is it worth to revive masqmail? >>
    1.77 +%<< hikernet >>
    1.78 +
    1.79 +%<< explain why masqmail is old and why it is interesting/important however! >>
    1.80 +
    1.81 +%<< why is it worth to revive masqmail? >>
    1.82  
    1.83  
    1.84  
    1.85 @@ -273,11 +275,9 @@
    1.86  
    1.87  \section{Problems to solve}
    1.88  
    1.89 -<< what problems has masqmail? >>
    1.90 +A program, that no one has developed further for nearly six years, that is located in a field of operation that changed during that time, surely needs improvement. Security and spam have now highly increased importance compared to 2003. Dial-up connections became rare---broadband flatrates are common now. Other \MTA{}s evolved in respect to theses changes, \masqmail\ did not.
    1.91  
    1.92 -<< what's the intention of this document? >>
    1.93 -
    1.94 -<< why is it worth the effort? >>
    1.95 +The current and trends for a future market situation needs to be identified. Looks at other \MTA{}s need to be taken. And required work on \masqmail\ needs to be defined in combination with the evaluation of strategies to do this work. Finally a plan for further development should be created.
    1.96  
    1.97  
    1.98  
    1.99 @@ -287,7 +287,11 @@
   1.100  
   1.101  << limit against stuff not covered here >>
   1.102  
   1.103 -pop3 stuff of masqmail is not regarded.
   1.104 +No installation guide for \masqmail.
   1.105  
   1.106 +No description of \masqmail's source code, bit by bit.
   1.107  
   1.108 +The \NAME{POP3} functionality of \masqmail\ is not regareded.
   1.109  
   1.110 +
   1.111 +