<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!--
     The FreeBSD Documentation Project
     The FreeBSD German Documentation Project

     Original Revision der ersten Uebersetzung: 1.20

     $FreeBSD$
     $FreeBSDde: de-docproj/books/handbook/mail/chapter.sgml,v 1.68 2011/07/25 15:00:09 bcr Exp $
     basiert auf: 1.146
-->
<!--
     Ein paar Anmerkungen zur Uebersetzung bestimmter Begriffe

     ``Domain'' wurde mit ,,Domaene`` uebersetzt.
	,,TCP/IP und OCS/NFS`` (Michael Santifaller)
	FdI*

     Aus ``Host'' wurde ,,Rechner``.
	FdI* beschreibt ``Host'' als ,,Hauptrechner`` oder ,,gastgebender
	Rechner``.  Als Ausnahme wurde ``mail host'' mit ``E-Mail-Server''
	uebersetzt.


     *	Fdi = Fachausdruecke der Informationsverarbeitung -
	      Woerterbuch und Glossar (IBM 1985)
-->

<chapter id="mail">
  <chapterinfo>
    <authorgroup>
      <author>
	<firstname>Bill</firstname>
	<surname>Lloyd</surname>
	<contrib>Ursprüglicher Text von </contrib>
      </author>
    </authorgroup>
    <authorgroup>
      <author>
	<firstname>Jim</firstname>
	<surname>Mock</surname>
	<contrib>Neugeschrieben von </contrib>
	<!-- 2 Dec 1999 -->
      </author>
    </authorgroup>
    <authorgroup>
      <author>
	<firstname>Robert</firstname>
	<surname>Drehmel</surname>
      <contrib>Übersetzt von </contrib>
      </author>
    </authorgroup>
  </chapterinfo>

  <title>Elektronische Post (E-Mail)</title>

  <sect1 id="mail-de-term">
    <title>Terminologie</title>
    <indexterm>
      <primary>E-Mail</primary>
      <secondary>Terminologie</secondary>
    </indexterm>
    <para>Das Akronym <firstterm>MTA</firstterm> steht für
      <firstterm>Mail Transfer Agent</firstterm> was übersetzt
      <quote>Mailübertragungs-Agent</quote> bedeutet.</para>
    <para>Während die Bezeichnung <firstterm>Server-Dämon</firstterm>
      die Komponente eines MTA benennt, die für eingehende Verbindungen
      zuständig ist, wird mit dem Begriff <firstterm>Mailer</firstterm>
      öfters die Komponente des MTA bezeichnet, die E-Mails versendet.
    </para>
  </sect1>

  <sect1 id="mail-synopsis">
    <title>Übersicht</title>

    <indexterm>
      <primary>E-Mail</primary>
    </indexterm>

    <para><quote>Elektronische Post</quote>, besser bekannt als E-Mail, ist
      eine der am weit verbreitetsten Formen der Kommunikation heutzutage.
      Dieses Kapitel bietet eine grundlegende Einführung in das
      Betreiben eines E-Mail-Servers unter &os;.  Ebenfalls wird der
      Versand und Empfang von E-Mails unter &os; behandelt.  Das
      Kapitel ist jedoch keine komplette
      Referenz und es werden viele wichtige Überlegungen außer
      Acht gelassen.  Wenn Sie das Thema detaillierter betrachten
      möchten, werden Sie bei einem der exzellenten Bücher
      fündig, die in <xref linkend="bibliography"/> aufgelistet sind.
      </para>

    <para>Dieses Kapitel behandelt die folgenden Punkte:</para>

    <itemizedlist>
      <listitem>
	<para>Welche Software-Komponenten beim Senden und
	  Empfangen von elektronischer Post involviert sind.</para>
      </listitem>

      <listitem>
	<para>Wo sich grundlegende <application>sendmail</application>
	Konfigurationsdateien in FreeBSD befinden.</para>
      </listitem>

      <listitem>
	<para>Den Unterschied zwischen entfernten und lokalen
	  Postfächern.</para>
      </listitem>

      <listitem>
	<para>Wie man Versender von Massennachrichten daran hindern kann,
	  Ihren E-Mail-Server illegalerweise als Weiterleitung zu verwenden.
	  </para>
      </listitem>

      <listitem>
	<para>Wie man den Standard-Mailer des Systems,
	  <application>sendmail</application>, ersetzt.</para>
      </listitem>

      <listitem>
	<para>Wie man oft auftretende E-Mail-Server Probleme behebt.</para>
      </listitem>

      <listitem>
	<para>Wie E-Mails mit UUCP verschickt werden.</para>
      </listitem>

      <listitem>
	<para>Wie E-Mails über einen Relay verschickt werden.</para>
      </listitem>

      <listitem>
	<para>Wie E-Mails über eine Einwahlverbindung gehandhabt
	  werden.</para>
      </listitem>

      <listitem>
	<para>Wie Sie die SMTP-Authentifizierung einrichten.</para>
      </listitem>

      <listitem>
	<para>Den Empfang und den Versand von E-Mails mithilfe
	  von Programmen wie <application>mutt</application>.</para>
      </listitem>

      <listitem>
	<para>Wie E-Mails von einem entfernten Server mit
	  <acronym>POP</acronym> oder <acronym>IMAP</acronym>
	  abgeholt werden.</para>
      </listitem>

      <listitem>
	<para>Wie eingehende E-Mail automatisch gefiltert wird.</para>
      </listitem>
    </itemizedlist>

    <para>Bevor Sie dieses Kapitel lesen, sollten Sie:</para>

    <itemizedlist>
      <listitem>
	<para>Ihre Netzwerk-Verbindung richtig einrichten.
	(<xref linkend="advanced-networking"/>).</para>
      </listitem>

      <listitem>
	<para>Die DNS-Information für Ihren E-Mail-Server einstellen
	  (<xref linkend="network-servers"/>).</para>
      </listitem>

      <listitem>
	<para>Wissen, wie man zusätzliche Dritthersteller-Software
	  installiert (<xref linkend="ports"/>).</para>
      </listitem>
    </itemizedlist>
  </sect1>

  <sect1 id="mail-using">
    <title>Elektronische Post benutzen</title>
    <indexterm><primary>POP</primary></indexterm>
    <indexterm><primary>IMAP</primary></indexterm>
    <indexterm><primary>DNS</primary></indexterm>

    <para>Fünf größere Teile sind am E-Mail-Austausch beteiligt:
      <link linkend="mail-mua">Das Benutzerprogramm</link>,
      <link linkend="mail-mta">der Server-Dämon</link>,
      <link linkend="mail-dns">DNS</link>,
      <link linkend="mail-receive">ein entferntes oder lokales
        Postfach</link> und natürlich
      <link linkend="mail-host">der E-Mail-Server</link> selbst.</para>

    <sect2 id="mail-mua">
      <title>Das Benutzerprogramm</title>

      <para>Das beinhaltet Kommandozeilenprogramme wie
        <application>mutt</application>, <application>alpine</application>,
	<application>elm</application>, <application>mail</application>
        und Programme mit grafischer Benutzeroberfläche, wie
        <application>balsa</application> und <application>xfmail</application>
	um einige zu nennen, und <quote>aufwändigere</quote>, wie WWW-Browser.
        Diese Programme geben die E-Mail-Transaktionen an den lokalen
        <link linkend="mail-host"><quote>E-Mail-Server</quote></link>,
	weiter, entweder über einen der verfügbaren
        <link linkend="mail-mta">Server-Dämonen</link> oder eine
        <acronym>TCP</acronym>-Verbindung.</para>
    </sect2>

    <sect2 id="mail-mta">
      <title>E-Mail-Server Dämon</title>
      <indexterm>
	<primary>E-Mail-Server Dämonen</primary>
	<secondary><application>sendmail</application></secondary>
      </indexterm>
      <indexterm>
	<primary>E-Mail-Server Dämonen</primary>
	<secondary><application>postfix</application></secondary>
      </indexterm>
      <indexterm>
	<primary>E-Mail-Server Dämonen</primary>
	<secondary><application>qmail</application></secondary>
      </indexterm>
      <indexterm>
	<primary>E-Mail-Server Dämonen</primary>
	<secondary><application>exim</application></secondary>
      </indexterm>

      <para>&os; enthält  standardmäßig
        <application>sendmail</application>; es lassen
	sich aber auch andere E-Mail-Server Dämonen
	betreiben, beispielsweise</para>

      <itemizedlist>
	<listitem>
	  <para><application>exim</application>,</para>
	</listitem>

	<listitem>
	  <para><application>postfix</application> oder</para>
	</listitem>

	<listitem>
	  <para><application>qmail</application>.</para>
	</listitem>
      </itemizedlist>

      <para>Der Server-Dämon hat üblicherweise zwei
	Funktionen:  Er kümmert sich um das Empfangen von
	eingehenden E-Mails und stellt ausgehende E-Mails zu.  Es
	ist <emphasis>nicht</emphasis> Aufgabe des Dämons,
	E-Mails über <acronym>POP</acronym> oder
	<acronym>IMAP</acronym> bereit zu stellen, noch Zugriffe
	auf das lokale Postfach <filename>mbox</filename>
	oder Verzeichnisse mit Postfächern zu gewähren.
	Dafür benötigen Sie einen zusätzlichen
	<link linkend="mail-receive">Dämon</link>.</para>

      <warning>
	<para>Alte Versionen von <application>sendmail</application>
	  enthalten schwerwiegende Sicherheitslöcher, die
	  einem Angreifer Zugriff auf Ihren Rechner verschaffen
	  können.  Um Sicherheitsprobleme zu umgehen,
	  sollten Sie eine aktuelle
	  <application>sendmail</application>-Version benutzen.
	  Sie können auch einen anderen <acronym>MTA</acronym>
	  aus der <link linkend="ports">&os; Ports-Sammlung</link>
	  benutzen.</para>
      </warning>
    </sect2>

    <sect2 id="mail-dns">
      <title>E-Mail und DNS</title>

      <para>Das Domain Name System (DNS) und sein Dämon
        <command>named</command> spielen eine große Rolle in der
	Auslieferung von E-Mails.  Um E-Mails auszuliefern,
	fragt der Mail-Server-Dämon im DNS den Rechner ab,
	der E-Mails für das Zielsystem entgegennimmt.
	Der gleiche Vorgang läuft ab, wenn eine E-Mail
	von einem entfernten Server auf Ihrem Mail-Server
	zugestellt wird.</para>

      <indexterm>
	<primary>MX-Eintrag</primary>
      </indexterm>

      <para>Im <acronym>DNS</acronym> werden Rechnernamen auf
	IP-Adressen abgebildet.  Daneben werden spezielle
	Informationen für das Mail-System gespeichert,
	die <firstterm>MX-Einträge</firstterm>
	(<foreignphrase>MX record</foreignphrase>) genannt werden.
	Der MX-Eintrag (von <foreignphrase>Mail eXchanger</foreignphrase>)
	gibt an, welcher Rechner oder welche Rechner E-Mails
	für eine Domain annehmen.  Existiert kein MX-Record
	für einen Rechner oder dessen Domain, werden
	E-Mails direkt an den Rechner zugestellt, vorausgesetzt
	der Rechner besitzt einen A-Eintrag, der den Rechnernamen
	auf seine IP-Adresse abbildet.</para>

      <para>Mit dem Kommando &man.host.1; können Sie die
	MX-Einträge für eine Domain abfragen:</para>

      <screen>&prompt.user; <userinput>host -t mx FreeBSD.org</userinput>
