%
% Achtung: Dateien muessen mit latin1-Encoding gespeichert werden!
% Attention: Files must be saved using latin1 encoding!
%

\chapter{VMail (eisfair-2) - Mailserver f"ur systemunabh"angige (virtuelle) E-Mailkonten}
\emph{Version 1.2.6 - Stand 2012-01-23\\
(c) Jens Vehlhaber  <jvehlhaber[at]buchenwald[dot]de>}

\section{Allgemeines}
\begin{itemize}
\item Das Paket wurde entwickelt als Domain-MX oder Backup-MX Server f"ur mittlere
      bis gr"o"sere Benutzergruppen.
\item Es lassen sich beliebig viele Domains unabh"angig voneinander und auch
      unabh"angig von den Linux-Systembenutzern, verwalten.
      (h.mueller@domain1.tld ist ein anderes Postfach als
      h.mueller@domain2.tld)
\item Benutzer, Domains und Fetchmaildaten werden ohne Neustart im laufenden
      Betrieb hinzugef"ugt oder gel"oscht. (Benutzerdaten liegen in MySQL Tabellen)
\item Hinterlegte Passw"orter werden in den MySQL-Tabellen nicht im Klartext 
      gespeichert.
\item Es wurde generell auf Performance-bremsende Scriptsprachen im E-Mail-Weg
      verzichtet.
\item Nutzung des schnellen Maildir+ an Stelle des Mbox Formates zur
      Mailspeicherung.
\item Sieve Filtersprache erm"oglicht Um- und Weiterleitungen von Nachrichten.
      Diese k"onnen zeitgesteuert zu und abgeschaltet werden.
\item Paralleler Einsatz mehrere Virenscanner "uber die Milter Schnittstelle ist
      m"oglich.
\end{itemize}

Folgende Programme sind im Paket enthalten:
\begin{itemize}
\item Postfix: Der eigentliche MTA (Mail Transfer Agent) welcher die E-Mail vom
      Absender zum Empf"anger transportiert.
\item Dovecot: Mit den Protokollen POP3 und IMAP (inkl. SSL und TLS) erm"oglicht
      es den Zugriff auf die Postf"acher der virtuellen Benutzer.
\item DRACD Dynamic Relay Authorization Deamon ist eine M"oglichkeit, einem
      externen Benutzer das Versenden von Mails zu erlauben. Auch bekannt unter
      ''POP before SMTP''.
\item SMC-Milter ist eine Schnittstelle zum Virenscanner ClamAV und zu weiteren
      Antivirenprogrammen. Wird ein Virus gefunden, so wird die E-Mail nicht
      angenommen. Gleichzeitig kann er ausgehende E-Mails mit einer Sigantur
      versehen.
\item Fetchmail: zum Abholen der E-Mailnachrichten von externen Servern.
\end{itemize}

Nicht im Paket enthalten, aber empfohlen werden die Pakete:
\begin{itemize}
\item MySQL: Der Datenbankserver kann auch auf einem anderen Computer
      installiert sein.
\item Clamav: der Virenscanner.
\item Greylist: Der optional installierbare Greylisting Daemon soll das 
      Spamunwesen etwas eind"ammen. Da etliche Spambots aber das periodische 
      Versenden von Nachrichten beherrschen, wird das Tool aber immer weniger
      sinnvoll. Das integrierte Postscreen im vmail-Paket ist hier eine 
      Alternative.
\end{itemize}

\section{Installation und Konfiguration}
\subsection{Installation}
\begin{itemize}
\item Ein MySQL Server muss installiert oder auf einem anderen Computer
      erreichbar sein. Das Kennwort des MySQL User root sollte bekannt sein. 
\item Der Virenscanner Clamav sollte installiert sein.
\item Starten der Vmail Konfiguration im Menue.
\item Eintragen der IP-Adresse des MySQL Servers oder belassen des Wertes
      auf localhost, wenn der MySQL Server auf dem Vmail Server l"auft.
\item Setzen weiterer Optionen wie dem Virenscanner.
\item Speichern der Konfiguration.
\item Eintragen der E-Mail Domain(s) im Men"upunkt ''User \& Domain
       administration'' \pfeil ''E-Mail Domain administration''
      Der Parameter Transport sollte bei lokaler E-Mail Zustellung auf
      ''pop3imap:'' stehen. Mit ''smtp:'' werden alle E-Mails an die
      darunterstehende IP-Adresse weitergeleitet.