FreeBSD.org mail is handled (pri=10) by mx1.FreeBSD.org</screen>
    </sect2>

    <sect2 id="mail-receive">
      <title>E-Mails empfangen</title>
      <indexterm>
	<primary>E-Mail</primary>
	<secondary>empfangen</secondary>
      </indexterm>

      <para>Der E-Mail-Server empfängt alle E-Mails für Ihre
	Domäne.  Er speichert die E-Mails entweder im
	<filename>mbox</filename>-Format (die Vorgabe) oder im
	Maildir-Format.  Die E-Mails können lokal mit
	Programmen wie &man.mail.1; oder <application>mutt</application>
	gelesen werden.  Mithilfe von Protokollen wie
	<acronym>POP</acronym> oder <acronym>IMAP</acronym> können
	die E-Mails auch von entfernten Rechnern gelesen werden.  Wenn
	Sie die E-Mails direkt auf dem E-Mail-Server lesen möchten,
	wird kein <acronym>POP</acronym>- oder
	<acronym>IMAP</acronym>-Server gebraucht.</para>

      <sect3 id="pop-and-imap">
	<title>Auf entfernte Postfächer mit <acronym>POP</acronym>
	  und <acronym>IMAP</acronym> zugreifen</title>

	<indexterm>
	  <primary>POP</primary>
	</indexterm>

	<indexterm>
	  <primary>IMAP</primary>
	</indexterm>

	<para>Wenn Sie auf entfernte Postfächer zugreifen
	  wollen, benötigen Sie den Zugang zu einem
	  <acronym>POP</acronym>- oder <acronym>IMAP</acronym>-Server.
	  Beide Protokolle bieten einen einfachen Zugriff auf entfernte
	  Postfächer.  <acronym>IMAP</acronym> besitzt allerdings
	  einige Vorteile, unter anderem:</para>

	<itemizedlist>
	  <listitem>
	    <para><acronym>IMAP</acronym> kann sowohl Nachrichten
	      auf einem entfernten Server speichern als auch von
	      dort abholen.</para>
	  </listitem>

	  <listitem>
	    <para><acronym>IMAP</acronym> unterstützt
	      gleichzeitig ablaufende Aktualisierungen.</para>
	  </listitem>

	  <listitem>
	    <para>Da es nicht gleich die komplette Nachricht
	      herunterlädt, ist <acronym>IMAP</acronym>
	      über langsame Verbindungen sehr nützlich.
	      Weiterhin können E-Mails auf dem Server
	      durchsucht werden, was den Datenverkehr zwischen
	      Clients und dem Server minimiert.</para>
	  </listitem>
	</itemizedlist>

	<para>Wenn Sie einen <acronym>POP</acronym>- oder
	  <acronym>IMAP</acronym>-Server installieren wollen,
	  gehen Sie nach den folgenden Schritten vor:</para>

	<procedure>
	  <step>
	    <para>Wählen Sie einen <acronym>IMAP</acronym>-
	      oder <acronym>POP</acronym>-Server aus, der
	      Ihre Anforderungen erfüllt.  Die nachstehenden
	      Server sind sehr bekannt:</para>

	      <itemizedlist>
		<listitem>
		  <para><application>qpopper</application></para>
		</listitem>

		<listitem>
		  <para><application>teapop</application></para>
		</listitem>

		<listitem>
		  <para><application>imap-uw</application></para>
		</listitem>

		<listitem>
		  <para><application>courier-imap</application></para>
		</listitem>

		<listitem>
		  <para><application>dovecot</application></para>
		</listitem>
	      </itemizedlist>
	  </step>

	  <step>
	    <para>Installieren Sie den ausgewählten
	      <acronym>POP</acronym>- oder <acronym>IMAP</acronym>-Daemon
	      aus der Ports-Sammlung.</para>
	  </step>

	  <step>
	    <para>Wenn erforderlich, passen Sie die Datei
	      <filename>/etc/inetd.conf</filename> an, um
	      den <acronym>POP</acronym>- oder
	      <acronym>IMAP</acronym>-Server zu starten.</para>
	  </step>
	</procedure>

	<warning>
	  <para>Beachten Sie, dass sowohl <acronym>POP</acronym>
	    als auch <acronym>IMAP</acronym> Daten, wie den
	    Benutzernamen und das Passwort, im Klartext
	    übertragen.  Wenn Sie die mit diesen Protokollen
	    übertragenen Daten schützen wollen, können
	    Sie die Sitzung mittels &man.ssh.1; tunneln oder SSL verwenden.
	    Tunneln von Sitzungen wird in <xref
	    linkend="security-ssh-tunneling"/> beschrieben und SSL wird in
	    <xref linkend="openssl"/> dargestellt.</para>
	</warning>
      </sect3>

      <sect3 id="local">
	<title>Auf lokale Postfächer zugreifen</title>

	<para>Auf Postfächer können Sie lokal mithilfe
	  spezieller Benutzerprogramme, die
	  <firstterm>Mail-User-Agents</firstterm>
	  (<acronym>MUA</acronym>s) genannt werden, zugreifen.
	  Beispiele für solche Programme sind
	  <application>mutt</application> oder &man.mail.1;.</para>
      </sect3>
    </sect2>

    <sect2 id="mail-host">
      <title>Der E-Mail-Server</title>
      <indexterm><primary>E-Mail-Server</primary></indexterm>

      <para><quote>E-Mail-Server</quote> wird der Rechner genannt, welcher
	für die Zustellung und das Empfangen von E-Mails auf Ihrem
	Rechner oder vielleicht Ihrem Netzwerk zuständig ist.</para>
    </sect2>
  </sect1>

  <sect1 id="sendmail">
    <sect1info>
      <authorgroup>
        <author>
          <firstname>Christopher</firstname>
          <surname>Shumway</surname>
          <contrib>Beigesteuert von </contrib>
        </author>
      </authorgroup>
    </sect1info>
    <title><application>sendmail</application>-Konfiguration</title>

    <indexterm>
      <primary><application>sendmail</application></primary>
    </indexterm>

    <para>&man.sendmail.8; ist das standardmäßig in
      FreeBSD installierte Mailübertragungsprogramm (MTA).
      Die Aufgabe von <application>sendmail</application> ist es,
      E-Mails von E-Mail-Benutzerprogrammen (<acronym>MUA</acronym>)
      anzunehmen und diese zu den
      entsprechenden Mailern zu liefern, die in der Konfigurationsdatei
      definiert sind.  <application>sendmail</application> kann auch
      Netzwerkverbindungen annehmen und E-Mails zu lokalen
      <firstterm>Mailboxen</firstterm>
      <footnote>
	<para>Mailbox = Post- beziehungsweise Briefkasten</para>
      </footnote>
      oder anderen Programmen liefern.</para>

    <para><application>sendmail</application> benutzt folgende
      Konfigurationsdateien:</para>

    <indexterm>
      <primary><filename>/etc/mail/access</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/aliases</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/local-host-names</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/mailer.conf</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/mailertable</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/sendmail.cf</filename></primary>
    </indexterm>
    <indexterm>
      <primary><filename>/etc/mail/virtusertable</filename></primary>
    </indexterm>
    <informaltable frame="none" pgwide="1">
      <tgroup cols="2">
        <thead>
          <row>
           <entry>Dateiname</entry>
           <entry>Funktion</entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <filename>/etc/mail/access</filename>
            </entry>
	    <entry>Datenbank, in der Zugriffsrechte auf
	      <application>sendmail</application> verwaltet werden</entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/aliases</filename>
            </entry>
            <entry>Mailbox Aliase</entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/local-host-names</filename>
            </entry>
            <entry>Liste der Rechner für die
	      <application>sendmail</application> E-Mails akzeptiert</entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/mailer.conf</filename>
            </entry>
            <entry>Mailer Programmkonfiguration</entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/mailertable</filename>
            </entry>
            <entry>Mailer Versand-Zuordnungstabelle</entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/sendmail.cf</filename>
            </entry>
            <entry>Hauptkonfigurationsdatei für
	      <application>sendmail</application></entry>
          </row>
          <row>
            <entry>
              <filename>/etc/mail/virtusertable</filename>
            </entry>
            <entry>Virtuelle Benutzer und Domänen-Tabellen</entry>
          </row>
        </tbody>
      </tgroup>
    </informaltable>

  <sect2>
    <title><filename>/etc/mail/access</filename></title>

    <para>Die Zugriffsdatenbank bestimmt, welche(r) Rechner oder IP-Adresse(n)
      Zugriff auf den lokalen E-Mail-Server haben und welche Art von Zugriff
      ihnen gestattet wird.
      Rechner können als <option>OK</option>, <option>REJECT</option>
      oder <option>RELAY</option> eingetragen oder einfach an
      <application>sendmail</application>s Fehlerbehandlungsroutine mit einem
      angegebenen Mailer-Fehler übergeben werden.
      Rechner, die als <option>OK</option> eingetragen sind, was die
      Grundeinstellung ist, sind berechtigt E-Mails zu diesem Rechner zu
      schicken, solange die endgültige Zieladresse der lokale Rechner ist.
      Verbindungen von Rechnern, die als <option>REJECT</option>
      aufgelistet sind, werden abgelehnt.
      Rechnern mit gesetzter <option>RELAY</option>-Option für
      ihren Rechnernamen wird erlaubt Post für jede Zieladresse
      durch diesen Mail-Server zu senden.</para>

      <example>
        <title>Konfigurieren der <application>sendmail</application>
          Zugriffsdatenbank</title>

    <programlisting>cyberspammer.com                550 We do not accept mail from spammers
FREE.STEALTH.MAILER@            550 We do not accept mail from spammers
another.source.of.spam          REJECT
okay.cyberspammer.com           OK
128.32                          RELAY</programlisting>
      </example>

   <para>In diesem Beispiel haben wir fünf Einträge.
     E-Mail-Versender, die mit der linken Spalte der Tabelle
     übereinstimmen, sind betroffen von der Aktion in der rechten
     Spalte.  Die ersten beiden Beispiele übergeben einen Fehlercode an
     <application>sendmail</application>s Fehlerbehandlungsroutine.
     Die Nachricht wird an den entfernten Rechner gesendet, wenn eine
     Nachricht mit der linken Spalte der Tabelle übereinstimmt.
     Der nächste Eintrag lehnt Post von einem bestimmten Rechner
     des Internets ab (<hostid>another.source.of.spam</hostid>).
     Der nächste Eintrag akzeptiert E-Mail-Verbindungen des Rechners
     <hostid role="fqdn">okay.cyberspammer.com</hostid>, der exakter angegeben
     wurde als <hostid role="fqdn">cyberspammer.com</hostid> in der Zeile
     darüber.
     Genauere Übereinstimmungen haben den Vorrang vor weniger genauen.
     Der letzte Eintrag erlaubt die Weiterleitung von elektronischer Post
     von Rechnern mit einer IP-Adresse die mit <hostid>128.32</hostid>
     beginnt.  Diese Rechner würden E-Mails durch diesen
     E-Mail-Server senden können, die für andere E-Mail-Server
     bestimmt sind.</para>

   <para>Wenn diese Datei geändert wird, müssen Sie
     <command>make</command> in <filename>/etc/mail</filename>
     ausführen um die Datenbank zu aktualisieren.</para>

   </sect2>

    <sect2>
      <title><filename>/etc/mail/aliases</filename></title>

      <para>Die Alias-Datenbank enthält eine Liste der virtuellen
	Mailboxen, die in andere Benutzer, Dateien, Programme oder
	andere Aliase expandiert werden.  Hier sind ein paar Beispiele,
	die in <filename>/etc/mail/aliases</filename> benutzt werden
	können:</para>

      <example>
        <title>E-Mail Aliases</title>
    <programlisting>root: localuser
ftp-bugs: joe,eric,paul
bit.bucket:  /dev/null
procmail: "|/usr/local/bin/procmail"</programlisting>
      </example>

      <para>Das Dateiformat ist simpel; Der Name der Mailbox auf der linken
	Seite des Doppelpunkts wird mit den Zielen auf der rechten Seite
	ersetzt.
        Das erste Beispiel ersetzt die Mailbox <username>root</username>
	mit der Mailbox <username>localuser</username>, die dann wieder in der
        Alias-Datenbank gesucht wird.  Wird kein passender Eintrag
        gefunden, wird die Nachricht zum lokalen Benutzer
        <username>localuser</username> geliefert.  Das nächste Beispiel
        zeigt eine E-Mail-Verteilerliste.  E-Mails an die Mailbox
        <username>ftp-bugs</username> werden zu den drei lokalen Mailboxen
        <username>joe</username>, <username>eric</username> und
        <username>paul</username> gesendet.  Eine lokale Mailbox kann auch
        als <email>user@example.com</email> angegeben werden.  Das
	nächste Beispiel zeigt das Schreiben von E-Mails in eine Datei,
	in diesem Fall <filename>/dev/null</filename>.  Das letzte Beispiel
	verdeutlicht das Senden von E-Mails an ein Programm, in diesem Fall
	wird die Nachricht in die Standardeingabe von
        <filename>/usr/local/bin/procmail</filename> mittels einer UNIX Pipe
        geschrieben.</para>

      <para>Wenn diese Datei geändert wird, müssen Sie
	<command>make</command> in <filename>/etc/mail</filename>
	ausführen um die Änderungen in die Datenbank zu
	übernehmen.</para>
    </sect2>
    <sect2>
      <title><filename>/etc/mail/local-host-names</filename></title>

      <para>Das ist die Liste der Rechnernamen, die &man.sendmail.8; als
	lokalen Rechnernamen akzeptiert.  Setzen Sie alle Domänen oder
	Rechner, für die <application>sendmail</application>
	Mail empfangen soll, in diese Datei.
	Wenn dieser Mail-Server zum Beispiel E-Mails für die
	Domäne example.com und den Rechner
	<hostid role="fqdn">mail.example.com</hostid> annehmen soll,
	könnte seine <filename>local-host-names</filename> Datei so
	aussehen:</para>

      <programlisting>example.com
mail.example.com</programlisting>

      <para>Wird diese Datei geändert, muss &man.sendmail.8; neu
	gestartet werden, damit es die Neuerungen einliest.</para>
    </sect2>
    <sect2>
      <title><filename>/etc/mail/sendmail.cf</filename></title>

      <para>Die Hauptkonfigurations-Datei von
	<application>sendmail</application> (<filename>sendmail.cf</filename>)
	kontrolliert das allgemeine Verhalten von
	<application>sendmail</application>, einschließlich allem vom
	Umschreiben von E-Mail Adressen bis hin zum Übertragen von
	Ablehnungsnachrichten an entfernte E-Mail-Server.
	Mit solch einer mannigfaltigen Rolle ist die Konfigurationsdatei
	natürlich ziemlich komplex und ihre Einzelheiten können
	in diesem Kapitel nicht besprochen werden.
	Glücklicherweise muss diese Datei selten für
	Standard E-Mail-Server geändert werden.</para>

      <para>Die <application>sendmail</application> Hauptkonfigurationsdatei
	kann mit &man.m4.1; Makros erstellt werden, die Eigenschaften
	und Verhalten von <application>sendmail</application> definieren.
	Einige der Details finden Sie in
	<filename>/usr/src/contrib/sendmail/cf/README</filename>.</para>

      <para>Wenn Änderungen an dieser Datei vorgenommen werden, muss
	<application>sendmail</application> neu gestartet werden, damit die
	Änderungen Wirkung zeigen.</para>
    </sect2>
    <sect2>
      <title><filename>/etc/mail/virtusertable</filename></title>

      <para>Die Datei <filename>virtusertable</filename> ordnet
	Adressen für virtuelle Domänen und Mailboxen reellen
	Mailboxen zu.  Diese Mailboxen können lokal, auf entfernten
	Systemen, Aliase in <filename>/etc/mail/aliases</filename> oder
	eine Datei sein.</para>

      <example>
        <title>Beispiel einer virtuellen Domänen Zuordnung</title>

        <programlisting>root@example.com                root
postmaster@example.com          postmaster@noc.example.net
@example.com                    joe</programlisting>
      </example>

      <para>In dem obigen Beispiel haben wir einen Eintrag für die
	Domäne <hostid role="domainname">example.com</hostid>.  Diese
	Datei wird nach dem ersten übereinstimmenden Eintrag durchsucht.
	Die erste Zeile ordnet <email>root@example.com</email> der
	lokalen Mailbox <username>root</username> zu.  Der nächste Eintrag ordnet
	<email>postmaster@example.com</email> der Mailbox
	<username>postmaster</username> auf dem Rechner
	<hostid role="fqdn">noc.example.net</hostid> zu.  Zuletzt, wenn keine
	Übereinstimmung von <hostid role="fqdn">example.com</hostid>
	gefunden wurde, wird der letzte Eintrag verglichen, der mit jeder
	Mail-Nachricht übereinstimmt, die an jemanden bei
	<hostid>example.com</hostid> adressiert wurde.
	Diese werden der lokalen Mailbox joe zugeordnet.</para>
    </sect2>
  </sect1>

  <sect1 id="mail-changingmta">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Andrew</firstname>
	  <surname>Boothman</surname>
	  <contrib>Geschrieben von </contrib>
	</author>
      </authorgroup>
      <authorgroup>
	<author>
	  <firstname>Gregory</firstname>
	  <surname>Neil Shapiro</surname>
	  <contrib>Informationen entnommen aus E-Mails geschrieben von
	    </contrib>
	</author>
      </authorgroup>
    </sect1info>
    <title>Wechseln des Mailübertragungs-Agenten</title>
    <indexterm>
      <primary>E-Mail</primary>
      <secondary>MTA, wechseln</secondary>
    </indexterm>

    <para>Wie bereits erwähnt, ist bei FreeBSD
      <application>sendmail</application> schon als Ihr
      Mailübertragungs-Agent installiert.
      Deswegen ist es standardmäßig für Ihre aus- und
      eingehenden E-Mails verantwortlich.</para>

    <para>Jedoch wollen einige Systemadministratoren den MTA ihres Systems
      wechseln, was eine Reihe von Gründen haben kann.  Diese Gründe
      reichen von einfach einen anderen MTA ausprobieren wollen bis hin dazu
      eine bestimmte Besonderheit zu benötigen oder ein Paket, welches
      auf einen anderen Mailer angewiesen ist.  Glücklicherweise macht
      FreeBSD das Wechseln einfach, egal aus welchem Grund.</para>

    <sect2>
      <title>Installieren eines neuen MTA</title>

      <para>Sie haben eine große Auswahl an verfügbaren
	MTA-Programmen.  Ein guter Startpunkt ist die
	<link linkend="ports">FreeBSD-Ports-Sammlung</link>, wo Sie viele
	finden werden.  Selbstverständlich steht es Ihnen frei, jeden
	MTA von überall her zu verwenden, solange Sie ihn unter
	FreeBSD zum Laufen bekommen.</para>

      <para>Fangen Sie an, indem Sie Ihren neuen MTA installieren.  Sobald
	er installiert ist, gibt er Ihnen die Chance zu entscheiden ob er
	wirklich Ihren Bedürfnissen genügt.  Zusätzlich gibt
	er Ihnen die Möglichkeit die neue Software zu konfigurieren,
	bevor sie den Job von <application>sendmail</application>
	übernimmt.  Dabei sollten Sie sicherstellen, dass beim
	Installieren der neuen Software keine Versuche unternommen werden,
	System-Programme wie <filename>/usr/bin/sendmail</filename> zu
	überschreiben.  Ansonsten wurde Ihre neue E-Mail-Software in
	den Dienst gestellt, bevor Sie sie konfiguriert haben.</para>

      <para>Für Informationen über die Konfiguration des von
	Ihnen gewählten MTAs sehen Sie bitte in der dazugehörigen
	Dokumentation nach.</para>
    </sect2>

    <sect2 id="mail-disable-sendmail">
      <title>Ausschalten von <application>sendmail</application></title>

      <warning>
	<para>Wenn Sie die Sendefunktion von
	  <application>sendmail</application> deaktivieren, müssen
	  Sie für den E-Mail-Versand ein alternatives System
	  installieren.  Tun Sie dies nicht, sind Systemfunktionen wie
	  &man.periodic.8; nicht mehr in der Lage, ihre Resulate und
	  Meldungen als E-Mail zu versenden.  Aber auch viele andere
	  Teile Ihres Systems erwarten, dass Sie über ein
	  <application>sendmail</application>-kompatibles System
	  verfügen.  Sind Programme auf (die von Ihnen
	  deaktivierten)
	  <application>sendmail</application>-Binärdateien
	  angewiesen, landen deren E-Mails ansonsten in einer inaktiven
	  <application>sendmail</application>-Warteschlange und
	  können nicht ausgeliefert werden.</para>
      </warning>

      <para>Um <application>sendmail</application> komplett zu
	deaktivieren (also inklusive der Funktion zum Versand
	von E-Mails), fügen Sie die Zeile</para>

      <programlisting>sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"</programlisting>

      <para>in <filename>/etc/rc.conf</filename> ein.</para>

      <para>Wenn Sie lediglich die Funktion zum Empfang von E-Mails
	durch <application>sendmail</application> deaktivieren
	wollen, sollten Sie folgenden Eintrag in
	<filename>/etc/rc.conf</filename> einfügen:</para>

	<programlisting>sendmail_enable="NO"</programlisting>

      <para>Weitere Informationen zu den Startoptionen von
	<application>sendmail</application> finden Sie in der
	Manualpage &man.rc.sendmail.8;.</para>
    </sect2>

    <sect2>
      <title>Starten Ihres neuen MTA beim Hochfahren des Systems</title>

      <para>Der neue MTA kann beim Hochfahren durch das Hinzufügen einer
        Konfigurationszeile in der <filename>/etc/rc.conf</filename> gestartet
        werden, wie das folgende Beispiel für Postfix zeigt:</para>

      <screen>&prompt.root; echo '<replaceable>postfix</replaceable>_enable=<quote>YES</quote>' &gt;&gt; /etc/rc.conf</screen>

      <para>Der MTA wird jetzt automatisch beim Hochfahren des Systems
        gestartet.</para>
    </sect2>

    <sect2>
      <title>Ersetzen von <application>sendmail</application> als
	Standard-Mailer des Systems</title>

      <para>Das Programm <application>sendmail</application> ist so
	allgegenwärtig als Standard-Software auf &unix; Systemen, dass
	einige Programme einfach annehmen es sei bereits installiert und
	konfiguriert.
	Aus diesem Grund stellen viele alternative MTAs ihre eigenen
	kompatiblen Implementierung der <application>sendmail</application>
	Kommandozeilen-Schnittstelle zur Verfügung.  Das vereinfacht
	ihre Verwendung als <quote>drop-in</quote> Ersatz für
	<application>sendmail</application>.</para>

      <para>Folglich werden Sie, wenn Sie einen alternativen Mailer benutzen,
	sicherstellen müssen, dass ein Programm, das versucht
        <application>sendmail</application>s Standard-Dateien wie
        <filename>/usr/bin/sendmail</filename> auszuführen,
        stattdessen Ihr gewähltes Mailübertragungsprogramm
        ausführt.
        Zum Glück stellt FreeBSD das &man.mailwrapper.8;-System
        zur Verfügung, das diese Arbeit für Sie erledigt.</para>

      <para>Wenn <application>sendmail</application> arbeitet wie es
	installiert wurde, werden Sie in
	<filename>/etc/mail/mailer.conf</filename> etwas wie das Folgende
	vorfinden:</para>

<programlisting>sendmail	/usr/libexec/sendmail/sendmail
send-mail	/usr/libexec/sendmail/sendmail
mailq		/usr/libexec/sendmail/sendmail
newaliases	/usr/libexec/sendmail/sendmail
hoststat	/usr/libexec/sendmail/sendmail
purgestat	/usr/libexec/sendmail/sendmail</programlisting>

      <para>Das bedeutet, dass wenn eines der gewöhnlichen Kommandos
	(wie zum Beispiel <filename>/usr/bin/sendmail</filename> selbst)
	ausgeführt wird, das System tatsächlich eine Kopie des
	mailwrapper mit dem Namen <filename>sendmail</filename> startet, die
	<filename>mailer.conf</filename> überprüft und
	<filename>/usr/libexec/sendmail/sendmail</filename> ausführt.
	Mit diesem System lassen sich die Programme, die für die
	<application>sendmail</application>-Funktionen gestartet werden,
	leicht ändern.</para>

      <para>Daher könnten Sie, wenn Sie wollten, dass
	<filename>/usr/local/supermailer/bin/sendmail-compat</filename>
	anstelle von <application>sendmail</application> ausgeführt
	wird, <filename>/etc/mailer.conf</filename> wie folgt abändern:
      </para>