\item Eintragen der E-Mail Benutzer im Men"upunkt ''User \& Domain 
      administration'' \pfeil ''E-Mail user administration'' 
\end{itemize}

Alle Benutzerverzeichnisse werden automatisch erstellt, wenn entweder eine
E-Mail zugestellt wird oder der Benutzer sich das erste mal per POP3 oder
IMAP anmeldet.\\
Die Benutzerdaten in den MySQL Tabellen k"onnen "uber den Men"upunkt
''User \& domain administration'' in einem speziellen Curses-Programm einfach
und schnell verwaltet werden. Ein Suchdialog erlaubt die Anzahl der
angezeigten Benutzeintr"age zu reduzieren und damit das schnelle Finden und
Bearbeiten von Benutzern auch in sehr gro"sen Datenbest"anden.


\subsection{Konfiguration}
Die Konfiguration kann "uber den Men"upunkt ''Edit Configuration'' ge"andert
werden. Nach Beendigung des Editors erfolgt eine automatische Fehlerpr"ufung.
Werden Fehler festgestellt, so sollten die entsprechenden Eintr"age in jedem
Fall korrigiert werden!\\

\begin{description}
\config{START\_VMAIL}{START\_VMAIL}{STARTVMAIL}
    {Legt fest, ob der E-Mail Server automatisch gestartet wird.

    G"ultige Werte: \emph{yes,no}}

\config{VMAIL\_SQL\_HOST}{VMAIL\_SQL\_HOST}{VMAILSQLHOST}
    {IP-Adresse oder ''localhost'' des MySQL Servers. Dieser braucht nicht
    auf dem E-Mail Server selber installiert zu sein.}

\config{VMAIL\_SQL\_USER}{VMAIL\_SQL\_USER}{VMAILSQLUSER}
    {Benutzername fuer die E-Mail Datenbank auf dem MySQL Server.

    Beispiel: \emph{VMAIL\_SQL\_USER='vmailprovider'}}

\config{VMAIL\_SQL\_PASS}{VMAIL\_SQL\_PASS}{VMAILSQLPASS}
    {Passwort f"ur den unter VMAIL\_SQL\_USER eingetragenen Benutzer.
    Der Vorgabewert nach der Installation wird aus mehrern Zufallszahlen
    gebildet.}

\config{VMAIL\_SQL\_DATABASE}{VMAIL\_SQL\_DATABASE}{VMAILSQLDATABASE}
    {Name der E-Mail Datenbank.

    Beispiel: \emph{VMAIL\_SQL\_DATABASE='vmaildata'}}

\config{VMAIL\_SQL\_ENCRYPT\_KEY}{VMAIL\_SQL\_ENCRYPT\_KEY}{VMAILSQLENCRYPTKEY}
    {Passwort zur Kodierung der Benutzerpasswoerter in der E-Mail Datenbank.
    Dieser Wert darf nach Anlegen des ersten Benutzers nicht mehr
    Veraendert werden! 
    Der Vorgabewert nach der Installation wird aus mehreren Zufallszahlen
    gebildet.}

\config{VMAIL\_LOGIN\_WITH\_MAILADDR}{VMAIL\_LOGIN\_WITH\_MAILADDR}{VMAILLOGINWITHMAILADDR}
    {Wenn der Wert auf 'yes' steht, muss zum Anmelden an den Server die
    komplette E-Mailadresse verwendet werden.\\
    So k"onnen Benutzer in unterschiedlichen Dom"anen den gleichen Namen
    tragen. Im Beispiel sind die folgenden Namen somit unterschiedlichen
    Postf"achern zugeordnet:\\
    h.mueller@foo.tld\\
    h.mueller@bar.tld

    G"ultige Werte: \emph{yes,no}}

\config{START\_POSTFIX}{START\_POSTFIX}{STARTPOSTFIX}
    {Legt fest, ob der eigentliche MTA (Mail Transfer Agent), welcher die
    E-Mail vom Absender zum Empf"anger transportiert, als Dienst gestartet
    werden soll.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_SMTP\_TLS}{POSTFIX\_SMTP\_TLS}{POSTFIXSMTPTLS}
    {Aktiviert Transportsicherheit f"ur das Senden von E-Maildaten.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX \_HELO\_HOSTNAME}{POSTFIX \_HELO\_HOSTNAME}{POSTFIXHELOHOSTNAME}
    {Legt den Namen fest, mit dem sich Postfix nach aussen pr"asentiert. (HELO
    und EHLO Name). Dieser sollte identisch mit dem externen DNS-Namen des
    Servers sein und muss nicht mit dem internen Hostnamen "ubereinstimmen.}

\config{POSTFIX\_AUTOSIGNATURE}{POSTFIX\_AUTOSIGNATURE}{POSTFIXAUTOSIGNATURE}
    {An jede ausgehende E-Mail kann eine Signatur anghaengt werden, wenn
    eine solche noch nicht vorhanden ist. Steht in der Tabelle virtual\_users
    fuer den Benutzer ein Eintrag im Feld signature, dann wird dieser 
    verwendet.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_ALTERNATE\_SMTP\_PORT}{POSTFIX\_ALTERNATE\_SMTP\_PORT}{POSTFIXALTERNATESMTPPORT}
    {Erm"oglicht das Nutzen eines zus"atzlichen SMTP-Ports auf einer
    alternativen Adresse. Das kann bei Installationen hinter einer Firewall
    hilfreich sein. Werte kleiner als 26 deaktivieren diesen Port.

    Beispiel: \emph{5025}}

\config{POSTFIX\_QUEUE\_LIFETIME}{POSTFIX\_QUEUE\_LIFETIME}{POSTFIXQUEUELIFETIME}
    {Der Wert (Tage) ver"andert die Pufferdauer nicht zustellbarer E-Mails.
    Bei Verwendung als Backup-MX-Server kann eine Erh"ohung des Wertes
    sinvoll sein. Normalerweise werden Mails 5 Tage gespeichert, bis eine
    "nicht zustellbar" - Meldung an den Absender erfolgt.

    Beispiel: \emph{5}}
    
\config{POSTFIX\_DRACD}{POSTFIX\_DRACD}{POSTFIXDRACD}
    {Erm"oglicht einem externen Benutzer das Versenden von E-Mails. Auch
    bekannt unter dem Namen ''POP before SMTP''.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_RELAY\_FROM\_NET\_N}{POSTFIX\_RELAY\_FROM\_NET\_N}{POSTFIXRELAYFROMNETN}
    {E-Mailversand aus diesen Netzen wird generell akzeptiert.

    Beispiel: \emph{3}}

\config{POSTFIX\_RELAY\_FROM\_NET\_x}{POSTFIX\_RELAY\_FROM\_NET\_x}{POSTFIXRELAYFROMNETx}
    {Netzwerk aus dem der Versand von E-Mail ohne DRACD u."a. akzeptiert
    wird. (Internes Netz)

    Beispiel: \emph{172.16.0.0/16}}

\config{POSTFIX\_SMARTHOST}{POSTFIX\_SMARTHOST}{POSTFIXSMARTHOST}
    {Aktiviert das Versenden von E-Mails ueber externe Mailserver.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_LIMIT\_DESTINATIONS}{POSTFIX\_LIMIT\_DESTINATIONS}{POSTFIXLIMITDESTINATIONS}
    {Maximale Anzahl der gleichzeitigen E-Mail Empf"anger. Wird u.a. 
    f"ur Serienmails ben"otigt.
    
    G"ultige Werte: \emph{> 10}}
    
\config{POSTFIX\_LIMIT\_MAILSIZE}{POSTFIX\_LIMIT\_MAILSIZE}{POSTFIXLIMITMAILSIZE}
    {Maximale Gr"osse einer E-Mail Nachricht in MB.

    G"ultige Werte: \emph{> 10}}

\config{POSTFIX\_REJECT\_UNKN\_CLIENT}{POSTFIX\_REJECT\_UNKN\_CLIENT}{POSTFIXREJECTUNKNCLIENT}
    {E-Mails von Mailservern ohne DNS-Eintrag werden verweigert. Das kann zu
    Problemen f"uhren, da einige Mailserver leider durch Firewalls u."a. ihre
    E-Mail ohne korrekten DNS-Hostnamen versenden.
    Diese Option entspricht dem Benutzereintrag mailprotect=1.

    Voreinstellung: \emph{no}}

\config{POSTFIX\_REJECT\_UNKN\_SEND\_DOM}{POSTFIX\_REJECT\_UNKN\_SEND\_DOM}{POSTFIXREJECTUNKNSENDDOM}
    {E-Mails von unbekannten Absender-Domains (wenn diese keinen DNS Record
    vom Typ MX oder A besitzen) werden verweigert.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_REJECT\_NON\_FQDN\_HOST}{POSTFIX\_REJECT\_NON\_FQDN\_HOST}{POSTFIXREJECTNONFQDNHOST}
    {E-Mails von Absendern die keinen vollst"andig g"ultigen Hostnamen
    "ubermitteln (host.domain.tld), werden verweigert.

    G"ultige Werte: \emph{yes,no}}


% ab hier weiter -lanspezi

\config{POSTFIX\_RBL}{POSTFIX\_RBL}{POSTFIXRBL}
    {Nutzung einer oder mehrerer externer Realtime Blackhole List Server zur
    Spamabwehr.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_RBL\_N}{POSTFIX\_RBL\_N}{POSTFIXRBLN}
    {Anzahl verwendeter externer RBL-Server.

    Beispiel: \emph{2}}

\config{POSTFIX\_RBL\_x\_SERVER}{POSTFIX\_RBL\_x\_SERVER}{POSTFIXRBLxSERVER}
    {Name des externen RBL-Servers.

    Beispiel: \emph{relays.ordb.org}}



\config{POSTFIX\_MIME\_HEADER\_CHECK}{POSTFIX\_MIME\_HEADER\_CHECK}{POSTFIXMIMEHEADERCHECK}
    {Die Zustellung von ausf"uhrbaren Programmen (EXE, BAT...) als E-Mail-
    Anhang, wird mit einem entsprechenden Hinweistext an den Absender
    unterbunden.

    G"ultige Werte: \emph{yes,no}}

\config{POSTFIX\_HEADER\_N}{POSTFIX\_HEADER\_N}{POSTFIXHEADERN}
    {Durch Filtern der E-Mail-Header der Absender k"onnen unerw"uschte Absender
    ausgefiltert werden. \\
    Hier wird die Anzahl der verwendeten Filter eingetragen.

    Beispiel: \emph{1}}

\hinweis{Globale Filtereintr"age sollten nur sehr sparsam verwendet werden,
         da sie alle Postf"acher betreffen. Und eventuell m"ochte der eine oder
         andere E-Mailnutzer gerade die Nachricht haben, die hier ausgefiltert
         wird.}

\config{POSTFIX\_HEADER\_x\_CHECK}{POSTFIX\_HEADER\_x\_CHECK}{POSTFIXHEADERxCHECK}
    {Filtereintrag.}

\begin{verbatim}
    Beispiel:  '^Date:.*[+-](1[4-9]|2\d)\d\d$'
\end{verbatim}

\config{POSTFIX\_HEADER\_x\_HANDL}{POSTFIX\_HEADER\_x\_HANDL}{POSTFIXHEADERxHANDL}
    {Handlung bei Zutreffen des Filtereintrages\\
    G"ultige Operationen sind:\\
    DISCARD  Die E-Mail wird ohne R"uckmeldung gel"oscht\\
    DUNNO    Keine Operation ausf"uhren\\
    FILTER   Ein Filter wird gestartet\\
    HOLD     Die Mail wird gehalten\\
    IGNORE   Die aktuelle Zeile wird gel"oscht\\
    OK       Die E-Mail wird angenommen\\
    PREPEND  Ein zus"atzlicher Header wird eingef"ugt\\
    REDIRECT Die E-Mail wird umgeleitet\\
    REPLACE  Die aktuelle Zeile wird ersetzt\\
    REJECT   Die E-Mail wird abgelehnt\\
    WARN     Eine Warnung wird in das Logfile eingetragen\\
    450 [Text] Die E-Mail wird mit einem tempor"aren Fehler abgelehnt\\
    550 [Text] Die E-Mail wird mit einem permanenten Fehler abgelehnt\\

    Beispiel: \emph{REJECT invalid timezone}}

\hinweis{F"ur Mailinglisten k"onnen hier automatisch Reply-To: Header
         eingef"ugt werden.\\
         POSTFIX\_HEADER\_x\_CHECK='To:.*mailing1@domain.tld'\\
         POSTFIX\_HEADER\_x\_HANDL='PREPEND Reply-To: mailing1@domain.tld'
         }

\config{POSTFIX\_CLIENT\_N}{POSTFIX\_CLIENT\_N}{POSTFIXCLIENTN}
    {Hier k"onnen unerw"unschte Mailversender an Hand ihrer Netzwerkadresse
    (IP oder DNS-Name) ausgesperrt werden.\\
    Alle Computer, die keine offiziellen, also f"ur Antworten erreichbare
    E-Mailserver sind, sollten auch keine E-Mail direkt zustellen.

    Beispiel: \emph{1}}

\hinweis{Etliche Filtereintr"age zum Ausfiltern von unerw"unschten E-Mailversendern
         sind bereits in der Datei:\\
         /etc/postfix/access\_clientblocks.pcre.default vordefiniert.}

\config{POSTFIX\_CLIENT\_x\_CHECK}{POSTFIX\_CLIENT\_x\_CHECK}{POSTFIXCLIENTxCHECK}
    {Hier steht z. B. die Absenderkennung eines PPP-Dialin Zuganges.}
\begin{verbatim}
    Beispiel: '^ras[0-9]'
\end{verbatim}

\config{POSTFIX\_CLIENT\_x\_HANDL}{POSTFIX\_CLIENT\_x\_HANDL}{POSTFIXCLIENTxHANDL}
    {Nat"urlich sollte der Absender auch informiert werden, warum wir seine
    E-Mail nicht wollen. Es k"onnte ja aus versehen doch kein Spam sein.\\
    Ferner sind alle unter POSTFIX\_HEADER\_x\_HANDL aufgelisteten Operationen
    anwendbar.

    Beispiel: \emph{550 No RAS client. Use an authorized relay}}

\config{POSTFIX\_AV\_CLAMAV}{POSTFIX\_AV\_CLAMAV}{POSTFIXAVCLAMAV}
    {Nutzung von ClamAV als Virenscanner.

    G"ultige Werte: \emph{ yes,no}}

\config{POSTFIX\_AV\_VIRUS\_INFO}{POSTFIX\_AV\_VIRUS\_INFO}{POSTFIXAVVIRUSINFO}
    {Neben dem eigentlichen Adressaten wird auch der hier eingetragene
    Empf"anger "uber gefundenen Virusmails informiert.\\
    Bleibt der Eintrag leer, so erfolgt keine Benachrichtigung.

    Beispiel:  \emph{root@localhost}}

\config{POSTFIX\_AV\_QUARANTINE}{POSTFIX\_AV\_QUARANTINE}{POSTFIXAVQUARANTINE}
    {Speichert die Virusmail in einem speziellen Verzeichnis unter
    /var/spool/postfix/var/clamav/quarantine

    G"ultige Werte:  \emph{yes,no}}

\config{POSTFIX\_AV\_SCAN\_N}{POSTFIX\_AV\_SCAN\_N}{POSTFIXAVSCANN}
    {Anzahl zus"atzliche Milter-basierter Virenscanner.\\
     Mehrere Virenscanner k"onnen parallel verwendet werden.}

\config{POSTFIX\_AV\_SCAN\_x\_USE}{POSTFIX\_AV\_SCAN\_x\_USE}{POSTFIXAVSCANxUSE}
    {Aktiviert den zus"atzlichen Scanner.

    G"ultige Werte:  \emph{yes,no}}

\config{POSTFIX\_AV\_SCAN\_x\_SOCK}{POSTFIX\_AV\_SCAN\_x\_SOCK}{POSTFIXAVSCANxSOCK}
    {Socket oder Port der Milter-Schnittstelle.

    Beispiel:  \emph{unix:/var/run/f-prot-milter.sock}
    oder:      \emph{inet:12200@127.0.0.1}}

\config{POSTFIX\_DSPAM}{POSTFIX\_DSPAM}{POSTFIXDSPAM}
    {Schaltet den Antispam Dienst DSPAM zu. E-Mails werden dadurch mit dem
    X-DSPAM Header markiert.

    G"ultige Werte:  \emph{yes,no}}

\config{POSTFIX\_DSPAM\_GLOBAL\_DATA}{POSTFIX\_DSPAM\_GLOBAL\_DATA}{POSTFIXDSPAMGLOBALDATA}
    {Erkannte oder trainierte Spamsignaturen werden f"ur alle E-Mailpostf"acher
    und Domains verwendet. Wird der Wert auf 'no' gesetzt, dann gelten f"ur
    jeden E-Mailbenutzer individuelle Signaturen.

    G"ultige Werte:  \emph{yes,no}}

\config{POSTFIX\_DSPAM\_SUBJECT}{POSTFIX\_DSPAM\_SUBJECT}{POSTFIXDSPAMSUBJECT}
    {Erkannten Spam-E-Mails wird eine Kennung im Betreff vorangestellt.
    Zus"atzlich wird im Header immer der Wert ''X-DSPAM-Result: Spam'' gesetzt.

    Beispiel:  \emph{[SPAM]}}

\config{POSTFIX\_SMARTHOST}{POSTFIX\_SMARTHOST}{POSTFIXSMARTHOST}
    {Hier kann der Name oder die IP eines E-Mailserver, z. B. eines Providers, eingetragen
    werden, welcher den gesamtem Mailverkehr weiterleitet.\\
    Bei Nutzung als offizieller, "offentlich erreichbarer Mailserver einer
    Domain, wird dieser Eintrag nicht ben"otigt und bleibt leer.

    Beispiel: \emph{smtp.provider.tld}}

\config{POSTFIX\_SMARTHOST\_USER/POSTFIX\_SMARTHOST\_PASS/POSTFIX\_SMARTHOST\_TLS}{POSTFIX\_SMARTHOST\_USER/POSTFIX\_SMARTHOST\_PASS/POSTFIX\_SMARTHOST\_TLS}{POSTFIXSMARTHOSTUSER}
    {Die Zugangskennung und "Ubertragungssicherheit zum externen Mailserver
    wird hier eingetragen.\\
    Auch diese Felder sind im Normalfall (Providereinsatz) nicht in Nutzung.}

\config{START\_COURIER}{START\_COURIER}{STARTCOURIER}
    {Startet den POP3/IMAP Dienst.

    G"ultige Werte: \emph{yes,no}}

\config{COURIER\_POP3IMAP\_TLS}{COURIER\_POP3IMAP\_TLS}{COURIERPOP3IMAPTLS}
    {Aktiviert Transportsicherheit f"ur das Abholen von E-Maildaten.

    G"ultige Werte: \emph{yes,no}}


\config{START\_FETCHMAIL}{START\_FETCHMAIL}{STARTFETCHMAIL}
    {Startet den Fetchmail Dienst zur Abholung von E-Mail auf externen
    Servern. Die Daten zur Abfrage werden bei jedem Start aus der zugeh"origen
    MySQL-Datenbank entnommen.

    G"ultige Werte: \emph{yes,no}}

\config{FETCHMAIL\_CRON\_SCHEDULE}{FETCHMAIL\_CRON\_SCHEDULE}{FETCHMAILCRONSCHEDULE}
    {Startzeit f"ur die Abfrage.

    Beispiel: \emph{'5,35 * * * *'}}

\config{FETCHMAIL\_TIMEOUT}{FETCHMAIL\_TIMEOUT}{FETCHMAILTIMEOUTV}
    {Zeit in Sekunden die gewartet wird, bevor ein Server als nicht erreichbar
    gilt.

    Beispiel: \emph{60}}

\config{FETCHMAIL\_POSTMASTER}{FETCHMAIL\_POSTMASTER}{FETCHMAILPOSTMASTER}
    {Empf"angt alle nicht zustellbaren E-Mail eines Fetchmailabrufes.

    Beispiel: \emph{postmaster}}

\end{description}

%\subsection{Mail zu Fax Service}
%
%Im VMail Paket ist eine feste Schnittstelle zu einem installierten Eisfax
%Dienst integriert, welcher das Versenden von Faxnachrichten erm"oglicht.\\
%\\
%Dazu muss die E-Mail Zieladresse wie folgt aufgebaut sein:\\
%\\
%    faxg3/[<Modem>/]<Faxnummer>@localhost\\
%\\
%    Beispiel: faxg3/0221556677@localhost  oder\\
%              faxg3/modem1/0221556677@localhost\\
%
%Soll an Stelle von "localhost" eine andere Domain verwendet werden, dann ist
%die Domain-Datenbank noch um den entsprechenden Eintrag zu erweitert:
%
%\begin{tabular}{p{5cm}|p{5cm}}
%Domain:          &Transport:\\
%\hline
%fax.domain.tld   &fax:localhost\\
%\end{tabular}
%
%Weitere optionale Parameter in der Faxadresse sind der Eisfax Dokumentation zu
%entnehmen.
%
\subsection{Mail zu SMS Service}

Zur Nutzung muss YAPS installiert sein und ein entsprechender zus"atzlicher
Eintrag in der Domain-Datenbank stehen. Dabei k"onnen nur Benutzer mit einem
E-Mailkonto auf dem Server den Service nutzen.\\

\begin{tabular}{p{5cm}|p{5cm}}
Domain:          &Transport:\\
\hline
sms.domain.tld   &sms:localhost\\
\end{tabular}

Die "Ubertragung der SMS-Nummer erfolgt dabei in der E-Mail Adresse:\\
<01729999999@sms.domain.tld>


\subsection{E-Mails abrufen mit Fetchmail}

Zum Abholen von Nachrichten von externen POP3-Servern sind folgende
Werte einzutragen.

\begin{itemize}
\item Loginname\\
  Je nach Provider mitunter auch als komplette E-Mailadresse:\\
  testname\\
  testname@domain.tld\\
\item Servername\\
  POP3 Server des Providers:\\
  pop.domain.tld\\
\item Recipient
  Empf"anger der abgerufenen E-Mails:\\
  user@virtual.test\\
\item Options\\
  Die Optionen k"onnen miteinander durch Leerzeichentrennung kombiniert werden:\\
  ssl      - der E-Mailabruf erfolgt "uber SSL auf Port 995\\
  keep     - abgerufene Nachrichten werden nicht gel"oscht\\
  no keep  - abgerufene Nachrichten werden gel"oscht\\
  fetchall - alle E-Mails (nicht nur neue) werden abgerufen\\
\item Active\\
  Steht hier eine 1 dann wird der Eintrag verwendet.\\
  Bei 0 bleibt er zwar in der Datenbank, ruft aber keine E-Mails ab.\\
\end{itemize}

\section{Das Men"u ''VMail Service postfix/dovecot''}
Das VMail Hauptmen"u ''VMail Service postfix/dovecot'' wird "uber den 
Men"upunkt ''Service administration'' im zentralen Setup-Programm aufgerufen.

\subsection{ViewDocumentation}
      Zeigt die Dokumentation von VMail an.
\subsection{Edit configuration}
      Damit kann die Konfigurationsdatei des VMail-Paket bearbeitet werden.
\subsection{Advanced configuration file handling}
      Erm"oglicht eine Versionsverwaltung der VMail-Konfigurationsdatei.
\subsection{Start mail services}
      Hiermit werden alle aktivierten VMail-Programme gestartet.
\subsection{Stop mail services}
      Hiermit werden alle laufenden VMail-Programme angehalten.
\subsection{Show status}
      Zeigt den Status aller VMail-Programme.
\subsection{User \& domain administration}

      Untermen"u f"ur die Verwaltung aller Mail-Nutzer, Domains usw.

\subsubsection{E-Mail domain administration}
      Hier werden die auf dem E-Mailserver gehosteten Domains eingetragen.
\subsubsection{E-Mail user administration}
      Erm"oglicht die Benutzerverwaltung aller E-Mail Benutzer. Zum schnellen
      Erfassen vieler Benutzer kann im Benutzererfassungsdialog die Funktionstaste
      ''F2''=Speichern verwendet werden. Der Dialog muss so nicht f"ur
      jeden Benutzer neu aufgerufen werden.
\subsubsection{E-Mail smarthost user administration}
      Verwaltung der Smarthost User
\subsubsection{E-Mail forwarding administration}
      Hier k"onnen Um- und Weiterleitungen, Aliaseintr"age, Mailinglisten u. a.
      definiert werden.
\subsubsection{E-Mail canonical maps administation}
      Anpassung von Mailadressen f"ur den Versand
\subsubsection{E-Mail recipient access administration}
      Hier k"onnen E-Mailadressen von der RBL Pr"ufung ausgenommen (abuse@), oder
      auch komplett f"ur externe Sender gesperrt werden.
\subsubsection{E-Mail sender access administration}
\subsubsection{E-Mail client access administration}
\subsubsection{Sieve filter administration}
      Verwaltung der Sieve Filter wie z.B. direktes einordnen von Mails
      in Mailordner usw.
\subsubsection{Fetchmail user administration}
      In diesem Men"u kann der Administrator eigene Fetchmailabfragen
      definieren.


\subsection{Mail tools}
      Untermen"u f"ur Mail-Tools

\subsubsection{View mail queue}
      Zeigt alle zwischengespeicherten E-Mails, die auf Auslieferung warten.
\subsubsection{Force queue run}
      Probiert ein erneutes Zustellen der in der Queue liegenden E-Mails.
\subsubsection{Pocess mail queue}
      Erm"oglicht den direkten Zugriff auf einzelne Nachrichten in allen Queues.
\subsubsection{Fetchmail force get mail run}
      Externe E-Mailpostf"acher werden mit Fetchmail von Hand abgefragt.

\subsection{Mail modules}
      Untermen"u f"ur Erweiterungen wie z.B. WEBMAIL oder UUCP.

\section{Anhang: Aufbau der VMail-Datenbanktabellen}
\subsection{Tabelle ''access'' - Zugriffslisten}
Beschreibung folgt
\subsection{Tabelle ''canonical\_maps'' - Userzuordnung}
Beschreibung folgt
\subsection{Tabelle ''fetchmail'' - Fetchmailabruf}
Beschreibung folgt
\subsection{Tabelle ''maildropfilter'' - Filterverwaltung}
Beschreibung folgt
\subsection{Tabelle ''virtual\_aliases'' - Aliasverwaltung}
Beschreibung folgt
\subsection{Tabelle ''virtual\_domains'' - Domainverwaltung}
\begin{itemize}
\item domain\\
  Name der auf diesem Server gehosteten oder zur Weiterleitung vorgesehenen
  Domain.
\item transport\\
  Transport Service der Domain. Vorgabewert ist dabei immer ''maildrop:''.
\end{itemize}
\begin{tabular}{p{4cm}|p{8cm}}
  ''maildrop:''        &E-Mailempfang f"ur die virtuellen Postf"acher.\\
  ''smtp:192.168.1.1'' &Weiterleitung an einen anderen Mailserver.
                       (ben"otigt Eintrag in der forwardings Datenbank!)\\
  ''uucp:192.168.1.1'' &Weiterleitung durch UUCP an einen anderen Mailserver.
                       (ben"otigt Eintrag in der forwardings Datenbank und
                       das UUCP Paket!)\\
  ''fax:localhost''    &Weiterleitung zum Faxdienst.
                       (ben"otigt das Eisfax Paket Version > 1.2.0)\\
  ''sms:localhost''    &Weiterleitung zum SMS-Dienst. (ben"otigt das YAPS Paket)\\

\end{tabular}

\subsection{Tabelle ''virtual\_relayhosts'' - Relayhostverwaltung}
Beschreibung folgt
\subsection{Tabelle ''virtual\_users'' - Mailnutzerverwaltung}
\begin{itemize}
\item email\\
      Vollst"andiger E-Mail Name testuser@domain.tld\\
      Die Domain muss auch in der Tabelle vmaildata.domains hinterlegt sein.
\item cryptpass\\
      Das Benutzerpasswort (kodiert) f"ur den POP3/IMAP Zugang und die SMTP
      Authentifizierung.
\item clearpass\\
      Das Benutzerpasswort im Klartext wird nur f"ur spezielle Authentifizierungen
      ben"otigt und ist sonst leer.
\item username\\
      Enth"alt einen zus"atzlichen Benutzername. Dieser wird aber weder von
      Postfix noch von Courier ben"otigt.
\item mailprotect\\
      Hier k"onnen zus"atzliche Filterklassen individuell f"ur jeden Benutzer
      aktiviert werden. Folgende Eintr"age sind m"oglich:
      \begin{itemize}
      \item 0: Es werden keine zus"atzlichen Filter genutzt.
      \item 1: Weist alle Mails zur"uck, die ung"ultige Zeichen im Absenderhostnamen
               enthalten, keinen vollst"andigen Domainnamen als Absenderhost verwenden
               oder deren Absenderhost keinem DNS Server bekannt ist.
      \item 2: Nutzt die access\_client Filterliste zum Blocken unerw"unschter IP-Bereiche
               und Absendernamen. (wird nicht mitgeliefert)
      \item 3: Nutzt die M"oglichkeiten von 1 und 2 gemeinsam.
      \item 9: Es werden nur interne E-Mailnachrichten angenommen.
      \end{itemize}
\item quota\\
      Hiermit kann die maximale Postfachgr"o"se auf der Festplatte begrenzt
      werden. Der Eintrag erfolgt in Byte. Die 0 steht f"ur keine Begrenzung.
\item active\\
      Erm"oglicht ein komplettes deaktivieren des Postfaches durch Eintragen einer 0.
\end{itemize}