<programlisting>sendmail	/usr/local/supermailer/bin/sendmail-compat
send-mail	/usr/local/supermailer/bin/sendmail-compat
mailq		/usr/local/supermailer/bin/mailq-compat
newaliases	/usr/local/supermailer/bin/newaliases-compat
hoststat	/usr/local/supermailer/bin/hoststat-compat
purgestat	/usr/local/supermailer/bin/purgestat-compat</programlisting>

    </sect2>

    <sect2>
      <title>Fertigstellen</title>

      <para>Sobald Sie alles Ihren Wünschen entsprechend
      konfiguriert haben, sollten Sie entweder die
      <application>sendmail</application> Prozesse beenden, die Sie
      nicht mehr benötigen, und die zu Ihrer neuen Software
      zugehörigen Prozesse starten, oder einfach das System
      neustarten.  Das Neustarten des Systems gibt Ihnen auch die
      Gelegenheit sicherzustellen, dass Sie Ihr System korrekt
      konfiguriert haben, um Ihren neuen MTA automatisch beim
      Hochfahren zu starten.</para>
    </sect2>
  </sect1>

  <sect1 id="mail-trouble">
    <title>Fehlerbehebung</title>

    <para>Hier finden sich ein paar häufig gestellte Fragen und ihre
      Antworten, die von der <ulink url="&url.books.faq;/">FAQ</ulink>
      übernommen wurden.</para>

    <qandaset>
      <qandaentry>
        <question>
	<para>Warum muss ich einen FQDN (fully-qualified domain name/
	  voll ausgeschriebenen Domänennamen) für meine Rechner
	  verwenden?</para>
	</question>

	<answer>
	<para>Vielleicht liegen die Rechner in einer unterschiedlichen
	  Domäne; zum Beispiel, wenn Sie sich in
          <hostid role="fqdn">foo.bar.edu</hostid> befinden, und einen Rechner
          namens <hostid>mumble</hostid> in der
          <hostid role="domainname">bar.edu</hostid> Domäne erreichen
	  wollen, müssen Sie ihn mit dem voll ausgeschriebenen
	  Domänennamen <hostid role="fqdn">mumble.bar.edu</hostid>
	  kontaktieren, anstatt bloß mit <hostid>mumble</hostid>.</para>

	<para>Traditionell wurde das von dem BSD BIND
          <foreignphrase>Resolver</foreignphrase> erlaubt.  Wie auch immer,
          die aktuelle Version von <application>BIND</application>, die mit
          FreeBSD ausgeliefert wird, bietet keine Standardabkürzungen
          für nicht komplett angegebene Domänennamen außerhalb der
          Domäne, in der Sie sich befinden.  Daher muss ein
          nicht-qualifizierter Rechner <hostid>mumble</hostid> entweder als
	  <hostid role="fqdn">mumble.foo.bar.edu</hostid> gefunden werden,
	  oder er wird in der root Domäne gesucht.</para>

        <para>Damit unterscheidet es sich von vorherigem Verhalten, bei dem
          die Suche über <hostid role="domainname">mumble.bar.edu</hostid>
          und <hostid role="domainname">mumble.edu</hostid> lief.  Schauen Sie
          sich RFC 1535 an, wenn Sie wissen möchten, warum das als
          schlecht und sogar als Sicherheitsloch angesehen wurde.</para>

        <para>Um das zu umgehen, können Sie die Linie

          <programlisting>search foo.bar.edu bar.edu</programlisting>

          anstatt der vorherigen

          <programlisting>domain foo.bar.edu</programlisting>

          in Ihre <filename>/etc/resolv.conf</filename> einsetzen.  Aber
          stellen Sie sicher, dass die Suchordnung nicht die Begrenzung von
          <quote>lokaler und öffentlicher Administration</quote>, wie
          RFC 1535 sie nennt, überschreitet.</para>
	</answer>
      </qandaentry>

      <qandaentry>
	<question>
	  <indexterm>
	    <primary>MX-Eintrag</primary>
	  </indexterm>

	  <para>Warum meldet Sendmail
	    <errorname>mail loops back to myself</errorname>?</para>
	</question>

	<answer>
	  <para>Dies wird in der Sendmail-FAQ wie folgt beantwortet:</para>

	  <literallayout>Ich erhalte folgende Fehlermeldungen:

	553 MX list for domain.net points back to relay.domain.net
	554 &lt;user@domain.net&gt;... Local configuration error

	Wie kann ich dieses Problem lösen?

        Sie haben durch die Benutzung eines MX-Eintrags eingestellt, dass
        Mail für die Domäne (z.B. domain.net) an einen speziellen
        Host (in diesem Fall relay.domain.net) weitergeleitet wird,
        aber der Relay-Host erkennt sich selbst nicht als
        domain.net.  Fügen Sie domain.net in /etc/mail/local-host-names
        [die Datei hieß vor der Version 8.10 /etc/sendmail.cw]
        (falls Sie FEATURE(use_cw_file) benutzen) oder "Cw domain.net"
        in /etc/mail/sendmail.cf ein.</literallayout>

          <para>Die aktuelle Version der <ulink
            url="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq">Sendmail-FAQ</ulink>
            wird nicht mehr mit dem Sendmail-Release verwaltet.  Sie
            wird jedoch regelmäßig nach <ulink
            url="news:comp.mail.sendmail">comp.mail.sendmail</ulink>,
            <ulink url="news:comp.mail.misc">comp.mail.misc</ulink>,
            <ulink url="news:comp.mail.smail">comp.mail.smail</ulink>,
            <ulink url="news:comp.answers">comp.answers</ulink> und
            <ulink url="news:news.answers">news.answers</ulink>
            gepostet.  Sie können auch eine Kopie per E-Mail
            bekommen, indem Sie eine Mail mit dem Inhalt <literal>send
            usenet/news.answers/mail/sendmail-faq</literal> an
            <literal>mail-server@rtfm.mit.edu</literal> schicken.</para>
        </answer>
      </qandaentry>

      <qandaentry>
        <question>
	  <indexterm><primary>PPP</primary></indexterm>

	  <para>Wie kann ich einen E-Mail-Server auf einem
	    Anwahl-PPP Rechner betreiben?</para>
	</question>

	<answer>
	<para>Sie wollen einen FreeBSD-Rechner in einem LAN an das
	  Internet anbinden.  Der FreeBSD-Rechner wird ein E-Mail
	  <foreignphrase>Gateway</foreignphrase> für das LAN.
          Die PPP-Verbindung ist keine Standleitung.</para>

	<indexterm>
	  <primary>MX-Eintrag</primary>
	</indexterm>

	<para>Es gibt mindestens zwei Wege um dies zu tun.  Einer davon ist
	  UUCP zu verwenden.</para>

	<para>Ein anderer Weg ist, von einem immer mit dem Internet
	  verbundenen Server einen sekundären MX-Dienst für Ihre
	  Domäne zur Verfügung gestellt zu bekommen.  Wenn die
	  Domäne Ihrer Firma
	  <hostid role="domainname">example.com</hostid> ist, und Ihr
	  Internet-Dienstanbieter
	  <hostid role="domainname">example.net</hostid> so eingestellt hat,
	  dass er Ihrer Domäne einen sekundären MX-Dienst zur
	  Verfügung stellt:</para>

	<programlisting>example.com.            MX        10      bigco.com.
                      MX        20      example.net.</programlisting>

	<para>Nur ein Rechner sollte als Endempfänger angegeben sein
	  (fügen Sie <literal>Cw example.com</literal> zu
	  <filename>/etc/sendmail.cf</filename> auf example.com).</para>

	<para>Wenn das <command>sendmail</command> des Versenders versucht,
	  die E-Mail zuzustellen, wird es versuchen, Sie über die
	  Modem-Verbindung (<hostid role="domainname">example.com</hostid>)
	  zu erreichen.  Wahrscheinlich wird es keine Verbindung zustande
	  bringen können, da Sie nicht eingewählt sind.
	  <command>sendmail</command> wird die E-Mail automatisch zu der
	  sekundären MX-Stelle geliefert, zu Ihrem Internet-Provider
	  (<hostid role="domainname">example.net</hostid>).
	  Die sekundäre MX-Stelle wird periodisch versuchen
	  versuchen eine Verbindung zu Ihnen aufzubauen, um die E-Mail zu
	  der primären MX-Stelle
	  (<hostid role="domainname">example.com</hostid> zu liefern.</para>

	<para>Eventuell wollen Sie etwas wie dies als Login-Skript:</para>

	<programlisting>#!/bin/sh
# Put me in /usr/local/bin/pppmyisp
( sleep 60 ; /usr/sbin/sendmail -q ) &amp;
/usr/sbin/ppp -direct pppmyisp</programlisting>

	<para>Wenn Sie ein separates Login-Skript für einen Benutzer
	  erstellen wollen, könnten Sie stattdessen
	  <command>sendmail -qRexample.com</command> in dem oben gezeigten
	  Skript verwenden.  Das erzwingt die sofortige Verarbeitung der
	  E-Mails in Ihrer Warteschlange für
	  <hostid role="domainname">example.com</hostid></para>

	<para>Eine weitere Verfeinerung der Situation ist wie folgt:</para>

	<para>Die Nachricht wurde der &a.isp; entnommen.</para>

	<programlisting>&gt; wir stellen einem Kunden den sekundären MX zur Verfügung.
&gt; Der Kunde verbindet sich mit unseren Diensten mehrmals am Tag
&gt; automatisch um die E-Mails zu seinem primären MX zu holen
&gt; (wir wählen uns nicht bei ihm ein, wenn E-Mails für seine
&gt; Domäne eintreffen).  Unser sendmail sendet den Inhalt der
&gt; E-Mail-Warteschlange alle 30 Minuten.  Momentan muss er 30 Minuten
&gt; eingewählt bleiben um sicher zu sein, dass alle seine E-Mails
&gt; beim primären MX eingetroffen sind.
&gt;
&gt; Gibt es einen Befehl, der sendmail dazu bringt, alle E-Mails sofort
&gt; zu senden? Der Benutzer hat natürlich keine root-Rechte auf
&gt; unserer Maschine.

In der <quote>privacy flags</quote> Sektion von sendmail.cf befindet sich die
Definition Opgoaway,restrictqrun

Entferne restrictqrun um nicht-root Benutzern zu erlauben, die Verarbeitung
der Nachrichten-Warteschlangen zu starten.  Möglicherweise willst du
auch die MX neu sortieren.  Wir sind der primäre MX für unsere
Kunden mit diesen Wünschen und haben definiert:

# Wenn wir der beste MX für einen Rechner sind, versuche es direkt
# anstatt einen lokalen Konfigurationsfehler zu generieren.
OwTrue

Auf diesem Weg liefern Gegenstellen direkt zu dir, ohne die Kundenverbindung
zu versuchen.  Dann sendest du zu deinem Kunden.  Das funktioniert nur
für <quote>Rechner</quote>, du musst also deinen Kunden dazu bringen,
ihre E-Mail Maschine <quote>customer.com</quote> zu nennen, sowie
<quote>hostname.customer.com</quote> im DNS.  Setze einfach einen A-Eintrag
in den DNS für <quote>customer.com</quote>.</programlisting>
        </answer>
      </qandaentry>

      <qandaentry>
	<question>
	  <para>Warum bekomme ich die Fehlermeldung <errorname>Relaying
	    Denied</errorname>, wenn ich E-Mails von anderen Rechnern
	    verschicke?</para>
	</question>

	<answer>
	  <para>In der standardmäßigen FreeBSD-Installation wird
	    <application>sendmail</application> nur dazu konfiguriert,
	    E-Mails von dem Rechner, auf dem es läuft, zu senden.
	    Wenn zum Beispiel ein <acronym>POP</acronym>-Server
	    installiert ist, können Benutzer ihre E-Mails von der
	    Schule, von der Arbeit oder von anderen Orten
	    überprüfen.  Sie werden jedoch keine E-Mails von
	    außen verschicken können.  Typischerweise
	    wird ein paar Sekunden nach dem Versuch eine E-Mail
	    von <application>MAILER-DAEMON</application> mit einer
	    <errorname>5.7 Relaying Denied</errorname> Fehlermeldung
	    versendet werden.</para>

	  <para>Es sind mehrere Wege möglich, dies zu umgehen.  Die
	    geradlinigste Lösung ist die Adresse Ihres
	    Internet-Dienstanbieters in die Datei für die
	    Weiterleitungs-Domänen zu platzieren.  Das lässt sich
	    schnell erreichen mit:</para>

	  <screen>&prompt.root; <userinput>echo "your.isp.example.com" &gt; /etc/mail/relay-domains</userinput></screen>

	  <para>Nach Erstellen oder Editieren dieser Datei müssen
	    Sie <application>sendmail</application> neu starten.
	    Das funktioniert großartig wenn Sie ein
	    Server-Administrator sind und E-Mails nicht lokal
	    versenden, oder gerne ein Client/System mit grafischer
	    Oberfläche auf einer anderen Maschine oder sogar
	    über einen anderen Internet-Dienstanbieter verwenden
	    wollen.  Es ist auch sehr nützlich, wenn Sie nur ein
	    oder zwei E-Mail Accounts eingerichtet haben.  Soll eine
	    größere Anzahl Adressen hinzugefügt werden,
	    können Sie die Datei einfach in Ihrem favorisierten
	    Editor öffnen und die Domänen anfügen,
	    je eine pro Zeile:</para>

	  <programlisting>your.isp.example.com
other.isp.example.net
users-isp.example.org
www.example.org</programlisting>

	  <para>Jetzt wird jede E-Mail, die durch Ihr System von
	    einem der in diese Liste eingetragenen Rechner geschickt
	    wurde, ihr Ziel erreichen (vorausgesetzt, der Benutzer
	    hat einen Account auf Ihrem System).  Dies ist ein sehr
	    schöner Weg, um Benutzern das entfernte E-Mail Versenden
	    von Ihrem System zu erlauben, ohne dem Massenversand
	    (<acronym>SPAM</acronym>) die Tür zu öffnen.</para>
	</answer>
      </qandaentry>
    </qandaset>
  </sect1>

  <sect1 id="mail-advanced">
    <title>Weiterführende Themen</title>

    <para>Die folgenden Abschnitte behandeln kompliziertere Themen wie
      E-Mail-Konfiguration und das Einrichten von E-Mail für Ihre
      ganze Domäne.</para>

    <sect2 id="mail-config">
      <title>Grundlegende Konfiguration</title>

      <para>Mit der Software im Auslieferungszustand sollten Sie fähig
	sein, E-Mails an externe Rechner zu senden, solange Sie
	<filename>/etc/resolv.conf</filename> eingerichtet haben oder Ihren
	eigenen Name Server laufen lassen.  Wenn Sie die E-Mails für
	Ihren Rechner zu einem anderen Rechner geliefert haben wollen, gibt
	es zwei Methoden:</para>

      <itemizedlist>
        <listitem>
          <para>Betreiben Sie Ihren eigenen Name Server und haben Sie Ihre
	    eigene Domäne, zum Beispiel
	    <hostid role="domainname">FreeBSD.org</hostid>.</para>
        </listitem>

        <listitem>
          <para>Lassen Sie sich E-Mails direkt zu Ihrem Rechner liefern.
	    Dies geschieht indem E-Mails direkt zu dem aktuellen DNS Namen
	    Ihrer Maschine geliefert werden.  Zum Beispiel
	    <hostid role="fqdn">example.FreeBSD.org</hostid>.</para>
        </listitem>
      </itemizedlist>

      <para>Ungeachtet welche Methode Sie auswählen, um E-Mails direkt
	zu Ihrem Rechner geliefert zu bekommen, benötigen Sie eine
	permanente (statische) IP-Adresse (keine dynamische PPP-Anwahl).
	Wenn Sie sich hinter einer Firewall befinden, muss diese den
	SMTP-Verkehr an Sie weiterleiten.  Wollen Sie E-Mails an Ihrem
	Rechner selbst empfangen, müssen Sie eines der folgenden
	Dinge sicherstellen:</para>

      <itemizedlist>
        <listitem>
          <para>Vergewissern Sie sich, dass der MX-Eintrag in Ihrem DNS zu
	    der IP-Adresse Ihres Rechners zeigt.</para>
        </listitem>

        <listitem>
          <para>Stellen Sie sicher, dass sich für Ihren Rechner kein
	    MX-Eintrag im DNS befindet.</para>
        </listitem>
      </itemizedlist>

      <para>Jede der erwähnten Konfigurationsmöglichkeiten erlaubt
	Ihnen, E-Mails direkt auf Ihrem Rechner zu empfangen.</para>

      <para>Versuchen Sie das:</para>

      <screen>&prompt.root; <userinput>hostname</userinput>
example.FreeBSD.org
&prompt.root; <userinput>host example.FreeBSD.org</userinput>
example.FreeBSD.org has address 204.216.27.XX</screen>

      <para>Wenn Sie diese Ausgabe erhalten, sollten direkt an
        <email role="nolink">yourlogin@example.FreeBSD.org</email> geschickte
	E-Mails ohne Probleme funktionieren.</para>

      <para>Sehen Sie stattdessen etwas wie dies:</para>

      <screen>&prompt.root; <userinput>host example.FreeBSD.org</userinput>
example.FreeBSD.org has address 204.216.27.XX
example.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org</screen>

      <para>So wird jede an Ihren Rechner
	(<hostid role="fqdn">example.FreeBSD.org</hostid>) gesandte E-Mail
	auf <hostid>hub</hostid> unter dem gleichen Benutzernamen gesammelt
	anstatt direkt zu Ihrem Rechner geschickt zu werden.</para>

      <para>Die obige Information wird von Ihrem DNS-Server verwaltet.
	Der DNS-Eintrag, der die E-Mail Routen-Information enthält, ist der
        <foreignphrase><emphasis>M</emphasis>ail
	e<emphasis>X</emphasis>change</foreignphrase> Eintrag.  Existiert kein
	MX-Eintrag, werden E-Mails direkt anhand der IP-Adresse geliefert.
      </para>
      <para>Der MX-Eintrag für
	<hostid role="fqdn">freefall.FreeBSD.org</hostid> sah einmal so aus:
        </para>

      <programlisting>freefall		MX	30	mail.crl.net
freefall		MX	40	agora.rdrop.com
freefall		MX	10	freefall.FreeBSD.org
freefall		MX	20	who.cdrom.com</programlisting>

      <para>Wie Sie sehen können, hatte <hostid>freefall</hostid>
	viele MX-Einträge.  Die kleinste MX-Nummer ist der Rechner, der
	die E-Mails letztendlich bekommt, wobei die anderen temporär
	E-Mails in Warteschlangen einreihen während
	<hostid>freefall</hostid> beschäftigt oder unerreichbar ist.</para>

      <para>Um besonders nützlich zu sein, sollten stellvertretende
	MX-Seiten nicht dieselben Internet-Verbindungen wie Ihre eigene
	verwenden.  Für Ihren Internet-Dienstleister oder andere
	sollte es kein Problem darstellen, Ihnen diesen Dienst zur
	Verfügung zu stellen.</para>
    </sect2>

    <sect2 id="mail-domain">
      <title>E-Mails für Ihre Domäne</title>

      <para>Um einen <quote>E-Mail-Server</quote> (auch bekannt als
	Mail-Server) einzurichten, benötigen Sie eine Umlenkung
	jeglicher E-Mails zu Ihm, die an die verschiedenen Workstations
	gesendet werden.  Im Grunde wollen Sie jede an Ihre Domäne
	gesendete E-Mail abfangen (in diesem Fall
	<hostid role="fqdn">*.FreeBSD.org</hostid>), damit Ihre Benutzer
	E-Mails mittels POP oder direkt auf dem Server
	überprüfen können.</para>

      <para>Am einfachsten ist es, wenn Accounts mit gleichen
        <emphasis>Benutzernamen</emphasis> auf beiden
	Maschinen existieren.  Verwenden Sie &man.adduser.8;, um
	dies zu erreichen.</para>

      <para>Der E-Mail-Server, den Sie verwenden wollen, muss als
	für den E-Mail-Austausch zuständiger Rechner
	auf jeder Workstation im Netzwerk gekennzeichnet werden.  Dies wird
	in der DNS-Konfiguration so ausgeführt:</para>

      <programlisting>example.FreeBSD.org	A	204.216.27.XX		; Workstation
			MX	10 hub.FreeBSD.org	; Mailhost</programlisting>

      <para>Diese Einstellung wird E-Mail für die Workstations zu dem
	E-Mail-Server leiten, wo auch immer der A-Eintrag hinzeigt.
	Die E-Mails werden zum MX-Rechner gesandt.</para>

      <para>Sofern Sie nicht einen DNS-Server laufen haben, können
	Sie diese Einstellung nicht selbst vornehmen.  Ist es Ihnen nicht
	möglich einen eigenen DNS-Server laufen zu lassen, reden Sie
	mit Ihren Internet-Dienstleister oder wer auch immer Ihre
	DNS-Verwaltung übernimmt.</para>

      <para>Wenn Sie ein virtuelles E-Mail System anbieten, werden
	die folgenden Informationen nützlich sein.  Für ein Beispiel
	nehmen wir an, Sie haben einen Kunden mit einer eigenen Domäne,
	in diesem Fall <hostid role="domainname">customer1.org</hostid> und
	Sie wollen jegliche E-Mails für
	<hostid role="domainname">customer1.org</hostid> zu Ihrem
	E-Mail-Server gesendet haben, der
	<hostid role="fqdn">mail.myhost.com</hostid> heißt.
	Der Eintrag in Ihrem DNS sollte wie folgender aussehen:</para>

      <programlisting>customer1.org		MX	10	mail.myhost.com
      </programlisting>

      <para>Sie benötigen <emphasis>keinen</emphasis> A-Eintrag, wenn
        Sie für die Domain nur E-Mails verwalten wollen.</para>

      <note>
	<para>Bedenken Sie, dass das Pingen von
	  <hostid role="domainname">customer1.org</hostid> nicht möglich
	  ist, solange kein A-Eintrag für diese Domäne existiert.
	  </para>
      </note>

      <para>Jetzt müssen Sie nur noch
	<application>sendmail</application> auf Ihrem Mailrechner mitteilen,
	für welche Domänen und/oder Rechnernamen es Mails akzeptieren
	soll.  Es gibt einige Wege wie dies geschehen kann.  Die Folgenden
	funktionieren alle gleichermaßen:</para>

      <itemizedlist>
        <listitem>
	  <para>Fügen Sie die Rechnernamen zu Ihrer
	  <filename>/etc/sendmail.cw</filename> Datei hinzu, wenn Sie
	  <literal>FEATURE(use_cw_file)</literal> verwenden.  Ab
	  <application>sendmail</application>&nbsp;8.10 heißt diese Datei
	  <filename>/etc/mail/local-host-names</filename>.</para>
	</listitem>

	<listitem>
	  <para>Tragen Sie eine Zeile mit dem Inhalt
	    <literal>Cwyour.host.com</literal> in Ihre
	    <filename>/etc/sendmail.cf</filename> Datei (beziehungsweise
	    <filename>/etc/mail/sendmail.cf</filename> ab
	    <application>sendmail</application>&nbsp;8.10) ein.</para>
	</listitem>
      </itemizedlist>
    </sect2>
  </sect1>

  <sect1 id="SMTP-UUCP">
    <title>SMTP über UUCP</title>

    <para>Die <application>sendmail</application>-Konfigurationsdatei,
      die mit FreeBSD ausgeliefert wird, ist für Systeme geeignet,
      die direkt ans Internet angeschlossen sind.  Systeme, die
      ihre E-Mails per UUCP austauschen wollen, müssen eine andere
      Konfigurationsdatei installieren.</para>

    <para>Die manuelle Bearbeitung von
      <filename>/etc/mail/sendmail.cf</filename> ist nur etwas
      für Puristen.  Sendmail Version&nbsp;8 bietet die neue
      Möglichkeit der Generierung von Konfigurationsdateien
      über eine Vorverarbeitung mit &man.m4.1;, wobei die
      tatsächliche, händische Konfiguration auf einer
      höheren Abstraktionsstufe stattfindet.  Sie sollten
      die Konfigurationsdateien unter
      <filename>/usr/src/usr.sbin/sendmail/cf</filename>
      benutzen.
      Die Datei <filename>README</filename> im Verzeichnis
      <filename>cf</filename> kann zur grundlegenden
      Einführung in die &man.m4.1;-Konfiguration dienen.</para>

    <para>Zur Zustellung über UUCP sind Sie am besten damit
      beraten, die <filename>mailertable</filename>-Datenbank
      zu benutzen.  Mit dieser Datenbank ermittelt
      <application>sendmail</application> mit welchem
      Protokoll und wohin eine E-Mail zugestellt werden soll.</para>

    <para>Zunächst müssen Sie Ihre
      <filename>.mc</filename>-Datei erstellen.  Das Verzeichnis
      <filename>/usr/share/sendmail/cf/cf</filename> ist
      die Basis für diese Dateien.  Sehen Sie sich um, es
      gibt bereits einige Beispiele.  Wenn Sie Ihre Datei
      <filename>foo.mc</filename> genannt haben, müssen Sie
      die folgenden Befehle ausführen, um sie in eine
      gültige <filename>sendmail.cf</filename> umzuwandeln:</para>

    <screen>&prompt.root; <userinput>cd /etc/mail</userinput>
&prompt.root; <userinput>make foo.cf</userinput>
&prompt.root; <userinput>cp foo.cf /etc/mail/sendmail.cf</userinput></screen>

    <para>Eine typische <filename>.mc</filename>-Datei
      könnte so aussehen:</para>

    <programlisting>VERSIONID(`<replaceable>Your version number</replaceable>')
OSTYPE(bsd4.4)

FEATURE(accept_unresolvable_domains)
FEATURE(nocanonify)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')

define(`UUCP_RELAY', <replaceable>your.uucp.relay</replaceable>)
define(`UUCP_MAX_SIZE', 200000)
define(`confDONT_PROBE_INTERFACES')

MAILER(local)
MAILER(smtp)
MAILER(uucp)

Cw    <replaceable>your.alias.host.name</replaceable>
Cw    <replaceable>youruucpnodename.UUCP</replaceable></programlisting>

    <para>Die Einstellungen <literal>accept_unresolvable_domains</literal>,
      <literal>nocanonify</literal> und
      <literal>confDONT_PROBE_INTERFACES</literal> werden die
      Benutzung von DNS bei der Zustellung von Mails verhindern.
      Die Klausel <literal>UUCP_RELAY</literal> wird aus
      seltsamen Gründen benötigt &ndash; fragen Sie nicht,
      warum.  Setzen Sie dort einfach den Namen eines Hosts ein,
      der in der Lage ist, Adressen mit der Pseudodomäne
      .UUCP zu behandeln; wahrscheinlich werden Sie dort den
      Relayhost Ihres ISP eintragen.</para>

    <para>Wenn Sie soweit sind, müssen Sie die Datei
      <filename>/etc/mail/mailertable</filename> erzeugen.  Hierzu
      wieder ein typisches Beispiel:</para>

    <programlisting>#
# makemap hash /etc/mail/mailertable.db &lt; /etc/mail/mailertable
#
.  uucp-dom:<replaceable>your.uucp.relay</replaceable></programlisting>

    <para>Ein komplexeres Beispiel könnte wie folgt
      aussehen:</para>

    <programlisting>#
# makemap hash /etc/mail/mailertable.db &lt; /etc/mail/mailertable
#
horus.interface-business.de   uucp-dom:horus
.interface-business.de        uucp-dom:if-bus
interface-business.de         uucp-dom:if-bus
.heep.sax.de                  smtp8:%1
horus.UUCP                    uucp-dom:horus
if-bus.UUCP                   uucp-dom:if-bus
.                             uucp-dom:</programlisting>

    <para>Die ersten drei Zeilen behandeln
      spezielle Fälle, in denen an Domänen adressierte
      E-Mails nicht über die Standard-Route versendet werden
      sollen, sondern zu einem UUCP-Nachbarn, um den Zustellweg
      <quote>abzukürzen</quote>.  Die nächsten Zeilen
      behandeln E-Mails an Rechner in der lokalen Domain.
      Diese Mails können direkt
      per SMTP zugestellt werden.  Schließlich werden die
      UUCP-Nachbarn in der Notation mit der Pseudodomäne
      .UUCP aufgeführt, um die Standardregeln mit
      <literal><replaceable>uucp-neighbour</replaceable>!<replaceable>recipient</replaceable></literal>
      zu überschreiben.  Die letzte Zeile besteht stets aus
      einem einzelnen Punkt, der als Ihr Universalgateway in die
      Welt dient.  Alle Knoten hinter dem Schlüsselwort
      <literal>uucp-dom:</literal> müssen gültige
      UUCP-Nachbarn sein, was Sie mit dem Befehl
      <literal>uuname</literal> überprüfen
      können.</para>

    <para>Als Erinnerung daran, dass diese Datei in eine
      DBM-Datenbankdatei konvertiert werden muss, bevor sie
      benutzt werden kann, sollte der Befehl hierzu als
      Kommentar am Anfang der <filename>mailertable</filename>
      plaziert werden.  Sie müssen den Befehl jedes Mal
      ausführen, wenn Sie die <filename>mailertable</filename>
      geändert haben.</para>

    <para>Abschließender Hinweis:  Wenn Sie unsicher sind,
      ob bestimmte Zustellwege funktionieren, erinnern Sie sich
      an die Option <option>-bt</option> von
      <application>sendmail</application>.  Sie startet
      <application>sendmail</application> im
      <emphasis>Adress-Testmodus</emphasis>; geben Sie
      einfach <literal>3,0</literal>, gefolgt von der Adresse,
      für die Sie den Zustellweg testen möchten, ein.
      Die letzte Zeile nennt Ihnen den benutzten Mailagenten,
      den Zielhost, mit dem dieser Agent aufgerufen wird und die
      (möglicherweise  übersetzte) Adresse.  Verlassen Sie diesen
      Modus, indem Sie
      <keycombo action="simul">
	<keycap>Ctrl</keycap>
	<keycap>D</keycap>
      </keycombo> eingeben.</para>

    <screen>&prompt.user; <userinput>sendmail -bt</userinput>
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter &lt;ruleset&gt; &lt;address&gt;
<prompt>&gt;</prompt> <userinput>3,0 foo@example.com</userinput>
canonify           input: foo @ example . com
...
parse            returns: $# uucp-dom $@ <replaceable>your.uucp.relay</replaceable> $: foo &lt; @ example . com . &gt;
<prompt>&gt;</prompt> <userinput>^D</userinput></screen>
  </sect1>

  <sect1 id="outgoing-only">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Bill</firstname>
	  <surname>Moran</surname>
	  <contrib>Beigetragen von </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>Ausgehende E-Mail über einen Relay versenden</title>

    <para>In vielen Fällen wollen Sie E-Mail nur über
      einen Relay verschicken.  Zum Beispiel:</para>

    <itemizedlist>
      <listitem>
	<para>Sie wollen von Ihrem Arbeitsplatz Programme wie
	  &man.send-pr.1; benutzen.  Dazu soll der Relay
	  Ihres ISPs verwendet werden.</para>
      </listitem>

      <listitem>
	<para>Ein Server, der E-Mails nicht selbst verarbeitet,
	  soll alle E-Mails zu einem Relay schicken.</para>
      </listitem>
    </itemizedlist>

    <para>So ziemlich jeder <acronym>MTA</acronym> kann diese
      Aufgaben erfüllen.  Leider ist es oft schwierig, einen
      vollwertigen <acronym>MTA</acronym> so zu konfigurieren,
      dass er lediglich ausgehende E-Mails weiterleitet.
      Es ist übertrieben, Programme wie
      <application>sendmail</application> und
      <application>postfix</application> nur für diesen
      Zweck einzusetzen.</para>

    <para>Weiterhin kann es sein, dass die Bestimmungen Ihres
      Internetzugangs es verbieten, einen eigenen Mail-Server
      zu betreiben.</para>

    <para>Um die hier beschriebenen Anforderungen zu erfüllen,
      installieren Sie einfach den Port
      <filename role="package">mail/ssmtp</filename>.  Führen
      Sie dazu als <username>root</username> die nachstehenden
      Befehle aus:</para>

    <screen>&prompt.root; <userinput>cd /usr/ports/mail/ssmtp</userinput>
&prompt.root; <userinput>make install replace clean</userinput></screen>

    <para>Nach der Installation konfigurieren Sie
      <filename role="package">mail/ssmtp</filename> mit den
      folgenden vier Zeilen in
      <filename>/usr/local/etc/ssmtp/ssmtp.conf</filename>:</para>

    <programlisting>root=yourrealemail@example.com
mailhub=mail.example.com
rewriteDomain=example.com
hostname=_HOSTNAME_</programlisting>

    <para>Stellen Sie sicher, dass Sie eine gültige E-Mail-Adresse
      für <username>root</username> verwenden.  Geben Sie
      für <hostid role="fqdn">mail.example.com</hostid>
      den Mail-Relay Ihres ISPs an (einige ISPs nennen den
      Relay <quote>Postausgangsserver</quote> oder
      <quote>SMTP-Server</quote>).</para>

    <para>Deaktivieren Sie <application>sendmail</application>
      indem Sie in <filename>/etc/rc.conf</filename>
      <literal>sendmail_enable="NONE"</literal> angeben.</para>

    <para><filename role="package">mail/ssmtp</filename> verfügt
      über weitere Optionen.  Die Musterkonfiguration in
      <filename>/usr/local/etc/ssmtp</filename> oder die Hilfeseite
      von <application>ssmtp</application> enthalten weitere
      Beispiele.</para>

    <para>Wenn Sie <application>ssmtp</application> wie hier
      beschrieben eingerichtet haben, funktionieren Anwendungen,
      die E-Mails von Ihrem Rechner verschicken.  Sie verstoßen
      damit auch nicht gegen Bestimmungen Ihres ISPs und laufen
      nicht in Gefahr, dass Ihr Rechner zum Versenden von
      Spams missbraucht wird.</para>
  </sect1>

  <sect1 id="SMTP-dialup">
    <title>E-Mail über Einwahl-Verbindungen</title>

    <para>Wenn Sie eine feste IP-Adresse haben, müssen Sie
      die Standardeinstellungen wahrscheinlich gar nicht
      ändern.  Stellen Sie Ihren Hostnamen entsprechend
      Ihrem zugeordneten Internetnamen ein und
      <application>sendmail</application> übernimmt
      das Übrige.</para>

    <para>Wenn Sie eine dynamische IP-Adresse haben und eine
      <application>PPP</application>-Wählverbindung zum
      Internet benutzen, besitzen Sie wahrscheinlich eine
      Mailbox auf dem Mailserver Ihres ISPs.  Lassen
      Sie uns annehmen, die Domäne ihres ISPs sei <hostid
      role="domainname">example.net</hostid> und Ihr Benutzername
      <username>user</username>; außerdem nehmen wir an,
      dass Sie Ihre Maschine <hostid role="fqdn">bsd.home</hostid>
      genannt haben und, dass Ihr ISP ihnen gesagt hat, dass Sie
      <hostid role="fqdn">relay.example.net</hostid> als Mail-Relayhost
      benutzen können.</para>

    <para>Um Mails aus Ihrer Mailbox abzuholen, müssen Sie
      ein gesondertes Programm installieren;
      <application>fetchmail</application> ist eine gute Wahl,
      weil es viele verschiedene Protokolle unterstützt.
      Das Programm können Sie als Paket oder von der
      Ports-Sammlung (<filename role="package">mail/fetchmail</filename>)
      installieren.  Für gewöhnlich wird von Ihrem
      <acronym>ISP</acronym> <acronym>POP</acronym> zur
      Verfügung gestellt.  Falls Sie sich dafür
      entschieden haben, User-<acronym>PPP</acronym> zu benutzen,
      können Sie durch folgenden Eintrag in der Datei
      <filename>/etc/ppp/ppp.linkup</filename> Ihre Mails
      automatisch abholen lassen, wenn eine Verbindung zum Netz
      aufgebaut wird:</para>

    <programlisting>MYADDR:
!bg su user -c fetchmail</programlisting>

    <para>Falls Sie (wie unten gezeigt)
      <application>sendmail</application> benutzen, um Mails an
      nicht-lokale Benutzer zu versenden, fügen Sie den
      Befehl</para>

    <programlisting>!bg su user -c "sendmail -q"</programlisting>

    <para>nach dem oben gezeigten Eintrag ein.  Das
      veranlasst <application>sendmail</application>, Ihre
      ausgehenden Mails zu verarbeiten, sobald eine Verbindung
      zum Internet aufgebaut wird.</para>

    <para>Nehmen wir an, dass auf <hostid role="fqdn">bsd.home</hostid>
      ein Benutzer <username>user</username> existiert.
      Erstellen Sie auf <hostid role="fqdn">bsd.home</hostid>
      im Heimatverzeichnis von <username>user</username> die Datei
      <filename>.fetchmailrc</filename>:</para>

    <programlisting>poll example.net protocol pop3 fetchall pass MySecret;</programlisting>

    <para>Diese Datei sollte für niemandem außer
      <username>user</username> lesbar sein, weil sie das
      Passwort <literal>MySecret</literal> enthält.</para>

    <para>Um Mails mit dem richtigen <literal>from:</literal>-Header
      zu versenden, müssen Sie <application>sendmail</application>
      mitteilen, dass es <email>user@example.net</email> und nicht
      <email>user@bsd.home</email> benutzen soll.  Eventuell
      möchten Sie auch, dass <application>sendmail</application>
      alle Mails über <hostid role="fqdn">relay.example.net</hostid>
      versendet, um eine schnellere Übertragung von Mails zu
      gewährleisten.</para>

    <para>Die folgende <filename>.mc</filename>-Datei sollte
      ausreichen:</para>

    <programlisting>VERSIONID(`bsd.home.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
Cwlocalhost
Cwbsd.home
MASQUERADE_AS(`example.net')dnl
FEATURE(allmasquerade)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(nocanonify)dnl
FEATURE(nodns)dnl
define(`SMART_HOST', `relay.example.net')
Dmbsd.home
define(`confDOMAIN_NAME',`bsd.home')dnl
define(`confDELIVERY_MODE',`deferred')dnl</programlisting>

    <para>Im vorherigen Abschnitt finden Sie Details dazu, wie
      Sie aus dieser <filename>.mc</filename>-Datei eine Datei
      <filename>sendmail.cf</filename> erstellen können.
      Vergessen Sie auch nicht,
      <application>sendmail</application> neu zu starten,
      nachdem Sie <filename>sendmail.cf</filename>
      verändert haben.</para>
  </sect1>

  <sect1 id="SMTP-Auth">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>James</firstname>
	  <surname>Gorham</surname>
	  <contrib>Geschrieben von </contrib>
	</author>
      </authorgroup>
    </sect1info>
    <title>SMTP-Authentifizierung</title>

    <para>Ein Mail-Server, der <acronym>SMTP</acronym>-Authentifizierung
      verwendet, bietet einige Vorteile.  Die erforderliche
      Authentifizierung erhöht die Sicherheit von
      <application>sendmail</application> und Benutzer, die auf wechselnden
      entfernten Rechnern arbeiten, können denselben Mail-Server
      verwenden ohne Ihr Benutzerprogramm jedes Mal neu zu
      konfigurieren.</para>

    <procedure>
      <step>
	<para>Installieren Sie den Port <filename
	    role="package">security/cyrus-sasl2</filename>.  Der Port
	  verfügt über einige Optionen, die während
	  der Übersetzung festgelegt werden.  Für die in
	  diesem Abschnitt beschriebene Methode zur
	  SMTP-Authentifizierung muss die Option
	  <option>LOGIN</option> aktiviert werden.</para>
      </step>

      <step>
	<para>Editieren Sie nach der Installation von <filename
	    role="package">security/cyrus-sasl2</filename> die Datei
	  <filename>/usr/local/lib/sasl2/Sendmail.conf</filename> (erstellen
	  Sie die Datei, wenn sie nicht existiert) und fügen Sie die
	  folgende Zeile hinzu:</para>

	<programlisting>pwcheck_method: saslauthd</programlisting>
      </step>

      <step>
	<para>Danach installieren Sie den Port <filename
	  role="package">security/cyrus-sasl2-saslauthd</filename>,
	  und fügen die folgende Zeile in
	  <filename>/etc/rc.conf</filename> ein:</para>

	<programlisting>saslauthd_enable="YES"</programlisting>

	<para>Zuletzt müssen Sie noch den saslauthd-Daemon
	  starten:</para>

	<screen>&prompt.root; <userinput>/usr/local/etc/rc.d/saslauthd start</userinput></screen>

	<para>Dieser Daemon agiert als Broker zwischen
	  <application>sendmail</application> und Ihrer
	  FreeBSD-<filename>passwd</filename>-Datenbank.  Dadurch
	  müssen zum Versenden von E-Mails keine zusätzlichen
	  Accounts und Passwörter angelegt werden.  Die Benutzer
	  verwenden dasselbe Passwort zum Anmelden wie zum Verschicken von
	  E-Mails.</para>
      </step>

      <step>
	<para>Fügen Sie jetzt in <filename>/etc/make.conf</filename>
	  die nachstehenden Zeilen hinzu:</para>

	<programlisting>SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
SENDMAIL_LDFLAGS=-L/usr/local/lib
SENDMAIL_LDADD=-lsasl2</programlisting>

	<para>Beim Übersetzen von <application>sendmail</application>
	  werden damit die <filename
	    role="package">cyrus-sasl2</filename>-Bibliotheken benutzt.
	  Stellen Sie daher vor dem Übersetzen von
	  <application>sendmail</application> sicher, dass der Port
	  <filename role="package">cyrus-sasl2</filename> installiert
	  ist.</para>
      </step>

      <step>
	<para>Übersetzen Sie <application>sendmail</application> mit
	  den nachstehenden Kommandos:</para>

	<screen>&prompt.root; <userinput>cd /usr/src/lib/libsmutil</userinput>
&prompt.root; <userinput>make cleandir && make obj && make</userinput>
&prompt.root; <userinput>cd /usr/src/lib/libsm</userinput>
&prompt.root; <userinput>make cleandir && make obj && make</userinput>
&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail</userinput>
&prompt.root; <userinput>make cleandir && make obj && make && make install</userinput></screen>

	<para><application>sendmail</application> sollte sich ohne Probleme
	  übersetzen lassen, wenn die Dateien in
	  <filename>/usr/src</filename> nicht verändert wurden und die
	  benötigten Bibliotheken installiert sind.</para>
      </step>

      <step>
	<para>Nachdem Sie <application>sendmail</application> installiert
	  haben, editieren Sie <filename>/etc/mail/freebsd.mc</filename>
	  beziehungsweise die verwendete <filename>.mc</filename>-Datei.
	  Viele Administratoren verwenden die Ausgabe von &man.hostname.1;,
	  um der <filename>.mc</filename>-Datei einen eindeutigen Namen
	  zu geben.  Fügen Sie die folgenden Zeilen in die
	  <filename>.mc</filename>-Datei ein:</para>

	<programlisting>dnl set SASL options
TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl</programlisting>

	<para>Diese Anweisungen konfigurieren die Methoden, die
	  <application>sendmail</application> zur Authentifizierung
	  verwendet.  Lesen Sie die mitgelieferte Dokumentation, wenn
	  Sie eine andere Methode als <option>pwcheck</option> verwenden
	  wollen.</para>
      </step>

      <step>
	<para>Abschließend rufen Sie &man.make.1; im Verzeichnis
	  <filename>/etc/mail</filename> auf.  Damit wird aus der
	  <filename>.mc</filename>-Datei eine neue
	  <filename>.cf</filename>-Datei (zum Beispiel
	  <filename>freebsd.cf</filename>) erzeugt.  Das Kommando
	  <command>make install restart</command> installiert die Datei
	  nach <filename>/etc/mail/sendmail.cf</filename> und startet
	  <application>sendmail</application> neu.  Weitere Informationen
	  entnehmen Sie bitte
	  <filename>/etc/mail/Makefile</filename>.</para>
      </step>
    </procedure>

    <para>Wenn alles funktioniert hat, tragen Sie in Ihrem
      Mail-Benutzerprogramm das Passwort für die Authentifizierung ein
      und versenden Sie zum Testen eine E-Mail.  Wenn Sie Probleme haben,
      setzen Sie den <option>LogLevel</option> von
      <application>sendmail</application> auf <literal>13</literal> und
      untersuchen die Fehlermeldungen in
      <filename>/var/log/maillog</filename>.</para>

    <para>Weitere Information erhalten Sie im WWW auf der
      <ulink url="http://www.sendmail.org/~ca/email/auth.html">Webseite von
        <application>sendmail</application></ulink>.</para>
  </sect1>

  <sect1 id="mail-agents">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Silver</surname>
	  <contrib>Beigetragen von </contrib>
	</author>
      </authorgroup>
    </sect1info>
    <title>E-Mail-Programme</title>

    <indexterm>
      <primary>Mail-User-Agents</primary>
    </indexterm>

    <indexterm>
      <primary>E-Mail-Programme</primary>
    </indexterm>

    <para>Anwendungen, die E-Mails versenden und empfangen, werden
      als E-Mail-Programme oder Mail-User-Agents (<acronym>MUA</acronym>)
      bezeichnet.  Mit der Entwicklung und Ausbreitung von E-Mail
      wachsen auch die E-Mail-Programme und bieten Benutzern
      mehr Funktionen und höhere Flexibilität.  Unter
      &os; laufen zahlreiche E-Mail-Programme, die Sie alle
      mit der <link linkend="ports">&os; Ports-Sammlung</link>
      installieren können.  Sie können wählen zwischen
      Programmen mit grafischer Benutzeroberfläche,
      wie <application>evolution</application> oder
      <application>balsa</application>, konsolenorientierten
      Programmen wie <application>mutt</application>,
      <application>alpine</application> oder <command>mail</command>,
      oder auch Programmen mit Web-Schnittstellen, die von einigen
      großen Institutionen benutzt werden.</para>

    <sect2 id="mail-command">
      <title>mail</title>

      <para>Das standardmäßig unter &os; installierte
	E-Mail-Programm ist &man.mail.1;.  Das Programm ist
	konsolenorientiert und enthält alle Funktionen,
	die zum Versand und Empfang textbasierter
	E-Mails erforderlich sind.  Allerdings lassen sich
	Anhänge mit <command>mail</command> nur schwer
	bearbeiten und kann <command>mail</command> kann nur auf
	lokale Postfächer zugreifen.</para>

      <para><command>mail</command> kann nicht direkt auf
	<acronym>POP</acronym>- oder <acronym>IMAP</acronym>-Server
	zugreifen.  Entfernte Postfächer können aber
	mit einer Anwendung wie <application>fetchmail</application>
	in die lokale Datei <filename>mbox</filename> geladen
	werden.  <application>fetchmail</application> wird später
	in diesem Kapitel besprochen (<xref linkend="mail-fetchmail"/>).</para>

      <para>Um E-Mails zu versenden oder zu empfangen, starten
	Sie einfach <command>mail</command> wie im nachstehenden
	Beispiel:</para>

      <screen>&prompt.user; <userinput>mail</userinput></screen>

      <para>Das Werkzeug <command>mail</command> liest automatisch
	den Inhalt des Benutzer-Postfachs im Verzeichnis
	<filename class="directory">/var/mail</filename>.  Sollte
	das Postfach leer sein, beendet sich <command>mail</command>
	mit der Nachricht, dass keine E-Mails vorhanden sind.
	Wenn das Postfach gelesen wurde, wird die Benutzeroberfläche
	gestartet und eine Liste der E-Mails angezeigt.
	Die E-Mails werden automatisch nummeriert wie
	im folgenden Beispiel gezeigt:</para>

      <screen>Mail version 8.1 6/6/93.  Type ? for help.
"/var/mail/marcs": 3 messages 3 new
>N  1 root@localhost        Mon Mar  8 14:05  14/510   "test"
 N  2 root@localhost        Mon Mar  8 14:05  14/509   "user account"
 N  3 root@localhost        Mon Mar  8 14:05  14/509   "sample"</screen>

      <para>Einzelne Nachrichten können Sie jetzt mit dem
	<command>mail</command>-Kommando <keycap>t</keycap>
	gefolgt von der Nummer der Nachricht lesen.  Im nachstehenden
	Beispiel lesen wir die erste E-Mail:</para>

      <screen>&amp; <userinput>t 1</userinput>
Message 1:
From root@localhost  Mon Mar  8 14:05:52 2004
X-Original-To: marcs@localhost
Delivered-To: marcs@localhost
To: marcs@localhost
Subject: test
Date: Mon,  8 Mar 2004 14:05:52 +0200 (SAST)
From: root@localhost (Charlie Root)

Das ist eine Test-Nachricht.  Antworte bitte!</screen>

      <para>Die Taste <keycap>t</keycap> zeigt die Nachricht zusammen
	mit dem vollständigen Nachrichtenkopf an.  Wenn Sie
	die Liste der E-Mails erneut sehen wollen, drücken
	Sie die Taste <keycap>h</keycap>.</para>

      <para>Um auf eine E-Mail zu antworten, benutzen Sie
	im Programm <command>mail</command> entweder die
	Taste <keycap>R</keycap> oder die Taste <keycap>r</keycap>.
	Mit der Taste <keycap>R</keycap> weisen Sie
	<command>mail</command> an, dem Versender der
	Nachricht zu antworten.  Mit der Taste <keycap>r</keycap>
	antworten Sie nicht nur dem Versender sondern auch
	allen Empfängern der Nachricht.  Sie können
	zusammen mit diesen Kommandos eine Zahl angeben,
	um die E-Mail, auf die Sie antworten wollen, auszusuchen.
	Wenn Sie den Befehl abgesetzt haben, schreiben Sie
	Ihre Antwort und beenden die Eingabe mit einem
	einzelnen Punkt (<literal>.</literal>) auf einer
	neuen Zeile.  Den Vorgang zeigt das nachstehende Beispiel:</para>

      <screen>&amp; <userinput>R 1</userinput>
To: root@localhost
Subject: Re: test

<userinput>Danke, ich habe deine E-Mail erhalten.
.</userinput>
EOT</screen>

      <para>Neue E-Mails können Sie mit der Taste
	<keycap>m</keycap> verschicken.  Geben Sie dabei die
	E-Mail-Adresse des Empfängers an.  Sie können
	auch mehrere durch Kommata (<literal>,</literal>) getrennte
	Empfänger angeben.  Geben Sie dann den Betreff
	(<foreignphrase>subject</foreignphrase>) der Nachricht
	gefolgt von der Nachricht selbst ein.  Schließen
	Sie die Nachricht mit einem einzelnen Punkt (<literal>.</literal>)
	auf einer neuen Zeile ab.</para>

      <screen>&amp; <userinput>mail root@localhost</userinput>
Subject: <userinput>Ich habe die E-Mails im Griff!

Jetzt kann ich E-Mails versenden und empfangen ... :)
.</userinput>
EOT</screen>

      <para>Die Taste <keycap>?</keycap> zeigt zu jeder Zeit
	einen Hilfetext an.  Wenn Sie weitere Hilfe benötigen,
	lesen Sie bitte die Hilfeseite &man.mail.1;.</para>

      <note>
	<para>Wie vorhin gesagt, wurde das Programm &man.mail.1;
	  nicht für den Umgang mit Anhängen entworfen
	  und kann daher sehr schlecht mit Anhängen umgehen.
	  Neuere <acronym>MUA</acronym>s wie
	  <application>mutt</application> gehen wesentlich besser
	  mit  Anhängen um.  Sollten Sie dennoch das
	  <command>mail</command>-Kommando benutzen wollen,
	  werden Sie den Port
	  <filename role="package">converters/mpack</filename>
	  sehr zu schätzen wissen.</para>
      </note>
    </sect2>

    <sect2 id="mutt-command">
      <title>mutt</title>

      <para><application>mutt</application> ist ein schlankes aber
	sehr leistungsfähiges E-Mail-Programm mit hervorrangenden
	Funktionen, unter anderem:</para>

      <itemizedlist>
	<listitem>
	  <para><application>mutt</application> kann den Verlauf
	    einer Diskussion (<foreignphrase>threading</foreignphrase>)
	    darstellen.</para>
	</listitem>

	<listitem>
	  <para>Durch die Integration von PGP können
	    E-Mails signiert und verschlüsselt werden.</para>
	</listitem>

	<listitem>
	  <para>MIME wird unterstützt.</para>
	</listitem>

	<listitem>
	  <para>Postfächer können im Maildir-Format
	    gespeichert werden.</para>
	</listitem>

	<listitem>
	  <para><application>mutt</application> lässt sich
	    im höchsten Maße an lokale Bedürfnisse
	    anpassen.</para>
	</listitem>
      </itemizedlist>

      <para>Wegen des Funktionsumfangs ist <application>mutt</application>
	eins der ausgefeiltesten E-Mail-Programme.  Mehr über
	<application>mutt</application> erfahren Sie auf der Seite
	<ulink url="http://www.mutt.org"></ulink>.</para>

      <para>Der Port <filename role="package">mail/mutt</filename>
	enthält die Produktionsversion von
	<application>mutt</application>, die aktuelle
	Entwicklerversion befindet sich im Port
	<filename role="package">mail/mutt-devel</filename>.
	Wenn <application>mutt</application> installiert ist,
	wird das Programm mit dem nachstehenden Kommando gestartet:</para>

      <screen>&prompt.user; <userinput>mutt</userinput></screen>

      <para><application>mutt</application> liest automatisch den
	Inhalt des Benutzer-Postfachs  im Verzeichnis
	<filename class="directory">/var/mail</filename>.  Wenn
	E-Mails vorhanden sind, werden diese dargestellt.  Sind
	keine E-Mails vorhanden, wartet <application>mutt</application>
	auf Benutzereingaben.  Das folgende Beispiel zeigt, wie
	<application>mutt</application> eine Nachrichten-Liste
	darstellt:</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/mutt1" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Wenn Sie eine Nachricht lesen wollen, wählen Sie
	die Nachricht einfach mit den Pfeiltasten aus und drücken
	<keycap>Enter</keycap>.  <application>mutt</application>
	zeigt E-Mails wie folgt an:</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/mutt2" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Wenn Sie auf eine E-Mail antworten, können Sie,
	wie in &man.mail.1;, aussuchen, ob Sie nur dem Versender
	oder auch allen Empfängern antworten wollen.  Wenn
	Sie nur dem Versender antworten wollen, drücken Sie
	die Taste <keycap>r</keycap>.  Wenn sie dem Versender und
	allen Empfängern antworten wollen, drücken Sie
	die Taste <keycap>g</keycap>.</para>

      <note>
	<para>Zum Erstellen oder zum Beantworten von E-Mails
	  ruft <application>mutt</application> den Editor
	  &man.vi.1; auf.  Wenn Sie den von
	  <application>mutt</application> verwendeten Editor
	  ändern möchten, erstellen oder editieren
	  Sie in Ihrem Heimatverzeichnis die Datei
	  <filename>.muttrc</filename>.  Den Editor können
	  Sie in <filename>.muttrc</filename> mit der Variablen
	  <literal>editor</literal> festlegen.  Alternativ
	  können Sie auch die Umgebungsvariable
	  <envar>EDITOR</envar> setzen.  Weitere Informationen
	  zur Konfiguration von <application>mutt</application>
	  finden Sie unter <ulink
	  url="http://www.mutt.org/"></ulink>.</para>
      </note>

      <para>Drücken Sie die Taste <keycap>m</keycap>, wenn
	Sie eine neue Nachricht verfassen wollen.  Nachdem
	Sie einen Betreff (<foreignphrase>subject</foreignphrase>)
	eingegeben haben, startet <application>mutt</application>
	den Editor &man.vi.1; und Sie können die Nachricht
	eingeben.  Wenn Sie fertig sind, speichern Sie die
	Nachricht und verlassen den Editor.
	<application>mutt</application> wird dann wieder aktiv
	und zeigt eine Zusammenfassung der zu sendenden Nachricht
	an.  Drücken Sie <keycap>y</keycap>, um die E-Mail
	zu versenden.  Der nachstehende Bildschirmabzug zeigt die
	Zusammenfassung der E-Mail:</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/mutt3" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para><application>mutt</application> verfügt über
	eine umfangreiche Hilfestellung.  Aus fast jedem Menü
	können Sie Hilfeseiten mit der Taste <keycap>?</keycap>
	aufrufen.  In der oberen Statuszeile werden zudem die
	verfügbaren Tastenkombinationen angezeigt.</para>
    </sect2>

    <sect2 id="alpine-command">
      <title>alpine</title>

      <para><application>alpine</application> wendet sich an
	Anfänger bietet aber ebenfalls einige Funktionen
	für Profis.</para>

      <warning>
	<para>In der Vergangenheit wurden in
	  <application>alpine</application> mehrere Schwachstellen
	  gefunden.  Die Schwachstellen gestatteten entfernten
	  Benutzern, durch das Versenden einer besonders verfassten
	  E-Mail, Programme auf dem lokalen System laufen
	  zu lassen.  Alle <emphasis>bekannten</emphasis>
	  Schwachstellen sind beseitigt worden, doch wird im
	  Quellcode von <application>alpine</application> ein
	  sehr riskanter Programmierstil verwendet, sodass der
	  &os;-Security-Officer von weiteren unbekannten
	  Schwachstellen ausgeht.  Sie installieren
	  <application>alpine</application> auf eigene Verantwortung!</para>
      </warning>

      <para>Der Port <filename role="package">mail/alpine</filename>
	enthält die aktuelle Version von
	<application>alpine</application>.  Nach der Installation
	können Sie <application>alpine</application> mit dem
	nachstehenden Kommando starten:</para>

      <screen>&prompt.user; <userinput>alpine</userinput></screen>

      <para>Wenn Sie <application>alpine</application> das erste Mal
	starten, zeigt das Programm eine Seite mit einer kurzen
	Einführung an.  Um die
	<application>alpine</application>-Benutzer zu zählen,
	bitten die Entwickler auf dieser Seite um eine anonyme E-Mail.
	Sie können diese anonyme E-Mail senden, indem Sie
	<keycap>Enter</keycap> drücken oder den
	Begrüßungsbildschirm mit der Taste
	<keycap>E</keycap> verlassen, ohne die anonyme E-Mail
	zu senden.  Der Begrüßungsbildschirm
	sieht wie folgt aus:</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/pine1" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Nach dem Begrüßungsbildschirm wird das
	Hauptmenü dargestellt, das sich leicht mit den
	Pfeiltasten bedienen lässt.  Mit Tastenkombinationen
	können Sie aus dem Hauptmenü neue E-Mails
	erstellen, Postfächer anzeigen und auch das
	Adressbuch verwalten.  Unterhalb des Menüs werden
	die Tastenkombinationen für die verfügbaren
	Aktionen angezeigt.</para>

      <para>In der Voreinstellung öffnet
        <application>pine</application> das Verzeichnis
	<filename class="directory">inbox</filename>.
	Die Taste <keycap>I</keycap> oder der Menüpunkt
	<guimenuitem>MESSAGE INDEX</guimenuitem> führt
	zu einer Nachrichten-Liste:</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/pine2" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Die Liste zeigt die Nachrichten im Arbeitsverzeichnis.
	Sie können Nachrichten mit den Pfeiltasten markieren.
	Wenn Sie eine Nachricht lesen wollen, drücken Sie
	<keycap>Enter</keycap>.</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/pine3" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Im nächsten Bildschirmabzug sehen Sie, wie
	<application>pine</application> eine Nachricht darstellt.
	Die unteren Bildschirmzeilen zeigen die verfügbaren
	Tastenkombinationen.  Mit der Taste <keycap>r</keycap>
	können Sie zum Beispiel auf die gerade angezeigte
	Nachricht antworten.</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/pine4" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Zum Antworten auf eine E-Mail wird in
	<application>pine</application> der Editor
	<application>pico</application>, der mit installiert wird,
	benutzt.  <application>pico</application> ist leicht
	zu bedienen und gerade für Anfänger besser
	geeignet als &man.vi.1; oder &man.mail.1;.  Die Antwort
	wird mit der Tastenkombination
	<keycombo action="simul">
	  <keycap>Ctrl</keycap>
	  <keycap>X</keycap>
	</keycombo>
	versendet.  Vor dem Versand bittet <application>pine</application>
	noch um eine Bestätigung.</para>

      <mediaobject>
	<imageobject>
	  <imagedata fileref="mail/pine5" format="PNG"/>
	</imageobject>
      </mediaobject>

      <para>Über den Menüpunkt <guimenuitem>SETUP</guimenuitem>
	des Hauptmenüs können Sie <application>pine</application>
	an Ihre Bedürfnisse anpassen.  Erläuterungen
	dazu finden Sie auf der Seite
	<ulink url="http://www.washington.edu/pine/"></ulink>.</para>
    </sect2>
  </sect1>

  <sect1 id="mail-fetchmail">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Silver</surname>
	  <contrib>Beigetragen von </contrib>
	</author>
      </authorgroup>
    </sect1info>
    <title>E-Mails mit fetchmail abholen</title>

    <indexterm>
      <primary>fetchmail</primary>
    </indexterm>

    <para><application>fetchmail</application> ist ein vollwertiger
      <acronym>IMAP</acronym>- und <acronym>POP</acronym>-Client.
      Mit <application>fetchmail</application> können Benutzer
      E-Mails von entfernten <acronym>IMAP</acronym>- und
      <acronym>POP</acronym>-Servern in leichter zugängliche
      lokale Postfächer laden.  <application>fetchmail</application>
      wird aus dem Port <filename role="package">mail/fetchmail</filename>
      installiert.  Das Programm bietet unter anderem folgende
      Funktionen:</para>

    <itemizedlist>
      <listitem>
	<para><application>fetchmail</application> beherrscht die
	  Protokolle <acronym>POP3</acronym>,
	  <acronym>APOP</acronym>, <acronym>KPOP</acronym>,
	  <acronym>IMAP</acronym>, <acronym>ETRN</acronym> und
	  <acronym>ODMR</acronym>.</para>
      </listitem>

      <listitem>
	<para>E-Mails können mit <acronym>SMTP</acronym>
	  weiterverarbeitet werden.  Dadurch ist garantiert, dass
	  Filter, Weiterleitungen und Aliase weiterhin
	  funktionieren.</para>
      </listitem>

      <listitem>
	<para>Das Programm kann als Dienst laufen und periodisch
	  neue Nachrichten abrufen.</para>
      </listitem>

      <listitem>
	<para><application>fetchmail</application> kann mehrere
	  Postfächer abfragen und je nach Konfiguration
	  die E-Mails an verschiedene lokale Benutzer
	  zustellen.</para>
      </listitem>
    </itemizedlist>

    <para>Wegen des Funktionsumfangs von
      <application>fetchmail</application> können hier
      nur grundlegende Funktionen beschrieben werden.
      <application>fetchmail</application> benötigt die
      Konfigurationsdatei <filename>.fetchmailrc</filename>.
      In dieser Datei werden Informationen über Server
      wie auch Benutzerdaten und Passwörter hinterlegt.
      Wegen des kritischen Inhalts von <filename>.fetchmailrc</filename>
      sollte die Datei nur lesbar für den Benutzer sein:</para>

    <screen>&prompt.user; <userinput>chmod 600 .fetchmailrc</userinput></screen>

    <para>Die folgende <filename>.fetchmailrc</filename> zeigt,
      wie das Postfach eines einzelnen Benutzers mit
      <acronym>POP</acronym> heruntergeladen wird.
      <application>fetchmail</application> wird angewiesen,
      eine Verbindung zu <hostid role="fqdn">example.com</hostid>
      herzustellen und sich dort als Benutzer <username>joesoap</username>
      mit dem Passwort <literal>XXX</literal> anzumelden.  Das Beispiel
      setzt voraus, dass es der Benutzer <username>joesoap</username>
      auch auf dem lokalen System existiert.</para>

    <programlisting>poll example.com protocol pop3 username "joesoap" password "XXX"</programlisting>

    <para>Im folgenden Beispiel werden mehrere <acronym>POP</acronym>-
      und <acronym>IMAP</acronym>-Server benutzt.  Wo notwendig,
      werden E-Mails auf andere lokale Konten umgeleitet:</para>

    <programlisting>poll example.com proto pop3:
user "joesoap", with password "XXX", is "jsoap" here;
user "andrea", with password "XXXX";
poll example2.net proto imap:
user "john", with password "XXXXX", is "myth" here;</programlisting>

    <para>Sie können <application>fetchmail</application>
      als Dienst starten.  Verwenden Sie dazu die Kommandozeilenoption
      <option>-d</option> gefolgt von einer Zeitspanne in Sekunden,
      die angibt, wie oft die Server aus der Datei
      <filename>.fetchmailrc</filename> abgefragt werden sollen.
      Mit dem nachstehenden Befehl fragt
      <application>fetchmail</application> die Server alle
      600&nbsp;Sekunden ab:</para>

    <screen>&prompt.user; <userinput>fetchmail -d 600</userinput></screen>

    <para>Mehr über <application>fetchmail</application>
      erfahren Sie auf der Seite
      <ulink url="http://fetchmail.berlios.de/"></ulink>.</para>
  </sect1>

  <sect1 id="mail-procmail">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Silver</surname>
	  <contrib>Beigetragen von </contrib>
	</author>
      </authorgroup>
    </sect1info>
    <title>E-Mails mit procmail filtern</title>

    <indexterm>
      <primary>procmail</primary>
    </indexterm>

    <para>Mit <application>procmail</application> lässt sich
      eingehende E-Mail sehr gut filtern.  Benutzer können
      Regeln für eingehende E-Mails definieren, die
      E-Mails zu anderen Postfächern oder anderen E-Mail-Adressen
      umleiten.  <application>procmail</application> befindet
      sich im Port <filename role="package">mail/procmail</filename>.
      <application>procmail</application> kann leicht in die
      meisten <acronym>MTA</acronym>s integriert werden.  Lesen
      Sie dazu bitte die Dokumentation des verwendeten
      <acronym>MTA</acronym>s.  Alternativ kann
      <application>procmail</application> in das E-Mail-System
      eingebunden werden, indem die nachstehende Zeile in
      die Datei <filename>.forward</filename> im Heimatverzeichnis
      eines Benutzers eingefügt wird:</para>

    <programlisting>"|exec /usr/local/bin/procmail || exit 75"</programlisting>

    <para>Im Folgenden zeigen wir einige einfache
      <application>procmail</application>-Regeln und beschreiben
      kurz den Zweck der Zweck der Regeln.  Die Regeln müssen
      in die Datei <filename>.procmailrc</filename> im Heimatverzeichnis
      des Benutzers eingefügt werden.</para>

    <para>Den Großteil dieser Regeln finden Sie auch
      in der Hilfeseite &man.procmailex.5;.</para>

    <para>Alle E-Mail von <email>user@example.com</email>
      an die externe Adresse <email>goodmail@example2.com</email>
      weiterleiten:</para>

    <programlisting>:0
* ^From.*user@example.com
! goodmail@example2.com</programlisting>

    <para>Alle Nachrichten, die kürzer als 1000&nbsp;Bytes
      sind, an <email>goodmail@example2.com</email> weiterleiten:</para>

    <programlisting>:0
* &lt; 1000
! goodmail@example2.com</programlisting>

    <para>Jede E-Mail, die an <email>alternate@example.com</email>
      geschickt wurde, im Postfach <filename>alternate</filename>
      speichern:</para>

    <programlisting>:0
* ^TOalternate@example.com
alternate</programlisting>

    <para>Jede E-Mail, die im Betreff <literal>Spam</literal>
      enthält, nach <filename>/dev/null</filename>
      schieben:</para>

    <programlisting>:0
^Subject:.*Spam
/dev/null</programlisting>

    <para>Zuletzt ein nützliches Rezept, das eingehende E-Mails
      von den <hostid role="domainname">&os;.org</hostid>-Mailinglisten
      in ein separates Postfach für jede Liste einsortiert:</para>

    <programlisting>:0
* ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG
{
	LISTNAME=${MATCH}
	:0
	* LISTNAME??^\/[^@]+
	FreeBSD-${MATCH}
}</programlisting>
  </sect1>
</chapter>