[Workaround.org] ispmail tutorial repository commit: Reviewed german translation. Fixed a few glitches in englisch version.
Christoph Haas
chaas at workaround.org
Mon Jan 28 23:43:54 CET 2008
changeset: 6:f0ba7c11bab9
tag: tip
user: Christoph Haas <email at christoph-haas.de>
date: Mon Jan 28 23:43:53 2008 +0100
files: tutorial/de.rest tutorial/en.rest
description:
Reviewed german translation. Fixed a few glitches in englisch version.
diff -r 1e277513a64b -r f0ba7c11bab9 tutorial/de.rest
--- a/tutorial/de.rest Mon Jan 28 20:46:42 2008 +0100
+++ b/tutorial/de.rest Mon Jan 28 23:43:53 2008 +0100
@@ -1,10 +1,10 @@
.. -*- coding: utf-8 -*-
.. Dies ist die Anleitung ISP E-Mail für Debian Etch. Geschrieben im
- ReST Format. Das Format ist dokumentiert unter http://docutils.sourceforge.net/docs/
- Installieren Sie "python-docutils" um Tools wie rst2html oder
- rst2latex erhalten, die die Datei in andere Formate konvertieren
- können
+ ReST Format. Das Format ist dokumentiert unter
+ http://docutils.sourceforge.net/docs/ Installieren Sie "python-docutils" um
+ Tools wie rst2html oder rst2latex erhalten, die die Datei in andere Formate
+ konvertieren können
.. meta::
:keywords: postfix,domains,pop3,imap.auth,smtp,mysql,database,courier,
@@ -24,7 +24,6 @@ Anleitung: ISP-ähnlicher E-Mail Server m
:Lizenz: (C) 2007 Christoph Haas. Dieses document wurde unter den
Bedingungen der GNU General Public License
(http://www.gnu.org/licenses/gpl.html) veröffentlicht
-:Revision: $Rev: 159 $
:Quelle: Die aktuellste Version dieses Dokuments können Sie auf
`workaround.org`_ finden. Wenn Sie die Notwendigkeit sehen, dieses Dokument
zu spiegeln, halten Sie bitte ihre Kopie auf dem neuesten Stand.
@@ -63,72 +62,74 @@ Einleitung
Einleitung
===========================================================================
-Sicherlich sind Ihnen die großen Web Hoster bekannt, bei denen Sie sich eine Domain mieten
-und darüber E-Mails empfangen können.
-Wenn Sie einen Debian Rechner mit permanenter Internetanbindung besitzen,
-können Sie den gleichen Dienst anbieten. Aufgrund von dynamischen DNS Diensten
-wie dyndns.org brauchen Sie nicht mal eine statische IP Adresse.
-Alles was Sie brauchen ist dieses Dokument, eine Tasse köstlichen Tee und etwas Zeit.
-Wenn Sie mit der Installation fertig sind, wird ihr Server...
+Sicherlich sind Ihnen die großen Web Hoster bekannt, bei denen Sie sich eine
+Domain mieten und darüber E-Mails empfangen können. Wenn Sie einen
+Debian-Rechner mit permanenter Internetanbindung besitzen, können Sie den
+gleichen Dienst anbieten. Auf Grund von dynamischen DNS-Diensten wie dyndns.org
+brauchen Sie nicht mal eine statische IP-Adresse. Alles was Sie brauchen, ist
+dieses Dokument, eine Tasse guten Tee und etwas Zeit. Wenn Sie mit der
+Installation fertig sind, wird ihr Server...
- E-Mails für Ihre Benutzer empfangen und speichern
- Ihren Benutzern die E-Mails über IMAP und POP3 empfangen lassen - sogar mit SSL
-- Verbindungen verschlüsseln
+ Verbindungen verschlüsseln
- E-Mails für authentifizierte Benutzer empfangen und weiterleiten
-- eine Webmail Oberfläche anbieten um E-Mails im Browser lesen zu können
-- die meisten Spam Mails erkennen, ausfiltern oder kennzeichnen
+- einen Webmail-Dienst anbieten, um E-Mails im Browser lesen zu können
+- die meisten Spam-Mails erkennen, herausfiltern oder kennzeichnen
-Dieses Dokument keine einfach Copy und Past Anleitung.
+Dieses Dokument ist keine einfach Copy-und-Paste-Anleitung. Der Gedanke
+dahinter ist Ihnen die verschiedenen Komponenten, die Sie benutzen verständlich
+zu machen. Es gibt kein Script dass die Installation vollautomatisch für Sie
+durchführt. Aber zum Schluss werden Sie genügend Wissen besitzen, um Problemen
+selbstständig auf den Grund zu gehen. Wenn Sie Hilfe bei der Installation
+brauchen, lesen Sie bitte die Hinweise unter `Fehlerbehebung`_. Die
+Installation in dieser Anleitung wurde von vielen Lesern ausgiebig getestet.
+Anders als bei anderen Postfix-Tutorials im Internet ist dies hier bereits
+die 3. Auflage. Dieses Tutorial ist nicht nur eine kurze Zusammenfassung
+sondern eine ausführliche Anleitung die Sie leitet. Es zu schreiben kostete
+einen Monat Arbeit.
-Der Gedanke dahinter ist Ihnen die verschiedenen Komponenten, die Sie benutzen
-verständlich zu machen. Es gibt kein Script dass Ihnen die Installation vollautomatisch
-durchführt. Aber zum Schluss werden Sie genügend Wissen besitzen um Probleme selbstständig
-auf den Grund zu gehen. Wenn Sie Hilfe bei der Installation brauchen, lesen Sie bitte die
-Hinweise bei `Fehlerbehebung`_. Die Installation in dieser Anleitung wurde von
-mehreren Leuten ausgiebig getestet. Anders als bei anderen Postfix Anleitungen im Internet,
-ist dies hier bereits die 3. Auflage. Dieses Tutorial ist nicht nur eine kurze Zusammenfassung
-sondern eine ausführliche Anleitung die Sie leitet. Es zu schreiben kostete einen Monat Arbeit.
+Die beschriebene Konfiguration ist nicht wirklich kompliziert, muss aber
+sorgfältig durchgeführt werden. Sie sollten Grundkenntnisse in folgenden
+Punkten besitzen:
-Die beschriebene Konfiguration ist nicht wirklich kompliziert, muss aber sorgfältig durchgeführt
-werden. Sie sollten Grundkenntnisse in folgenden Punkten besitzen:
-
-- MySQL (erstellen von Datenbanken, Rechtevergabe, grundliege SQL Queries)
-- SMTP (was ist SMTP, wie sieht ein normaler SMTP Dialog aus)
+- MySQL (Erstellen von Datenbanken, Rechtevergabe, grundlegende SQL-Abfragen)
+- SMTP (was ist SMTP, wie sieht ein SMTP-Dialog aus)
- POP3, IMAP (was die Protokolle machen und welche Unterschiede es gibt)
-- grundlegende Posfixkonfiguration (Verständnis der Standardeinstellungen in Ihrer
+- grundlegende Posfix-Konfiguration (Verständnis der Standardeinstellungen in Ihrer
main.cf, Durchsicht der `Grundkonfiguration
<http://www.postfix.org/BASIC_CONFIGURATION_README.html>`_ und das Wissen, dass Ihre
- Mail Logdateien sich unter /var/log/mail.log befinden)
-- Debian/Linux (Administration, Benutzen eines Text Editors, Lesen von Logdateien)
+ Mail-Logdateien sich unter /var/log/mail.log befinden)
+- Debian/Linux (Administration, Benutzen eines Text-Editors, Lesen von Logdateien)
Migration von der Sarge Anleitung
===========================================================================
-Die "ISPMAIL" Anleitung wird seit Debian "Woody" gepflegt. Es kann sein
-dass Sie bereits früheren Versionen der Anleitung gefolgt sind und nun
-auf den Debian Etch updaten wollen. Es ist nicht leicht eine genaue Anleitung
-hierfür anzubieten. Sie werden sicherlich Ausfallzeiten haben, falls Sie
-nicht mehrere Mailserver haben die Sie nach und nach migrieren können.
-Einige grundliegenden Informationen:
+Das "ISP-Mail"-Tutorial wird seit Debian "Woody" gepflegt. Es kann sein dass
+Sie bereits frühere Versionen der Anleitung verwendet haben und nun auf Debian
+"Etch" updaten wollen. Es ist nicht leicht, eine genaue Anleitung hierfür
+anzubieten. Sie werden sicherlich Ausfallzeiten haben, falls Sie nicht mehrere
+Mailserver haben die Sie nach und nach migrieren können. Einige grundlegende
+Informationen:
-- Das Format der Mailpostfächer und die Pfade bleiben gleich
+- Das Format der Mailpostfächer und die Pfade bleiben gleich. (Puh, Glück habt.)
- Courier POP/IMAP wird von Dovecot abgelöst
-- SALS wird nicht länger durch *auxprop* gemacht. Dovecot übernimmt nun die
- Authentifizierung und erspart Ihnen Zeit
+- SASL wird nicht länger durch *auxprop* gemacht. Dovecot übernimmt nun die
+ Authentifizierung und vereinfacht damit so einiges.
- Passwörter werden nun verschlüsselt in der Datenbank gespeichert
- Der virtuelle Zustelldienst wird durch den LDA von Dovecot ersetzt
- Die Struktur der Datenbank hat sich komplett verändert. Es gibt jedoch
- ein `Konvertierungsscript <dbconvert.py>`_ das Ihnen die Migration der
+ ein `Konvertierungsscript <dbconvert.py>`_, das Ihnen die Migration der
Datenbank erleichtert.
-Sie sollten ausserdem die `Release Notes von Etch
+Sie sollten ausserdem die `Veröffentlichungshinweise von Debian Etch
<http://www.debian.org/releases/stable/releasenotes>`_ lesen bevor Sie ein Upgrade
Ihres Systems von Sarge auf Etch durchführen.
-Bitte denken Sie daran, dass Ihre Benutzer Ihre IMAP Ordner erneut abbonieren
-müssen, wenn Sie von Corurier auf Dovecot wechseln. Die Abo Informationen
-werden nicht migriert.
+Bitte denken Sie daran, dass Ihre Benutzer Ihre IMAP-Ordner erneut abbonieren
+müssen, wenn Sie von Corurier auf Dovecot wechseln. Die Abo-Informationen
+werden leider nicht migriert.
Die Komponenten
@@ -137,15 +138,15 @@ Die hier beschrieben Konfiguration nutzt
- **Postfix** um E-Mails aus dem Internet zu empfangen und in den Mailordnern
der Benutzer auf der Festplatte zu speichern und um E-mails von Ihren Benutzern
- zu empfangen die übers Internet versendet wurden (relaying)
-- **Dovecot** damit Ihre Benutzer die E-Mails über POP3/IMAP in Ihrer Mail
- Software empfangen können
+ zu empfangen, die übers Internet versendet wurden (Relaying)
+- **Dovecot** damit Ihre Benutzer ihre E-Mails über POP3/IMAP
+ mit ihrem Mail-Programm abholen können
- **Squirrelmail** als Webmail Oberfläche (wobei jede andere IMAP-fähige
- Webmail Oberfläche auch funktioniert)
-- **MySQL** als Datenbank System in der die Informationen über Ihre Domains,
+ Webmail-Oberfläche auch funktioniert)
+- **MySQL** als Datenbank-System in der die Informationen über Ihre Domains,
Benuterkonten und Weiterleitungen gespeichert werden.
-- **AMaViS** um eingehende E-Mails auf Viren, Spam oder unterwünschten
- Anhängen zu überprüfen.
+- **AMaViS** um eingehende E-Mails auf Viren, Spam oder unterwünschte
+ Anhänge zu überprüfen.
Virtuelle Domains in einer Datenbank
@@ -154,22 +155,20 @@ Haben Sie sich je gefragt wie Internet S
Haben Sie sich je gefragt wie Internet Service Anbieter (ISPs) tausende
Domains verwalten, für die Sie E-mails empfangen? Es gibt sicher niemand,
der die ganzen Domains und Aliase in die Konfigurationsdatei main.cf
-händisch einträgt. Postfix bietet eine viel bessere Möglichkeit an um
+händisch einträgt. Postfix bietet eine viel bessere Möglichkeit an, um
solche Domänen und Konten zu verwalten: *virtuelle Domänen* und *virtuelle Benutzer*.
-
.. sidebar:: virtual_mailbox_maps
- Postfix schlägt das Mapping der virtuellen Benutzer zu virtuellen Postfächern
- in den Einstellungen von *virtual_mailbox_maps* nach.
- The left-hand side (LHS) of the mapping
- is the email address and the right-hand side (RHS) is the location of
- the mailbox or maildir on your harddisk.
-
+ Postfix schlägt die Zuweisung der virtuellen Benutzer zu virtuellen
+ Postfächern in den Einstellungen von *virtual_mailbox_maps* nach.
+ Auf der linken Seite dieser Zuweisung ist die Email-Adresse und
+ auf der rechten Seite der Speicherort der Mailbox auf Ihrer Festplatte.
+
Zusätzlich zu den *lokalen Benutzern* (die in der /etc/passwd aufgelistet sind)
-kann Postfix jede Anzahl von *virtuellen Benutzern* auf *virtuellen Domänen*
-verwalten. Virtuelle Benutzer können sich nicht auf dem rechner anmelden und
-haben weder eine Benutzer ID noch ein Home Verzeichnis. Sie existieren nur in
+kann Postfix zusätzliche *virtuelle Benutzern* in *virtuellen Domänen*
+verwalten. Virtuelle Benutzer können sich nicht auf dem Rechner anmelden und
+haben weder eine Benutzer ID noch ein Home-Verzeichnis. Sie existieren nur in
der Datenbank. Wenn Sie aber Postfix mit dieser Datenbank verbinden, können diese
Benutzer E-Mails empfangen. Postfix kann mit einer Liste der virtuellen Benuter
arbeiten und E-Mails in jedes Verzeichnis das Sie möchten zustellen
@@ -183,128 +182,124 @@ jeff at foo.org /var/mail/foo.org/je
jeff at foo.org /var/mail/foo.org/jeff
=================== ====================================
-Sie müssen Postfix außerdem mitteilen welche virtuellen Domänen Sie benutzen
+Sie müssen Postfix außerdem mitteilen, welche virtuellen Domänen Sie benutzen
möchten. Wenn auf Ihrem System eine virtuelle Domäne nicht benutzt wird, lehnt
Postfix die E-Mails ab. So sieht eine Liste mit Domänen aus:
.. sidebar:: virtual_mailbox_domains
- Postfix überprüft anhand der *virtual_mailbox_domain* Liste,
- für welche virtuellen Domänen Sie Mails empfangen wollen.
- Da Postfix nur einen Begriff von Mappings (2 Spalten)
- Since Postfix just has a
- notion of mappings (two columns) a list is (ab)using a mapping where the
- right-hand side (RHS) just contains any string.
+ Postfix überprüft anhand der *virtual_mailbox_domain*-Liste, für welche
+ virtuellen Domänen Mails empfangen werden dürfen. Zuweisungen (Mappings) in
+ Postfix haben immer eine linke und eine rechte Seite. Wenn man eine Liste
+ abbilden möchte, schreibt man die Elemente der Liste auf die linke Seite und
+ schreibt einen beliebigen Text auf die rechte Seite.
================ ========================
Virtuelle Domäne Beispieltext
================ ========================
-doe.org banana daiquiri
-foo.org rose garden
+doe.org banana daiquiri
+foo.org rose garden
================ ========================
-Die Informationen könnten natürlich auch in eine Text Datei geschrieben werden.
+Die Informationen könnten natürlich auch in eine Text-Datei geschrieben werden.
Wie Sie sich vorstellen können, würde dies aber schnell unübersichtlich werden.
Glücklicherweise kann Postifx diese Informationen auch aus anderen Quellen wie
-LDAP oder SQL Datenbanken lesen. Wir benutzen in unserer Anleitung SQL Datenbanken.
+LDAP oder SQL-Datenbanken lesen. Wir benutzen in unserer Anleitung eine
+SQL-Datenbank.
-Sie haben nun festgestellt dass ein *mapping* einen Wert einem anderen Wert zuweist.
-Wenn Sie eine Datenbank abfragen müssen Sie Postfix mitteilen welche zwei Spalten
-Sie meinen. Dies wird duch 'cf' Dateien erledigt. Sie finden die Dokumentation hierfür
-unter http://www.postfix.org/MYSQL_README.html oder durch Eingabe von "man 5 mysql_table"
-in der Konsole.
+Sie haben nun festgestellt, dass eine *Zuweisung* einen Wert einem anderen Wert
+zuweist. Wenn Sie eine Datenbank abfragen müssen Sie Postfix mitteilen welche
+zwei Spalten Sie meinen. Dies wird duch 'cf'-Dateien erledigt (cf =
+configuration file). Sie finden die Dokumentation hierfür unter
+http://www.postfix.org/MYSQL_README.html oder durch Eingabe von "man 5
+mysql_table" in der Konsole.
Beispieldatei::
- # Information wie Sie sich mit dem MySQL Server verbinden
+ # Information zur Verbindung mit dem SQL-Server
user = someone
password = some_password
hosts = 127.0.0.1
- # Der Name der Datenbank auf dem Server
+ # Der Name der Datenbank auf dem SQL-Server
dbname = mailserver
- # Die Datenbankabfrage
+ # Die SQL-Datenbankabfrage
query = SELECT destination FROM virtual_aliases WHERE source='%s'
-
In dieser Datei wird festgelegt wie Postfix auf die Daten der Datenbank
-zugreifen kann. Diese Variante wäre geeignet für das Mapping von
-*virtual_alias_maps*. Stellen Sie sich vor die obigen Zeilen in einer
-Datei ``/etc/postfix/mysql-virtual-alias-maps.cf`` zu speichern. Folgende
+zugreifen kann. Diese Variante wäre geeignet für die Zuweisung von
+*virtual_alias_maps*. Stellen Sie sich vor, dass die vorigen Zeilen in einer
+Datei ``/etc/postfix/mysql-virtual-alias-maps.cf`` gespeichert wären. Folgende
Zeile in Ihrer main.cf würde Postfix die Möglichkeit geben die Datenbank
-abzufragen:
+abzufragen::
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
-Wie funktioniert das ganze? stellen Sie sich vor, das Postfix eine E-Mail
-an john at doe.net senden und die virtual alias map überprüfen will.
-Postfix stellt eine Verbindung zum MySQL Server mit der IP Adresse *127.0.0.1*
-her und authentifiziert sich mit dem Benuternamen *someone* und dem Passwort
+Wie funktioniert das? Stellen Sie sich vor, das Postfix eine E-Mail an
+john at doe.net senden und die virtual_alias_maps überprüfen will. Postfix stellt
+eine Verbindung zum MySQL-Server mit der IP Adresse *127.0.0.1* her und
+authentifiziert sich mit dem Benuternamen *someone* und dem Passwort
*some_password*. Es wählt die Datenbank *mailserver* aus und macht schließlich
-eine Abfrage:
+diese Abfrage::
SELECT destination FROM virtual_aliases WHERE source='john at doe.net'
-Stellen wir uns vor diese Abfrage würde folgende Resultate zurückliefern:
+Nehmen wir an, die SQL-Abfrage würde folgende Ergebnisse zurückliefern:
- jack at example.com
- jeff at example.com
- kerstin at example.com
-Dies gleicht dem Benutzen einer Textdatei mit Aliasen wie folgt:
+Dies gleicht dem Benutzen einer Textdatei mit Aliasen wie folgt::
john at doe.net jack at example.com, jeff at example.com, kerstin at example.com
-Wir hoffen Sie verstehen die Funktion des Mappings bei Datenbanken soweit.
+Soviel als kurze Einführung, wie man Zuweisungen mit Datenbanken benutzt.
-Virtuelle Domänen gegen lokale Domänen
+
+Virtuelle Domänen versus lokale Domänen
==========================================
-Es ist wichtig die 3 verschiedenen Arten von Domänen die Postfix bekannt
-sind zu verstehen. Die meisten "es funktioniert nicht" E-Mails, stammen
-von Leuten die virtuelle und locale Domänen mischen.
-Domänen sind entweder...
+Es ist wichtig die 3 verschiedenen Arten von Domänen zu verstehen, die Postfix
+kennt. Die meisten "es funktioniert nicht" E-Mails, stammen von Lesern, die
+virtuelle und lokale Domänen vermischen. Domänen sind entweder...
lokale Domänen
--------------
Alle Domänen die in der main.cf unter *mydestination* aufgeführt sind werden
-als lokale Domänen behandelt. Ihre Standartdomäne (``/etc/defaultdomain``)
-ist normalerweise als lokale Domäne konfiguriert.
-E-Mails für lokale Domänen werden an Systembenutzer (die in `` /etc/passwd``
-konfiguriert sind) zugestellt.
-Die Mails werden standardmäßig nach /var/mail zugestellt.
-Sie sollten auf alle Fälle "localhost" als lokale Domäne benutzen,
-damit Sie immer Mails für root at localhost emfpangen können.
-Stellen Sie sich vor Ihre Datenbank Server hat probleme und sendet diese
-an Ihren Root Account, aber ihr Root Account liegt auf einer virtuellen
-Domäne. Stellen Sie sich das als "Sicherheitsnetz" vor.
+als lokale Domänen behandelt. Ihre Standarddomäne (``/etc/defaultdomain``) ist
+normalerweise als lokale Domäne konfiguriert. E-Mails für lokale Domänen werden
+an Systembenutzer (die in `` /etc/passwd`` aufgelistet sind) zugestellt. Die
+Mails werden standardmäßig nach /var/mail zugestellt. Sie sollten auf alle
+Fälle "localhost" als lokale Domäne benutzen, damit Sie immer Mails für
+root at localhost emfpangen können. Stellen Sie sich vor Ihre Datenbank Server hat
+Probleme und sendet diese an Ihren Root-Account, aber ihr Root Account liegt
+auf einer virtuellen Domäne. Eine lokale Domäne kann hier helfen.
-virtuelle alias Domänen
+virtuelle Alias-Domänen
-----------------------
-Domänen die als *virtual_alias_domains* gelistet sind, könne für
-Weiterleitung ("aliasing") der E-Mails von einer Adresse zu einer anderen Adresse
-(oder mehreren Adressen) benutzt werden.
-Virtuelle Alias Domänen empfangen keine Mails der Benutzer.
-Sie leiten die Mails nur an eine andere Adresse weiter.
+Domänen die als *virtual_alias_domains* gelistet sind, könne für Weiterleitung
+("aliasing") der E-Mails von einer Adresse zu einer anderen Adresse (oder
+mehreren Adressen) benutzt werden. Virtuelle Alias-Domänen empfangen keine
+Mails der Benutzer. Sie leiten die Mails nur an eine andere Adresse weiter.
-Das *virtual_alias_maps* Mapping beinhaltet Weiterleitungen (Quelle, Ziel)
+Die *virtual_alias_maps*-Zuweisung beinhaltet Weiterleitungen (Quelle, Ziel)
der Benutzer oder Domänen zu anderen E-Mail Adressen oder ganzen Domänen.
-Übrigens funktionieren virtual_allias_maps auf bei lokalen E-Mail Adressen.
-Sie brauchen virtuelle alias Domänen also nicht unbedingt, da Sie
-alle Domänen als virtuelle Postfach Domänen deklarieren und virtuelle
-alias maps als Aliase benutzen können.
+Übrigens funktionieren virtual_allias_maps auch bei lokalen E-Mail Adressen. Sie
+brauchen virtuelle Alias-Domänen also nicht unbedingt, da Sie alle Domänen als
+virtuelle Postfach-Domänen deklarieren und virtual_alias_maps als Aliase
+benutzen können.
-Virtuelle Postfach Domänen
+Virtuelle Postfach-Domänen
--------------------------
-Die interessanteste Domänenart in dieser Anleitung ist die virtuelle
-Postfach Domäne. Solche Domänen sind in *virtual_mailbox_domains* gelistet,
+Die interessanteste Domänenart in dieser Anleitung ist die virtuelle
+Postfach-Domäne. Solche Domänen sind in *virtual_mailbox_domains* gelistet,
empfangen E-Mails für virtuelle Benutzer und speichern diese in den Postfächern
auf Ihrer Festplatte.
-Die *virtual_mailbox_maps* Parameter geben Postfix vor wo sich der Postfach
-Ordner für einen bestimmten User auf der Festplatte befindet.
-Der Pfad ist relativ zum *virtual_mailbox_base* Verzeichnis, welches
-standardmäßig leer ist.
+Die *virtual_mailbox_maps* Parameter geben Postfix vor, wo sich das Postfach
+für einen bestimmten User auf der Festplatte befindet. Der Pfad ist relativ zum
+*virtual_mailbox_base* Verzeichnis, welches standardmäßig nicht gesetzt ist.
.. Note::
@@ -320,10 +315,10 @@ Sie sollten auf alle Fälle folgendes set
damit Sie E-Mails z.B. an root at localhost senden können.
-We recommend you also betimes read the `upstream documentation on
-virtual domains`_ also known as the VIRTUAL_README.
+Wir empfehlen außerdem, dass Sie sich bei Gelegenheit mit der offiziellen
+`Dokumentation zu virtuellen Domänen`_ geschäftigen.
-.. _upstream documentation on virtual domains:
+.. _Dokumentation zu virtuellen Domänen:
http://www.postfix.org/VIRTUAL_README.html
@@ -332,18 +327,17 @@ Schritt 1: Installation der benötigten D
====================================================
Da Sie jetzt hoffentlich die grundlegenden Konzepte von virtuellen Domänen,
-mappings und Datenbankzugriffen verstehen, ist es an der Zeit sich die Hände
-schmutzig zu machen.
-Werden Sie *root* auf Ihrem Server und stellen Sie sicher, dass ihre
-``/etc/hostname`` den Hostnamen *ohne* den Domänenteil beinhaltet.
-Die Datei ``/etc/mailname`` beinhaltet den fully-qualified Host Namen *mit*
-dem Domänenteil.
+Zuweisungen und Datenbankzugriffen verstehen, ist es an der Zeit sich die Hände
+schmutzig zu machen. Werden Sie *root* auf Ihrem Server und stellen Sie sicher,
+dass ihre ``/etc/hostname`` den Hostnamen *ohne* den Domänenteil beinhaltet.
+Die Datei ``/etc/mailname`` beinhaltet hingegen den voll-qualifizierten
+Hostnamen *mit* dem Domänenteil.
-Sie müssen evtl. auch Ihre ``/etc/hosts`` anpassen.
-Führen Sie ``hostname --fqdn`` aus und stellen Sie sicher, dass Sie den
-fully-qualified Hostnamen erhalten. Wenn Sie den hostnamen ohne den
-Domänenteil erhalten, überprüfen Sie Ihre ``/etc/hosts`` Datei.
-Der fully-qualified Hostname muss der *erste* in der Liste sein.
+Sie müssen evtl. auch Ihre ``/etc/hosts`` anpassen. Führen Sie ``hostname
+--fqdn`` aus und stellen Sie sicher, dass Sie den voll-qualifizierten Hostnamen
+erhalten. Wenn Sie den Hostnamen ohne den Domänenteil erhalten, überprüfen Sie
+Ihre ``/etc/hosts`` Datei. Der voll-qualifizierte Hostname muss der *erste* in der
+Liste sein.
Falsch::
@@ -353,28 +347,28 @@ Richtig::
20.30.40.50 mailserver42.example.com mailserver42
-.. sidebar:: ``$>`` and ``mysql>``
+.. sidebar:: ``$>`` und ``mysql>``
In diesem Tutorial verwende ich häufig ``$>``, was bedeutet
dass Sie die Kommandos in einer Shell ausführen sollen.
- Abschnitte die mit ``mysql>`` beginnen, müssen als SQL Kommando
+ Abschnitte die mit ``mysql>`` beginnen, müssen als SQL-Abfrage
ausgeführt werden.
-Fangen Sie nun an indem Sie Postfix mit MySQL Map Unterstützung installieren::
+Fangen Sie nun an, indem Sie Postfix mit MySQL-Unterstützung installieren::
$> aptitude install postfix-mysql
Dies wird ausserdem das ``postfix`` Paktet als Abhängigkeit installieren.
-When Sie nach der Art der Konfiguration gefragt werden, wählen Sie
+Wenn Sie nach der Art der Konfiguration gefragt werden, wählen Sie
"*Internet Site*". Beantworten Sie die Frage nach dem "*Mail name*" durch
-Eingabe des fully-qualified Hostnamen (das bedeutet mit dem Domänenteil)
+Eingabe des voll-qualifizierten Hostnamens (mit dem Domänenteil)
Ihres Systems.
-Wenn Sie den MySQL Server auf der gleichen Maschine laufen lassen wollen::
+Wenn Sie den MySQL-Server auf dem gleichen Server laufen lassen wollen::
$> aptitude install mysql-server-5.0
-Da Sie Ihren Benutzern POP3 und IMAP Dienste anbieten wollen, müssen
+Da Sie Ihren Benutzern POP3- und IMAP-Dienste anbieten wollen, müssen
Sie diese installieren::
$> aptitude install dovecot-pop3d
@@ -386,54 +380,53 @@ Amavis leistet hier gute Arbeit::
$> aptitude install amavisd-new libclass-dbi-mysql-perl
Damit AMaViS später die Domäneninformationen aus der Datenbank lesen kann,
-benötigen wir das Perl DBI Modul. AMaViS an sich ist beinahe nutzlos, solange
+benötigen wir das Perl DBI-Modul. AMaViS an sich ist beinahe nutzlos, solange
Sie nicht die vorgeschlagenen Pakete installieren um Anhäge auf Viren
-überprüfen und Spam erkenne zu können. Installieren wir nun diese Pakete::
+überprüfen und Spam erkenne zu können. Installieren Sie nun diese Pakete::
$> aptitude install spamassassin clamav-daemon cpio arj zoo nomarch lzop cabextract pax
Einige der vorgeschlagenen Pakete sind nicht "frei" genug um in der Debian
-*main* Sektion verfügbar zu sein. Wenn Sie diese installieren wollen, müssen
-Sie zuerst die Sektionen *contrib* und *non-free* in ihren Debian Spiegel unter
-``/etc/apt/source.list`` nachtragen.
-Normalerweise müssen Sie nur die Wörter ``contrib`` und ``non-free`` in die
-existierende Spiegel Zeile eintragen::
+*main*-Sektion verfügbar zu sein. Wenn Sie diese installieren wollen, müssen
+Sie zuerst die Sektionen *contrib* und *non-free* in ihrem Debian-Spiegel unter
+``/etc/apt/sources.list`` nachtragen.
+Normalerweise müssen Sie nur die Wörter ``contrib`` und ``non-free`` an die
+existierende Spiegel Zeile anhängen::
deb http://ftp.debian.org/debian/ etch main contrib non-free
-Nun sind Sie in der lage die non-free Pakete zu installieren::
+Nun sind Sie in der Lage die non-free Pakete zu installieren::
$> aptitude update
$> aptitude install lha unrar
-Als nächstes wollen wir das OpenSSL Paket installieren um später ein
-korrektes SSL Zertifikat zu erstellen, damit Ihre Benutzer den
-Mailserver sicher benutzen können::
+Als nächstes wollen wir das OpenSSL-Paket installieren, um später ein korrektes
+SSL Zertifikat zu erstellen, damit Ihre Benutzer den Mailserver sicher benutzen
+können::
$> aptitude install openssl
-Wenn Sie einen Webmail Dienst anbieten wollen, können wir Ihnen das
-Squirrelmail Paket empfehlen.
-Dieses wird automatisch einen Apache Server mitinstallieren, falls
-Sie noch keinen installiert haben. Tippen Sie::
+Wenn Sie einen Webmail Dienst anbieten wollen, können wir Ihnen das
+Squirrelmail-Paket empfehlen. Dieses wird automatisch einen Apache Server
+mitinstallieren, falls Sie noch keinen installiert haben. Tippen Sie::
$> aptitude install squirrelmail
-Da Ihre Information für Postfix in einer MySQL Datenbank gespeichert
-werden, können Sie die PhpMyAdmin Software installieren um
-die Datenbank und deren Inhalt später im Webbrowser zu administrieren::
+Da Ihre Information für Postfix in einer MySQL-Datenbank gespeichert werden,
+können Sie die PhpMyAdmin-Software installieren, um die Datenbank und deren
+Inhalt später bequem im Webbrowser zu administrieren::
$> aptitude install phpmyadmin libapache2-mod-php5 php5-mysql
-Damit Sie Ihren Server später mit 'Telnet' testen können::
+Damit Sie Ihren Server später mit 'telnet' testen können::
$> aptitude install telnet
-Mit dem konsolenbasierten E-Mail Client *mutt* könne Sie Mails der Postfächer
-direkt von der Festplatte lesen. Es wir ihnen helfen die Konfiguration zu testen.
-Es ist ausserdem ein sehr mächtiger IMAP E-Mail Client, den viele Leute als
-Ihr hauptsächliches Mail Programm verwenden. Vielleicht gefällt es Ihnen ja auch.
-Sie sollten es installieren::
+Mit dem konsolenbasierten E-Mail Client *mutt* können Sie Mails der Postfächer
+direkt von der Festplatte lesen. Es wird ihnen helfen, die Konfiguration zu
+testen. Es ist außerdem ein sehr mächtiger IMAP Email-Client, den viele Nutzer
+als Ihr hauptsächliches Mail-Programm verwenden. Vielleicht gefällt es Ihnen ja
+auch. Sie sollten es installieren::
$> aptitude install mutt
@@ -441,16 +434,16 @@ Schritt 2: Erstellen der Datenbank und B
Schritt 2: Erstellen der Datenbank und Benutzer
===============================================
-Jetzt ist es an der Zeit die MySQL Datenbank und Ihre Tabellen zu erstellen.
+Jetzt ist es an der Zeit, die MySQL-Datenbank und dessen Tabellen zu erstellen.
Wenn Sie Erfahrung mit der Benutzung von MySQL haben, können Sie Ihre
-SQL Statements in der 'mysql' Kommandozeile eingeben.
-Alternativ können Sie *phpmyadmin* benutzen, in dem Sie in der Adressleiste
-Ihres Browsers http://yourmailserver/phpmyadmin aufrufen
+SQL-Abfragen in der 'mysql' Kommandozeile eingeben. Alternativ können Sie
+*phpmyadmin* benutzen, in dem Sie in der Adressleiste Ihres Browsers
+http://yourmailserver/phpmyadmin aufrufen
-Falls Sie Ihren MySQL Server gerade erst installiert haben, können Sie sich
-mit dem Benutzer 'root' ohne Passwort einloggen.
-Setzen Sie unbedingt ein neues Passwort für diesen Account.
-Dazu führen Sie folgenden Befehl in der Konsole aus::
+Falls Sie Ihren MySQL-Server gerade erst installiert haben, können Sie sich mit
+dem Benutzer 'root' ohne Passwort einloggen. Setzen Sie unbedingt ein neues
+Passwort für diesen Account. Dazu führen Sie folgenden Befehl in der Konsole
+aus::
$> mysqladmin password root2007
@@ -460,20 +453,20 @@ Dazu führen Sie folgenden Befehl in der
Sie können das Paket 'pwgen' installieren und benutzen um ein
sichers Passwort zu generieren. In der Anleitung benutzen wir
als Beispielpasswort 'root2007'. Ersetzen Sie dieses durch Ihr
- eigenes, wo immer es auch angegeben wird.
+ eigenes, wenn es hier im Tutorial erwähnt wird.
-Erstellen Sie nun die Datenbank und geben Sie Ihr den Namen
-'mailserver' (sie werden nach dem obigen Passwort gefragt)::
+Erstellen Sie nun die Datenbank und nennen Sie sie 'mailserver' (sie werden
+nach dem obigen Passwort gefragt)::
$> mysqladmin -p create mailserver
-Aus Sicherheitsgründen ist es sinnvoll einen weiteren MySQL Benutzer,
+Aus Sicherheitsgründen ist es sinnvoll, einen weiteren MySQL-Benutzer
mit weniger Rechten anzulegen, den Ihr Mailserver später benutzen wird.
Verbinden Sie sich mit Ihrer Datenbank::
$> mysql -p
-Wenn Sie den ``mysql>`` promt sehen, geben Sie folgendes SQL Statement ein
+Wenn Sie den ``mysql>``-Prompt sehen, geben Sie folgendes SQL Statement ein,
um die passenden Rechte zu vergeben::
mysql>
@@ -482,28 +475,25 @@ um die passenden Rechte zu vergeben::
IDENTIFIED BY 'mailuser2007';
exit
-Dies erzeugt einen Benutzer namens 'mailuser' der nur lesende Rechte auf
-die Datenbank besitzt, sie jedoch nicht verändern kann.
-Wenn Sie Daten in der Datenbank veränder wollen, verwenden Sie den
-Benutzer 'root' order legen Sie einen weiteres Konto für diesen Zweck an.
-Das Passwort 'mailuser2007' dient nur als Beispiel, ersetzen Sie es durch
-ein sicheres Passwort.
+Dies erzeugt einen Benutzer namens 'mailuser' der nur lesende Rechte auf die
+Datenbank besitzt, sie jedoch nicht verändern kann. Wenn Sie Daten in der
+Datenbank verändern möchten, verwenden Sie den Benutzer 'root' order legen Sie
+einen weiteres Konto für diesen Zweck an. Das Passwort 'mailuser2007' dient nur
+als Beispiel, ersetzen Sie es durch ein sicheres Passwort.
-Schritt 3: Ertellen der Datenbanktabellen
-=========================================
+Schritt 3: Erstellen der Datenbanktabellen
+==========================================
-In Ihrer neu erstellten Datenbank müssen Sie Tabellen anlegen,
-die die Informationen von Domänen, Weiterleitungen und E-Mailpostfächer
-der Benutzer beinhalten.
-Verbinden Sie sich erneut mit MySQL und wählen Sie die Datenbank
+In Ihrer neu erstellten Datenbank müssen Sie Tabellen anlegen, die die
+Informationen von Domänen, Weiterleitungen und E-Mailpostfächer der Benutzer
+beinhalten. Verbinden Sie sich erneut mit MySQL und wählen Sie die Datenbank
'mailserver'::
$> mysql -p mailserver
-Sie werden erneut den ``mysql>`` promt sehen.
-Erstellen Sie zuerst eine Tabelle für die Liste der virtuellen Domänen
-die Sie anbieten wollen::
+Sie werden erneut den ``mysql>``-Promt sehen. Erstellen Sie zuerst eine Tabelle
+für die Liste der virtuellen Domänen die Sie anbieten wollen::
mysql>
CREATE TABLE `virtual_domains` (
@@ -511,13 +501,13 @@ die Sie anbieten wollen::
name VARCHAR(50) NOT NULL
) ENGINE = InnoDB;
-Die nächste Tabelle beinhaltet Informationen der aktuellen Benutzer Konten.
-Jeder Benutzer hat einen Benutzernamen und ein Passwort.
-Diese Daten werden benötigt um Zugang zu den Mailpostfächern über POP3 oder
-IMAP zu erhalten, um sich in die Webmail Oberfläche einzuloggen oder um
-E-Mails zu verschicken wenn man sich nicht im lokalen Netzwerk befindet.
-Da Benutzer gerne mal etwas vergessen, ist die E-Mail Adresse des Benutzers
-zugleich sein Login Benutzername. Erstellen Sie nun die Tabelle::
+Die nächste Tabelle beinhaltet Informationen der aktuellen Benutzer-Konten.
+Jeder Benutzer hat einen Benutzernamen und ein Passwort. Diese Daten werden
+benötigt um Zugang zu den Mailpostfächern über POP3 oder IMAP zu erhalten, um
+sich in die Webmail-Oberfläche einzuloggen oder um E-Mails zu verschicken wenn
+man sich nicht im lokalen Netzwerk befindet. Da Benutzer gerne mal etwas
+vergessen, ist die E-Mail Adresse des Benutzers zugleich sein Login
+Benutzername. Erstellen Sie nun die Tabelle::
mysql>
CREATE TABLE `virtual_users` (
@@ -529,8 +519,8 @@ zugleich sein Login Benutzername. Erstel
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE = InnoDB;
-Und zum Schluss brauchen wir noch eine Tabelle für die Aliase (E-Mail Weiterleitung)
-von einem Account zu einem anderen::
+Und zum Schluss brauchen wir noch eine Tabelle für die Aliase (Email-Weiterleitungen)
+von einer Email-Adresse zu einer anderen::
mysql>
CREATE TABLE `virtual_aliases` (
@@ -545,17 +535,15 @@ virtual_aliases und virtual_users Tabell
virtual_aliases und virtual_users Tabelle mit Einträgen in der virtual_domains
Tabelle verbunden sind. Dies hält die Daten in Ihrer Datenbank konsistent, da
Sie keine virtuellen Aliase oder virtuelle Benutzer anlegen können, die nicht
-mit einer virtuellen Domäne verbunden sind. Und Sie vermeiden Redundanz, da
-Sie den Domänennamen nur einmal speichern - in der virtual_domains Tabelle -
-sonst nirgendwo.
-Die Suffix bei 'ON DELETE CASCADE' bedeutet, dass wenn Sie eine Zeile einer
-referierenden Tabelle löschen, der Eintrag auch in der aktuellen Tabelle
-automatisch gelöscht wird. Somit vermeiden Sie verwaiste Einträge.
-Stellen Sie sich vor dass Sie eine bestimmte Domäne nicht länger hosten wollen.
-Sie können einfach den Eintrag aus der virtual_domains Tabelle löschen und alle
-referierende/abhängige Einträge in den anderen Tabellen werden ebenfalls gelöscht.
-Diese Vorgehensweise bezeichnet man auch als *normalisierte* Datenbank.
-
+mit einer virtuellen Domäne verbunden sind. Und Sie vermeiden Redundanz, da Sie
+den Domänennamen nur einmal speichern - in der virtual_domains Tabelle - sonst
+nirgendwo. Der Zusatz 'ON DELETE CASCADE' bedeutet, dass automatisch Aliases
+und Benutzerkonten gelöscht werden, wenn Sie die dazugehörige Domäne löschen.
+Somit vermeiden Sie verwaiste Einträge. Stellen Sie sich vor dass Sie eine
+bestimmte Domäne nicht länger hosten wollen. Sie können einfach den Eintrag aus
+der virtual_domains Tabelle löschen und alle referierende/abhängige Einträge in
+den anderen Tabellen werden ebenfalls gelöscht. Diese Vorgehensweise bezeichnet
+man auch als *normalisierte* Datenbank.
Ein Beispiel der Daten in der Tabelle:
@@ -578,7 +566,7 @@ 3 2 kerstin dogfood
3 2 kerstin dogfood
===== =========== ========= ==========
-Die E-Mail Adressen der drei Benutzer in der Datenbank wären dann:
+Die Email-Adressen der drei Benutzer in der Datenbank wären dann:
- john at example.com
- steve at example.com
@@ -596,29 +584,29 @@ 3 2 kerstin kerstin at mycomp
3 2 kerstin kerstin at mycompany.com
==== =========== ======== ======================
-Dies bewirkt, dass Mails für steve at example.com an
-steve.miller at gmail.com weitergeleitet werden.
-Die Mails für kerstin at foobar.org werden an
+Dies bewirkt, dass Mails für steve at example.com an steve.miller at gmail.com
+weitergeleitet werden. Die Mails für kerstin at foobar.org werden an
kerstin42 at yahoo.com und kerstin at mycompany.com weitergeleitet.
Seien Sie nicht verängstigt, wenn diese Vorgehensweise etwas kompliziert aussieht.
-Die Datenbank ist nicht dafür ausgelegt um durch manuelle SQL Kommandos gemanaged
+Die Datenbank ist nicht dafür ausgelegt, um durch manuelle SQL-Kommandos verwaltet
zu werden. Aber es ist dennoch wichtig, dass Sie das Schema der Datenbanktabellen
-verstehen. (Ein Webinterface zur Verwaltung ist bereits in Arbeit).
+verstehen. Es gibt bereits Web-basierte Administrations-Programme, die die
+Verwaltung von Email-Konten einfacher machen.
-Schritt 4: Erstellen der Dateien für das Datenbank Mapping (Zuweisung)
-======================================================================
+Schritt 4: Erstellen der Dateien für die Datenbank-Zuweisungen (Mappings)
+==========================================================================
virtual_mailbox_domains
-----------------------
-Wie vorher bereits beschrieben ist Mapping bei Postfix nur eine Tabelle,
-die eine left-hand side (LHS) und eine right-hand side (RHS).
-Damit Postfix MySQL benutzt um ein Mapping zu definieren benötigen wir eine
-'cf' Datei (Konfigurationsdatei). Fangen Sie mit der Erstellung der Datei
-``/etc/postfix/mysql-virtual-mailbox-domains.cf`` für das virtual_mailbox_domains
-Mapping an::
+Wie vorher bereits beschrieben, sind Zuweisungen bei Postfix nur Tabellen, die
+eine linke und eine rechte Seite haben. Damit Postfix MySQL benutzt, um eine
+Zuweisung zu definieren, benötigen wir eine 'cf' Datei (Konfigurationsdatei).
+Fangen Sie mit der Erstellung der Datei
+``/etc/postfix/mysql-virtual-mailbox-domains.cf`` für die
+virtual_mailbox_domains-Zuweisung an::
user = mailuser
password = mailuser2007
@@ -626,23 +614,23 @@ Mapping an::
dbname = mailserver
query = SELECT 1 FROM virtual_domains WHERE name='%s'
-Stellen Sie sich vor, dass Postfix herausfinden will ob *example.com* eine virtuelle
-Postfach Domäne ist.
-Postfix wird die obige SQL Abfrage ausführen und '%s' mit 'example.com' ersetzen.
-Wenn es einen passenden Eintrag in der virtual_domains Tabelle findet, wird
-es den Wert '1' zurückliefern. Eigentlich ist es egal welcher Wert zurückgeliefert
-wird, solange ein Ergebnis zurückgeliefert wird.
+Stellen Sie sich vor, dass Postfix herausfinden will ob *example.com* eine
+virtuelle Postfach-Domäne ist. Postfix wird die obige SQL-Abfrage ausführen und
+'%s' mit 'example.com' ersetzen. Wenn es einen passenden Eintrag in der
+virtual_domains-Tabelle findet, wird es den Wert '1' zurückliefern. Eigentlich
+ist es egal welcher Wert zurückgeliefert wird, solange irgendein Ergebnis
+zurückgeliefert wird.
-Jetzt müssen Sie Postfix beibringen, dieses Datenbank Mapping zu benutzen::
+Jetzt müssen Sie Postfix beibringen, diese Zuweisung auch zu benutzen::
$> postconf -e virtual_mailbox_domains=mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
-(Das ``postconf -e`` Kommando fügt in geeigneter Weise die Zeilen in Ihre
-``/etc/postfix/main.cf`` Datei ein. Ausserdem aktiviert es die neuen Einstellungen sofort
-(Sie müssen Postfix also nicht neu laden.)
+(Das ``postconf -e``-Kommando fügt in geeigneter Weise die Zeilen in Ihre
+``/etc/postfix/main.cf`` Datei ein. Ausserdem aktiviert es die neuen
+Einstellungen sofort (Sie müssen Postfix also nicht neu laden.)
-Postfix wird ab jetzt Ihre virtual_domains Tabelle durchsuchen ob eine bestimmte
-Domäne eine virtuelle Postfach Domäne ist. Lassen Sie uns testen ob es funktioniert.
+Postfix wird ab jetzt Ihre virtual_domains-Tabelle durchsuchen, ob eine bestimmte
+Domäne eine virtuelle Postfach-Domäne ist. Lassen Sie uns testen ob es funktioniert.
Erstellen Sie eine Zeile in der virtual_domains Tabelle mit einer Domäne.
Verbinden sie sich hierzu mit Ihrer Datenbank::
@@ -667,43 +655,43 @@ Sie sollten den Wert '1' zurückgeliefert
``postmap: warning: connect to mysql server 127.0.0.1: Access denied...``
liegt ein Problem mit dem Benutzerkonto "mailuser" vor, über den Sie
sich mit der Datenbank verbinden.
- Überprüfen Sie deswegen erneut die MySQL Rechte.
+ Überprüfen Sie dann erneut die MySQL-Rechte.
- Wenn Sie folgende Fehlermeldungerhalten:
+ Wenn Sie folgende Fehlermeldung erhalten:
``postmap: warning: connect to mysql server 127.0.0.1: Can't connect
to MySQL server on '127.0.0.1'``
- läuft entweder Ihr MySQL Server nicht oder er horcht nicht auf der
+ läuft entweder Ihr MySQL-Server nicht oder er horcht nicht auf der
Adresse 127.0.0.1. Überprüfen Sie Ihre MySQL Server Konfiguration
(``/etc/mysql/my.cnf``).
virtual_mailbox_maps
--------------------
-Ihr erstes Mapping funktioniert. Großartig. Gehen wir zur zweiten über.
-Sie definieren nun die *virtual_mailbox_maps* welche für das Mapping
-von Mail Adressen (left-hand side) zum Speicherort der Benutzer Postfächer auf
-Ihrer Festplatte (right-hand side) zuständig ist
-Wenn Sie eingehende Mails über den Postfixeigenen *virtuellen Zustellungsdienst*
+Ihre erste Zuweisung funktioniert. Prima. Gehen wir zur zweiten über.
+Sie definieren nun die *virtual_mailbox_maps* welche für die Zuweisung
+von Email-Adressen (linke Seite) zum Speicherort der Benutzer-Postfächer auf
+Ihrer Festplatte (rechte Seite) zuständig ist.
+Wenn Sie eingehende Mails über den Postfix-eigenen *virtuellen Zustellungsdienst*
ausliefern, würde eine Abfrage erfolgen um den Pfad zum Postfach herauszufinden.
Aber in unserem Fall erfolgt die Zustellung durch den LDA (*local delivery agent*)
von Dovecot, so dass Postfix der Pfad zum Postfach egal sein kann.
Postfix benötigt lediglich die Möglichkeit zu überprüfen ob eine bestimmte
-E-Mail Adresse einem virtuellen Benutzer gehört.
-Wie oben auch benötigen Sie also eine SQL Abfrage die nach einer E-Mail Adresse
+Email Adresse zu einem vorhandenen virtuellen Benutzer gehört.
+Wie oben auch benötigen Sie also eine SQL-Abfrage die nach einer Email-Adresse
sucht und den Wert "1" zurückliefert.
-Zuerst müssen Sie sich jedoch mit den Dateirechten befassen. Aus Sicherheitsgründen
-wird vorgeschlagen, dass Sie einen neuen System Benutzer erstellen, dem alle
-virtuellen Postfächer gehören. Die folgenden Shell Kommandos erstellen eine
-System Gruppe "vmail" mit der GID (Gruppen ID) 5000 und einen System Benutzer mit
-der UID (Benutzer ID) 5000.
-(Stellen Sie sicher, dass die UID und GID nicht bereits benutzt wird - Sie können
-jede Nummer zwischen 1000 und 65000 wählen)::
+Zuerst müssen Sie sich jedoch mit den Dateirechten befassen. Aus
+Sicherheitsgründen wird vorgeschlagen, dass Sie einen neuen System Benutzer
+erstellen, dem alle virtuellen Postfächer gehören. Die folgenden Shell
+Kommandos erstellen eine System-Gruppe "vmail" mit der GID (Gruppen ID) 5000
+und einen System-Benutzer mit der UID (Benutzer ID) 5000. (Stellen Sie sicher,
+dass die UID und GID nicht bereits benutzt wird - Sie können jede Nummer
+zwischen 1000 und 65000 wählen, die noch frei ist)::
$> groupadd -g 5000 vmail
$> useradd -g vmail -u 5000 vmail -d /home/vmail -m
-Siem üssen die *virtuel_uid_maps* und *virtual_gid_maps* auf diese IDs setzten::
+Sie müssen die *virtual_uid_maps* und *virtual_gid_maps* auf diese IDs setzen::
$> postconf -e virtual_uid_maps=static:5000
$> postconf -e virtual_gid_maps=static:5000
@@ -715,18 +703,15 @@ Erstellen Sie einen Eintrag in der virtu
INSERT INTO virtual_users (id, domain_id, user, password)
VALUES (1, 1, 'john', MD5('summersun'));
-Als nächstes müssen Sie eine cf Datei erstellen, um Postfix mit der
-SQL Abfrage für die Tabelle bekannt zu machen.
-Aber offensichtlich können Sie nicht alle Informationen nur aus
-der *virtual_user* Tabelle bekommen. Der Domänen Name
-muss aus der *virtual_domains* Tabelle geholt werden.
-"john at example.com" ist unser virtueller Benutzer, jedoch ist
-der Benutzer Teil "john" in der Tabelle virtual_users gespeichert
-während der Eintrag für die Domäne "example.com" in der Tabelle
-virtual_domains liegt.
-Dank der *JOIN* SQL Anweisung können Sie diese beiden Tabellen verbinden.
-Eine Abfrage die uns alle E-mail Adressen aller virtuellen Benutzer zeigen
-kann, würde so aussehen::
+Als nächstes müssen Sie eine cf-Datei erstellen, um für Postfix die passende
+SQL-Abfrage für diese Tabelle festzulegen. Aber offensichtlich können Sie nicht
+alle Informationen nur aus der *virtual_user* Tabelle bekommen. Der
+Domänen-Name muss aus der *virtual_domains* Tabelle geholt werden.
+"john at example.com" ist unser virtueller Benutzer, jedoch ist der Benutzer Teil
+"john" in der Tabelle virtual_users gespeichert während der Eintrag für die
+Domäne "example.com" in der Tabelle virtual_domains liegt. Dank der *JOIN*
+SQL-Anweisung können Sie diese beiden Tabellen verbinden. Eine Abfrage die uns die
+Email-Adressen aller virtuellen Benutzer zeigen kann, würde so aussehen::
mysql>
SELECT CONCAT(virtual_users.user, '@', virtual_domains.name) AS email
@@ -741,14 +726,13 @@ MySQL sollte ausgeben::
| john at example.com |
+------------------+
-Zusätzlich zu der E-Mail Adresse ist es später auch wichtig das Passwort
-des Benutzers zu bekommen.
-Da der Pfad der Benutzerpostfächer festgelegt ist, ist es unwichtig diese
-Information aus der Datenbank zu holen. Die Verzeichnisstruktur sieht
-so aus: ``/home/vmail/$DOMAIN/$USER``. Bei John's Beispiel wäre dies
-``/home/vmail/example.com/john``.
+Zusätzlich zu der Email-Adresse ist es später auch wichtig das Passwort des
+Benutzers zu erhalten. Da der Pfad zum Speicherort der Benutzerpostfächer sich
+nicht ändert, ist es unwichtig diese Information aus der Datenbank zu holen.
+Die Verzeichnisstruktur sieht so aus: ``/home/vmail/$DOMAIN/$USER``. Bei Johns
+Beispiel wäre dies ``/home/vmail/example.com/john``.
-Die Abfrage muss lediglich auch nach dem *password* Feld fragen::
+Die Abfrage muss lediglich auch nach dem *password*-Feld fragen::
mysql>
SELECT CONCAT(virtual_users.user, '@', virtual_domains.name) AS email,
@@ -766,11 +750,11 @@ Das Ergebnis der Abfrage lautet::
Wie Sie sehen wird das Passwort nicht im Klartext sondern als MD5 Hash
-gespeichert. Die Abrage sieht vielleicht etwas kompliziert aus, wenn Sie nicht
-jeden Tag mit SQL Abfragen zu tun haben. Auf alle Fälle ist sie nicht
-gerade handlich. Anstatt diese Abfrage in die cf Datei zu schreiben, gibt
-es seit MySQL 5.0 ein Feature namens *views*. Ein view erlaubt Ihnen
-Abfragen in einer Tabelle zu speichern. Erstellen wir nun den view::
+gespeichert. Die Abfrage sieht vielleicht etwas kompliziert aus, wenn Sie nicht
+täglich mit SQL-Abfragen zu tun haben. Auf alle Fälle ist sie nicht gerade
+handlich. Anstatt diese Abfrage in die cf Datei zu schreiben, gibt es seit
+MySQL 5.0 ein Feature namens *Ansichten* (views). Eine Ansicht erlaubt Ihnen,
+Abfragen in einer Tabelle zu speichern. Erstellen wir nun die Ansicht::
mysql>
CREATE VIEW view_users AS
@@ -780,12 +764,12 @@ Abfragen in einer Tabelle zu speichern.
LEFT JOIN virtual_domains ON virtual_users.domain_id=virtual_domains.id;
Nun können wir die Informationen der virtuellen Benutzer mit einer einfachen
-SELECT Abrage über den *view_users* View abfragen::
+SELECT-Abfrage über die *view_users*-Ansicht abfragen::
mysql>
SELECT * FROM view_users;
-Sie sollten das gleich Ergbnis wie oben erhalten::
+Sie sollten das gleiche Ergbnis wie oben erhalten::
+------------------+----------------------------------+
| email | password |
@@ -795,7 +779,7 @@ Sie sollten das gleich Ergbnis wie oben
Jetzt sind die Dinge etwas einfacher und Sie können die cf Datei
``/etc/postfix/mysql-virtual-mailbox-maps.cf`` mit folgendem
-einfach Inhalt erstellen::
+einfachen Inhalt erstellen::
user = mailuser
password = mailuser2007
@@ -803,12 +787,12 @@ einfach Inhalt erstellen::
dbname = mailserver
query = SELECT 1 FROM view_users WHERE email='%s'
-Teilen Sie Postfix mit, dass es diese Mapping für die das Mapping
-der *virtual_mailbox_maps* benutzen soll::
+Teilen Sie Postfix mit, dass es diese Konfigurationsdatei für die
+Zuweisung *virtual_mailbox_maps* benutzen soll::
$> postconf -e virtual_mailbox_maps=mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
-Schauen Sie nach ob Postfix mit diesen Einstellungen glücklich ist, indem
+Schauen Sie nach, ob Postfix mit diesen Einstellungen glücklich ist, indem
Sie es fragen wo sich das Postfach Verzeichnis von john at example.com
befindet::
@@ -822,14 +806,14 @@ virtual_alias_maps
virtual_alias_maps
------------------
-Das Mapping *virtual_alias_maps* wir benutzt um E-Mails von einer E-Mail
-Adresse zu einer anderen weiterzuleiten. Beispiele wie die Einträge
-in dem Mapping aussehen könnten:
+Die Zuweisung *virtual_alias_maps* wird benutzt, um Emails von einer
+Email-Adresse zu einer anderen weiterzuleiten. Hier ein paar Beispiele
+für Einträge in solch einer Zuweisung:
================ ================= ==========================================
-Quelle (LHS) Ziel (RHS) Bedeutung
+Quelle (links) Ziel (rechts) Bedeutung
================ ================= ==========================================
-john at example.com jmiller at gmail.com John's Mails zu gmail weiterleiten
+john at example.com jmiller at gmail.com Johns Mails zu gmail weiterleiten
john at example.com john at example.com, Ein Kopie zum originalen Konto von
jmiller at gmail.com john at example.com weiterleiten jedoch
auch eine Kopie an jmiller at gmail.com
@@ -844,9 +828,9 @@ john at example.com john at example.com, Ein
ein *catchall* Konto.
================ ================= ==========================================
-Unter ``man 5 virtual`` bekommen Sie die komplette Definition.
+Unter ``man 5 virtual`` bekommen Sie die formelle Beschreibung.
-Wie Sie sehen können ist es möglich verschiedene Ziele getrennt durch Kommas
+Wie Sie sehen können, ist es möglich verschiedene Ziele getrennt durch Kommas
anzugeben. In der Datenbank kann der gleiche Effekt durch Benutzung verschiedener
Zeilen erreicht werden. Der erste Eintrag oben sollte in 2 Zeilen aufgeteilt werden:
@@ -864,7 +848,7 @@ Lassen Sie uns nun ein Beispiel in die D
VALUES (1, 1, 'john', 'john at example.com'),
(2, 1, 'john', 'jmiller at gmail.com');
-Erstellen wir nun auch ein *view* für die virtuellen Aliase::
+Erstellen wir nun auch eine Ansicht (view) für die virtuellen Aliase::
mysql>
CREATE VIEW view_aliases AS
@@ -873,12 +857,11 @@ Erstellen wir nun auch ein *view* für di
FROM virtual_aliases
LEFT JOIN virtual_domains ON virtual_aliases.domain_id=virtual_domains.id;
-Diese Abfrage ist etwas komplizierter als der vorhergehende. Er holt alle
-Zeilen von virtual_aliases und verbindet sie mit der virtual_domains Tabelle
-(das domain_id Feld der virtual_aliases Tabelle stimmt mit dem id Feld der
-virtual_domains Tablle überein).
-Zu kompliziert? Das braucht Sie nicht länger zu ärgern, da Sie jetzt den
-View *view_aliases* benutzen können::
+Diese Abfrage ist etwas komplizierter als der vorhergehende. Sie holt alle
+Zeilen von virtual_aliases und verbindet sie mit der virtual_domains-Tabelle
+(das domain_id-Feld der virtual_aliases-Tabelle stimmt mit dem id-Feld der
+virtual_domains-Tablle überein). Zu kompliziert? Das braucht Sie nicht länger
+zu ärgern, da Sie jetzt die Ansicht *view_aliases* benutzen können::
mysql>
SELECT * FROM view_aliases;
@@ -892,8 +875,8 @@ um die entsprechenden Ergebnisse zu erha
| john at example.com | jmiller at gmail.com |
+------------------+-------------------+
-Da der SQL View perfekt funktioniert können in wir nun mit Postfix benutzen.
-Erstellen Sie erneut eine cf Datei namens ``/etc/postfix/mysql-virtual-alias-maps.cf``
+Da die SQL-Ansicht perfekt funktioniert, können Sie sie nun mit Postfix benutzen.
+Erstellen Sie eine cf-Datei namens ``/etc/postfix/mysql-virtual-alias-maps.cf``
mit folgendem Inhalt::
user = mailuser
@@ -902,7 +885,7 @@ mit folgendem Inhalt::
dbname = mailserver
query = SELECT destination FROM view_aliases WHERE email='%s'
-Testen Sie ob die Mapping Datei wie erwartet funktioniert::
+Testen Sie, ob die Zuweisung Datei wie erwartet funktioniert::
$> postmap -q john at example.com mysql:/etc/postfix/mysql-virtual-alias-maps.cf
@@ -910,31 +893,29 @@ Sie sollten die beiden erwarteten Ziele
john at example.com,jmiller at gmail.com
-.. sidebar:: Catch-all Adressen ziehen Spam an
+.. sidebar:: Catch-all Adressen sind Spam-Magneten
- Catch-All Aliase sehen vielleicht komfortabel aus, da Sie alle E-Mails
- an eine Person weiterleiten ohne das Aliase erstellt werden müssen.
- Das Problem liegt darin, dass Spammer E-Mail Adressen erraten.
+ Catch-All-Aliase sehen vielleicht komfortabel aus, da Sie alle E-Mails
+ an eine Person weiterleiten, ohne das Aliase erstellt werden müssen.
+ Das Problem liegt darin, dass Spammer E-Mail Adressen raten.
Wenn z.B. die Adresse office at example.com nicht besteht, Sie aber
Catch-All Aliase nutzen bekommen Sie unnötigerweise den Spam von
dieser Adresse. Versuchen Sie dies zu vermeiden, in dem Sie möglichst
- auf Catch-All verzichten.
+ auf Catch-Alls verzichten.
-Bevor Sie die Einstellung der *virtual_alias_maps* vornehmen, müssen Sie
-eine kleine Eigentschaft beachten.
-Es gibt eine spezielle Art der Weiterleitung: Die "Catch-All" Aliase.
-Chat-Alls holen alle Mails für eine Domäne für die keine Benutzerkonten
-spezifiziert wurden.
-Ein Catch-All Alias wäre z.B. "@example.com", welcher alle E-Mails der
-Domäne auf ein Konto weiterleiten würde.
-Wir haben einen Benutzer 'john at example.com' erstellt und wollen dass
-alle *anderen* E-Mails der Domäne an 'kerstin at gmail.com' weitergeleitet
-werden. Wir würden hier für folgenden Catch-All Alias anlegen:
+Bevor Sie die Einstellung der *virtual_alias_maps* vornehmen, müssen Sie eine
+kleine Besonderheit beachten. Es gibt eine spezielle Art der Weiterleitung: Die
+"Catch-All" Aliase. Catch-Alls fangen alle Mails für eine Domäne für die keine
+Benutzerkonten spezifiziert wurden. Ein Catch-All Alias wäre z.B.
+"@example.com", welcher alle E-Mails der Domäne auf ein Konto weiterleiten
+würde. Wir haben einen Benutzer 'john at example.com' erstellt und wollen dass
+alle *anderen* E-Mails der Domäne an 'kerstin at gmail.com' weitergeleitet werden.
+Wir würden hier für folgenden Catch-All Alias anlegen:
================= ====================
E-Mail Ziel
================= ====================
- at example.com kerstin at gmail.com
+ at example.com kerstin at gmail.com
================= ====================
Stellen Sie sich vor was passieren würde, wenn Postfix eine E-Mail für
@@ -951,14 +932,14 @@ john at example.com john at example.com
john at example.com john at example.com
================= ====================
-Genauer festgelegte Aliase haben höhere Priorität als die Catchall Aliase.
-Postfix wird den Eintrag für 'john at example.com' finden und die Mails sollten
-an die gleiche Adresse 'john at example.com' "weitergeleitet" werden.
-Diese Vorgehensweise scheint etwas verwirrend zu sein, aber Sie werden Sie brauchen
-wenn Sie Catch-All Konten benutzen wollen.
-Das *virtual_alias_maps* Mapping muss also beidem folge leisten: dem "view_aliases"
-und dem "john-an-sich-selbst" Mapping. Erstellen Sie eine cf Datei
-``/etc/postfix/mysql-email2email.cf`` für das letztere Mapping mit folgendem Inhalt::
+Spezifischer festgelegte Aliase haben höhere Priorität als die Catchall-Aliase.
+Postfix wird den Eintrag für 'john at example.com' zuerst finden und die Mails
+sollten an die gleiche Adresse 'john at example.com' "weitergeleitet" werden.
+Diese Vorgehensweise scheint etwas verwirrend zu sein, aber Sie werden Sie
+brauchen wenn Sie Catch-All Konten benutzen wollen. Die
+*virtual_alias_maps*-Zuweisung muss also beides leisten: die "view_aliases" und
+die "john-an-sich-selbst"-Zuweisung. Erstellen Sie eine cf-Datei
+``/etc/postfix/mysql-email2email.cf`` für das letztere mit folgendem Inhalt::
user = mailuser
password = mailuser2007
@@ -966,8 +947,8 @@ und dem "john-an-sich-selbst" Mapping. E
dbname = mailserver
query = SELECT email FROM view_users WHERE email='%s'
-Überprüfen Sie ob Sie John's E-Mail Adresse zurückgeliefert bekommen,
-wenn Sie Postfix fragen ob es Aliasse von Ihm gibt::
+Überprüfen Sie ob Sie John's Email Adresse zurückgeliefert bekommen,
+wenn Sie Postfix fragen, ob es Aliasse für ihn gibt::
$> postmap -q john at example.com mysql:/etc/postfix/mysql-email2email.cf
@@ -975,35 +956,34 @@ Das Ergebnisse sollte die gleiche Adress
john at example.com
-Nun müssen Sie Postfix noch mitteilen, dass diese beiden Mappings
+Nun müssen Sie Postfix noch mitteilen, dass diese beiden Zuweisungen
durchsucht werden sollen indem Sie folgende Zeile in Ihre ``main.cf``
eintragen::
$> postconf -e virtual_alias_maps=mysql:/etc/postfix/mysql-virtual-alias-maps.cf,mysql:/etc/postfix/mysql-email2email.cf
-Bitte denken Sie daran, dass die Reihenfolge der beiden Mappings wichtig ist.
-Postfix wird alle passenden Einträge in der ersten virtual-alias Mapping beachten
-und sie als Alias verwenden.
-Nur wenn *keine* Ergebnisse gefunden werden, wird Postfix das zweite Mapping
-*email2email* befragen.
+Bitte denken Sie daran, dass die Reihenfolge der beiden Zuweisungen wichtig
+ist. Postfix wird alle passenden Einträge in der ersten virtual_alias_maps
+beachten und sie als Alias verwenden. Nur wenn *keine* Ergebnisse gefunden
+werden, wird Postfix die zweite Zuweisung *email2email* befragen.
-Sie haben es geschafft! Alle Mappings sind eingerichtet und die Datenbank
-ist bereit um mit Domänen und Benutzer gefüllt zu werden. Stellen Sie sicher
-dass nur 'root' und der 'postfix' Benutzer die cf Dateien lesen kann, da hier
+Sie haben es geschafft! Alle Zuweisungen sind eingerichtet und die Datenbank
+ist bereit um mit Domänen und Benutzer gefüllt zu werden. Stellen Sie sicher,
+dass nur 'root' und der 'postfix' Benutzer die-cf Dateien lesen kann, da hier
ihr Datenbankpasswort gespeichert ist::
chgrp postfix /etc/postfix/mysql-*.cf
chmod u=rw,g=r,o= /etc/postfix/mysql-*.cf
-Schritt 5: E-Mail mit dem Dovecot LDA ausliefern
-================================================
+Schritt 5: E-Mail mit dem Dovecot Zustellagenten (LDA) ausliefern
+==================================================================
-Postfix besitzt standardgemäß einen mail delivery agent (MDA) namens
-"virtual" der gewöhnlich die E-Mails an virtuelle Postfächern ausliefert.
-Dovecot hat jedoch seinen eigenen (local) delivery agent, der auch
-"Dovecot LDA" genannt wird und mehr Funktionalität bietet.
+Postfix nutzt standardmäßig einen Zustellagenten namens "virtual", der
+gewöhnlich die E-Mails an virtuelle Postfächer ausliefert. Dovecot hat jedoch
+seinen eigenen Zustellagenten, der auch "Dovecot LDA" genannt wird und mehr
+Funktionalität bietet.
-Damit Postfix diesen agent auch benutzt müssen Sie einen Dienst
+Damit Postfix diesen Agenten auch benutzt, müssen Sie einen Dienst
in Ihre ``/etc/postfix/master.cf`` eintragen::
dovecot unix - n n - - pipe
@@ -1015,16 +995,16 @@ damit Postfix den Dienst für die virtuel
$> postconf -e virtual_transport=dovecot
$> postconf -e dovecot_destination_recipient_limit=1
-Dies ermöglicht Postfix eingehende E-Mails für virtuelle Benutzer an das Programm
-``/usr/lib/dovecot/deliver`` durchzuschleifen.
-Nun ist es an der Zeit Dovecot zu konfigurieren:
+Dies ermöglicht Postfix, eingehende Emails für virtuelle Benutzer an das
+Programm ``/usr/lib/dovecot/deliver`` weiterzureichen. Nun ist es an der Zeit,
+Dovecot zu konfigurieren:
Schritt 6: Dovecot konfigurieren
================================
-Lassen Sie uns nun Dovecot, welches POP3 und IMAP Dienste anbietet, konfigurieren.
-Die Konfigurationsdateien von Dovecot finden Sie unter ``/etc/dovecot``.
-Beginnen Sie mit der...
+Lassen Sie uns nun Dovecot konfigurieren, damit die POP3- und IMAP-Dienste
+funktionieren können. Die Konfigurationsdateien von Dovecot finden Sie unter
+``/etc/dovecot``. Beginnen Sie mit der...
/etc/dovecot/dovecot.conf
-------------------------
@@ -1033,11 +1013,11 @@ Setzten Sie die Parameter in der Zeile `
protocols = imap imaps pop3 pop3s
-damit Dovecot den IMAP und POP3 Dienst, sowie die äquivalenten Dienste
-die eine SSL (*secure socket layer*) verschlüsselte Verbindung benutzen,
+damit Dovecot den IMAP- und POP3-Dienst, sowie die äquivalenten Dienste
+die eine SSL (*secure socket layer*)-verschlüsselte Verbindung benutzen,
startet.
-Wenn sich ein paar Benutzer beschweren, dass sie keine E-Mails emfpangen können,
+Wenn sich Benutzer beschweren, dass sie keine E-Mails empfangen können,
ändern Sie folgende Einstellung::
disable_plaintext_auth = no
@@ -1045,19 +1025,19 @@ Dies bewirkt, dass man sich auch mit Kla
Dies bewirkt, dass man sich auch mit Klartext Passwörtern über eine unsichere
(nicht-SSL verschlüsselte) Verbindung authentifizieren kann.
Standardmäßig ist der Wert aus Sicherheitsgründen auf 'yes' gesetzt.
-Ihn auf 'no' zu setzten, bedeutet weniger Sicherheit wird aber denen helfen,
+Ihn auf 'no' zu setzten, bedeutet weniger Sicherheit wird aber Nutzern helfen,
die keine sichere Verbindung verwenden können.
Eine viel wichtigere Einstellung ist::
mail_location = maildir:/home/vmail/%d/%n
-welche mitteilt, dass die Postfächer der Benutzer im Mailordnerformat unter
+welche mitteilt, dass die Postfächer der Benutzer im *maildir*-Format unter
``/home/vmail/DOMAIN/USER`` zu finden sind.
Wenn Sie einer früheren Anleitung für Sarge oder Woody gefolgt sind und
bereits virtuelle Mailpostfächer auf Ihrem System haben, sollten Sie
-den eindeutigen Namen für IMAP definieren, damit die Bneutzer Ihre
+den eindeutigen Namensraum für IMAP definieren, damit die Bneutzer Ihre
Ordner dort vorfinden, wo Sie vorher auch waren::
namespace private {
@@ -1077,23 +1057,23 @@ Im gleichen Abschnitt müssen Sie ändern:
args = /etc/dovecot/dovecot-sql.conf
}
-dies teilt Dovecot mit, dass die Passwörter in einer SQL Datenbank gespeichert
+Dies teilt Dovecot mit, dass die Passwörter in einer SQL-Datenbank gespeichert
sind. Und durch den Eintrag::
userdb static {
args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes
}
-weiß Postfix wo sich die Mailpostfächer befinden. Dies ist das gleiche wie
+weiß Postfix wo sich die Postfächer befinden. Dies ist das gleiche wie
die *mail_location* Einstellung.
-Wahrscheinlich wollen Sie den Abschnitt namens ``passdb pam``, welcher
-den Umgang mit Systembenutzern regelt, auskommentieren. Andernfalls
-wird Dovecot auch nach Systembenutzern Ausschau halten, wenn jemand
-E-Mails abruft. Dies führt zu Warnungen in Ihren Log Dateien.
+Den Abschnitt namens ``passdb pam`` der den Zugang für System-Benutzer erlaubt,
+sollten Sie auskommentieren. Andernfalls wird Dovecot auch nach Systembenutzern
+Ausschau halten, wenn jemand Emails abruft. Dies führt zu Warnungen in Ihren
+Log-Dateien.
Suchen Sie nun den Abschnitt ``socket listen``. Hier definieren Sie die
-Socket Dateien, die für die Kommunikation mit Dovecot's Autentifizierungsmethoden
+Socket-Dateien, die für die Kommunikation mit Dovecot's Autentifizierungsmethoden
verwendet werden::
socket listen {
@@ -1111,21 +1091,19 @@ verwendet werden::
}
}
-Der Abschnitt *master* wird benutzt um dem Delivery Agent von Dovecot
-(das Programm, dass die Mails in die Postfächer der Benutzer speichert)
-Zugang zur Benutzerdatenbank mit den Informationen zu verschaffen.
-Der Abschnitt *client* erstellt einen Sokel im "chroot" Verzeichnis von
-Postfix. Chroot bedeutet dass einige Teile von Postfix unter
-``/var/spool/postfix`` gefangen sind und nur auf Dateien in diesem
-Verzeichnis zugreifen können. Es stellt ein gutes Maß an Sicherheit dar.
-Sogar wenn Postfix Fehler haben sollte und eine Attacke stattfinden würde,
-hätte der Angreifer trotzdem keinen Zugriff auf z.B. /etc/passwd.
+Der Abschnitt *master* wird benutzt, um dem Zustellagenten von Dovecot (das
+Programm, dass die Mails in die Postfächer der Benutzer speichert) Zugang zu
+den *userdb*-Informationen zu erlauben. Der Abschnitt *client* erstellt einen
+Socket im "chroot" Verzeichnis von Postfix. Chroot bedeutet dass einige Teile
+von Postfix unter ``/var/spool/postfix`` gefangen sind und nur auf Dateien in
+diesem Verzeichnis zugreifen können. Es stellt ein gutes Maß an Sicherheit dar.
+Sogar wenn Postfix Fehler haben sollte und ein Angriff stattfinden würde, hätte
+der Angreifer trotzdem keinen Zugriff auf z.B. /etc/passwd.
-Zum Schluss muss noch der Abschnitt ``protocoll lda`` angepasst werden.
-Der LDA (*local delivery agent*) ist geeigneter als der mit Postfix
-kommende virtual delivery agent. Er ermöglicht quotas und Sieve _(ist
-im Standard Paket *docecot-common* enthalten).
-Der Abschnitt soll so aussehen::
+Zum Schluss muss noch der Abschnitt ``protocoll lda`` angepasst werden. Der
+Zustellagent (LDA) ist geeigneter als der mit Postfix kommende "virtual"-Agent.
+Er ermöglicht Quotas und Sieve_-Filter (ist im Standard Paket *docecot-common*
+enthalten). Der Abschnitt sollte so aussehen::
protocol lda {
log_path = /home/vmail/dovecot-deliver.log
@@ -1137,13 +1115,11 @@ Der Abschnitt soll so aussehen::
Bitte ändern Sie die obige *postmaster* E-Mail Adresse auf eine gültige
Adresse, über die der Administrator erreicht werden kann.
-Please change the above *postmaster* email address to a valid address
-where the administrator can be reached.
.. _Sieve: http://wiki.dovecot.org/LDA/Sieve
-Editieren Sie ``/etc/dovecot/dovecot-sql.conf`` und ändern Sie die Einstellungen
-wiefolgt::
+Editieren Sie die ``/etc/dovecot/dovecot-sql.conf`` und ändern Sie die
+Einstellungen wie folgt::
driver = mysql
connect = host=127.0.0.1 dbname=mailserver user=mailuser password=mailuser2007
@@ -1161,13 +1137,13 @@ Schauen Sie sich nun Ihre ``/var/log/mai
dovecot: auth-worker(default): mysql: Connected to 127.0.0.1 (mymailserver)
Während des ersten Neustarts von Dovecot werden Diffie-Hellman Parameter erstellt
-und die Recht von ``/var/run/dovecot`` und ``/var/run/dovecot/login`` angepasst.
-Das ist absolut normal.
+und die Rechte von ``/var/run/dovecot`` und ``/var/run/dovecot/login`` angepasst.
+Das ist völlig normal.
-Sie müssen zuerst die Datei Rechte für ``/etc/dovecot/dovecot.conf`` ändern, bevor
+Sie müssen zuerst die Datei-Rechte für ``/etc/dovecot/dovecot.conf`` ändern, bevor
Sie die erste Testmail verschicken können. Der Benutzer *vmail* muss Zugang
-zur Konfigurationsdatei von Dovecot haben, da Postfix den delivery agent mit den
-Rechten von *vmail* startet::
+zur Konfigurationsdatei von Dovecot haben, da Postfix den Zustellagenten
+mit den Rechten von *vmail* startet::
$> chgrp vmail /etc/dovecot/dovecot.conf
$> chmod g+r /etc/dovecot/dovecot.conf
@@ -1176,10 +1152,10 @@ Schritt 7: Eine Testmail mit TELNET vers
Schritt 7: Eine Testmail mit TELNET versenden
=============================================
-Eine SMTP Sitzung mit telnet simulieren
----------------------------------------
+Eine SMTP-Verbindung mit telnet simulieren
+-------------------------------------------
-Lassen Sie uns nun versuchen eine E-Mail an einen Benutzer zu senden.
+Lassen Sie uns nun versuchen, eine E-Mail an einen Benutzer zu senden.
Da die Domäne "example.com" nicht wirklich existiert und Sie Ihre DNS
Einstellungen nicht zum richtigen Server führt, simulieren wir nun
eine SMTP Sitzung mit dem *telnet* Kommando::
@@ -1198,7 +1174,7 @@ müssen wir freundlich sein::
helo example.com
-Postfix schätzt unsere Freundlichkeit und erzählt uns welche
+Postfix schätzt unsere Freundlichkeit und erzählt uns, welche
Funktionen es anbietet::
250-my-new-mailserver
@@ -1216,11 +1192,11 @@ Hey Postfix, wir haben eine Mail von ste
mail from:<steve at example.com>
Sieht so aus als wäre Postfix glücklich darüber, weil zurückgelieferte
-Codes die mit '2' beginnen gute Neuigkeiten sind::
+Codes die mit '2' beginnen grundsätzlich gut sind::
250 2.1.0 Ok
-Teilen Sie postfix mit wer der Empfänger der Mail ist::
+Teilen Sie Postfix mit wer der Empfänger der Mail ist::
rcpt to:<john at example.com>
@@ -1240,9 +1216,9 @@ separaten Zeile beenden sollen::
Okay, schreiben Sie nun den Text der Mail::
- Hi John,
+ Hallo John,
- just wanted to drop you a note.
+ Ich wollte dir nur mal eine Mail schicken.
.
Postfix teilt uns mit, das es die Mail empfangen und mit einer
@@ -1258,8 +1234,8 @@ Danke Postfix, wir sind fertig::
Überprüfen der Logdateien
-------------------------
-Schauen Sie sich nun die Datei `` /var/log/mail.log`` an. Sie sollten
-einen ähnlichen Eintrag wie folgenden finden:
+Schauen Sie sich nun die Datei ``/var/log/mail.log`` an. Sie sollten
+einen ähnlichen Eintrag wie folgenden finden::
postfix/smtpd[...]: connect from localhost[127.0.0.1]
postfix/smtpd[...]: 5FF712A6: client=localhost[127.0.0.1]
@@ -1301,9 +1277,9 @@ Drücken Sie ENTER um die Mail zu lesen::
From: steve at example.com
To: undisclosed-recipients: ;
- Hi John,
+ Hallo John,
- just wanted to drop you a note.
+ Ich wollte dir nur mal eine Mail schicken.
Die Mail ist also in Johns Konto angekommen. Perfekt.
Drücken Sie nun zweimal 'q' um Mutt zu verlassen.
@@ -1313,7 +1289,7 @@ Schritt 9: Testen Sie den Empfang von Ma
==============================================================
John wird es sicherlich bevorzugen seine Mails mit einem komfortablen
-Mail Programm zu lesen. Deswegen braucht er eine Möglichkeit Zugang
+Mail-Programm zu lesen. Deswegen braucht er eine Möglichkeit, Zugang
zu seinem Mailpostfach zu erlangen. Zwei Protokolle kommen hier ins
Spiel:
@@ -1323,17 +1299,17 @@ Spiel:
vom Server zu löschen.
- IMAP (Internet Messaging Application Protocol) wird ebenfalls
benutzt um E-Mails abzurufen. Jedoch können Sie damit verschiedene
- Postfächer verwalten. Die *Inbox* ist der Ordner in dem Ihre eingehenden
- Mails gespeichert werden. Jedoch können Benutzer die Mails in verschiedene
- Ordner verschieben. IMAP ist nützlich, wenn Sie Ihre E-Mails von
- verschiedenen Standorten abrufen wollen, ohne Mails zu verlieren
- (Da sie evtl. bestimmte Mails schon von wo anders abgerufen haben)
+ Postfächer verwalten. Die *Inbox* (Posteingang) ist der Ordner in dem Ihre
+ eingehenden Mails gespeichert werden. Jedoch können Benutzer die Mails in
+ verschiedene Ordner verschieben. IMAP ist nützlich, wenn Sie Ihre E-Mails von
+ verschiedenen Orten abrufen wollen, ohne Mails zu verlieren (da sie
+ evtl. bestimmte Mails schon von woanders abgerufen haben)
Testen von POP3
---------------
-Lassen Sie uns versuchen eine POP3 Verbindung herzustellen und John's E-Mails
+Lassen Sie uns versuchen, eine POP3 Verbindung herzustellen und Johns E-Mails
zu lesen::
$> telnet localhost pop3
@@ -1389,9 +1365,9 @@ Dovecot schickt Ihnen die Mail::
From: steve at example.com
To: undisclosed-recipients:;
- Hi John,
+ Hallo John,
- just wanted to drop you a note.
+ Ich wollte dir nur mal eine Mail schicken.
.
Trennen Sie die Verbindung zum POP3 Server::
@@ -1406,13 +1382,13 @@ Testen von IMAP
Testen von IMAP
---------------
-Anstatt folgender Prozedur zu nutzen (IMAP ist ziemlich kompliziert)
+Anstatt folgende Prozedur zu nutzen (IMAP ist ziemlich kompliziert)
könen Sie auch *mutt* benutzen um eine IMAP Verbindung herzustellen::
$> mutt -f imaps://john@example.com@localhost
-Alternativ können Sie eine IMAP Verbindzung zum Server herstellen und
-die IMAP Kommandos selber eingeben::
+Ansonsten stellen Sie eine IMAP Verbindzung zum Server her und
+geben Sie die IMAP-Befehle selbst ein::
$> telnet localhost imap2
@@ -1423,7 +1399,7 @@ Sie sollten eine Verbindung erhalten::
Escape character is '^]'.
* OK Dovecot ready.
-IMAP Kommandos starten immer mit einer Nummer und antworten dem Kommando
+IMAP-Befehle starten immer mit einer Nummer und antworten dem Kommando
mit der gleichen Nummer. Deswegen müssen Sie folgende Kommandos
*mit* der Nummer am Anfang jeder Zeile eingeben:
Loggen Sie sich mit Benutzernamen und Passwort ein::
@@ -1443,7 +1419,7 @@ Die Ausgabe der Liste erfolgt::
* LIST (\HasNoChildren) "." "INBOX"
2 OK List completed.
-Wählen Sie Ihre Inbox::
+Wählen Sie Ihren Posteingang (Inbox)::
3 select "INBOX"
@@ -1457,7 +1433,7 @@ Dovecot liefert Ihnen alle Informationen
* OK [UIDNEXT 3] Predicted next UID
3 OK [READ-WRITE] Select completed.
-Sie sehen dass eine Mail vorliegt. Holen Sie diese::
+Sie sehen, dass eine Mail vorliegt. Holen Sie sie ab::
4 fetch 1 all
@@ -1484,9 +1460,9 @@ Da kommt er::
From: steve at example.com
To: undisclosed-recipients:;
- Hi John,
+ Hallo John,
- just wanted to drop you a note.
+ Ich wollte dir nur mal eine Mail schicken.
)
5 OK Fetch completed.
@@ -1500,17 +1476,16 @@ Dovecot loggt Sie aus::
6 OK Logout completed.
Connection closed by foreign host.
-Es sieht so aus als würde POP3 und IMAP funktionieren. Sie können nun
-einen E-Mail Client wie Kmail, Evolution oder Thunderbird/Icedove verwenden
-und ein POP3 oder IMAP E-Mail Konto einrichten.
-Mutt zu verwenden ist der schnellste weg um verschlüsselte Verbindungen zu testen::
+Es sieht so aus, als würden POP3 und IMAP funktionieren. Sie können nun einen
+E-Mail Client wie Kmail, Evolution oder Thunderbird/Icedove verwenden und ein
+POP3- oder IMAP-Email Konto einrichten. Mutt zu verwenden ist der schnellste
+weg um verschlüsselte Verbindungen zu testen::
$> mutt -f imaps://john@example.com@localhost
-Wenn Sie andere E-mail Programme verwenden müssen Sie daran denken, dass
-der Benutzername gleich der E-Mail Adresse, also 'john at example.com'
-und das Passwort 'summersun' ist.
-Sie können folgende Verbindungsarten probieren:
+Wenn Sie andere Email-Programme verwenden, müssen Sie daran denken, dass der
+Benutzername gleich der E-Mail Adresse, also 'john at example.com' und das
+Passwort 'summersun' ist. Sie können folgende Verbindungsarten probieren:
- POP3
- IMAP
@@ -1524,12 +1499,11 @@ Unglücklicherweise scheint das "postinst
Unglücklicherweise scheint das "postinst" Skript (das nach der Installation
des Packets 'dovecot-common' aufgerufen wird) das Zertifikat nicht richtig zu erstellen.
-Dem allgemeinen Namen des Servers fehlt der Teil für die Domäne.
-(Ich habe den Fehler unter der Bug Nummer `#425917
-<http://bugs.debian.org/425917>`_ an bugs.debian.org gemeldet. Es sieht jedoch so
-aus als würde der Fehler in Etch nicht behoben werden)
-Deshalb wird geraten, dass Sie Ihr eigenes Zertifikat mit dem richtigen
-Servernamen erstellen::
+Dem allgemeinen Namen des Servers fehlt der Teil für die Domäne. (Ich habe den
+Fehler unter der Bug Nummer `#425917 <http://bugs.debian.org/425917>`_ an
+bugs.debian.org gemeldet. Es sieht jedoch so aus als würde der Fehler in Etch
+nicht behoben werden) Deshalb rate ich Ihnen, Ihr eigenes Zertifikat mit dem
+richtigen Servernamen erstellen::
$> openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/dovecot.pem \
-keyout /etc/ssl/private/dovecot.pem
@@ -1557,72 +1531,71 @@ Fragen dazu gestellt::
Common Name (eg, YOUR name) []:mailtest.workaround.org
Email Address []:postmaster at workaround.org
-Natürlich sollten Sie hier Ihre eigenen Informationen eintragen.
-Die wichtigste Einstellung ist der *Common Name* welcher den Fully-qualified
-Namen des Mailservers enthalten muss.
-Ach ja, dieses Zertifikat ist für 10 Jahre gültig
-(3650 Tage) - stellen Sie es so ein wie Sie wollen.
+Natürlich sollten Sie hier Ihre eigenen Informationen eintragen. Die wichtigste
+Einstellung ist der *Common Name* welcher den voll-qualifizierten Namen Ihres
+Mail-Servers enthalten muss. Ach ja, dieses Zertifikat ist für 10 Jahre gültig
+(3650 Tage) - legen Sie einfach die gewünschte Gültigkeitsdauer fest.
-Vergessen Sie nicht den privaten Key mit den richtigen Rechten zu versehen,
-damit niemand ihn unauthorisiert lesen kann::
+Vergessen Sie nicht, den privaten Key mit den richtigen Rechten zu versehen,
+damit niemand ihn unautorisiert lesen kann::
$> chmod o= /etc/ssl/private/dovecot.pem
Schritt 9: Authentifiziertes SMTP
=======================================================
-Es ist wichtig, dass Sie zuerst das Problem des *Open Relays* verstehen.
-Aus Sicherheitsgründen erlaubt Postfix entweder nur Mails von IP Adressen
-die unter *mynetworks* aufgelistet sind oder
+Es ist wichtig, dass Sie zuerst das Problem *offener Relays* verstehen. Aus
+Sicherheitsgründen erlaubt Postfix entweder nur Mails von IP-Adressen die unter
+*mynetworks* (ihrem lokalen Netzwerk) aufgelistet sind oder zu lokalen oder
+virtuellen Domänen gehören zu verschicken. Alle anderen Fälle, wie z.B. das
+Senden einer Mail an eine andere Person im Internet, werden als *relaying*
+bezeichnet und sind aus Sicherheitsgründen beschränkt. Wenn Sie jede Mail
+weiterleiten würden, könnten Spammer Ihren Mailserver missbrauchen um Mails in
+Ihrem eigenen Interesse zu versenden. Sie würden als *offenes Relay* gelistet
+werden und wahrscheinlich in kürzester Zeit auf verschiedenen Sperrlisten
+(Blacklists) landen. Wenn dieser Fall erst einmal eintritt, wird es schwierig,
+jemals wieder Mails versenden zu können. Das setzen der Rechte
+*smtpd_recipient_restrictions* (wie unten beschrieben) ist deshalb sehr
+wichtig.
-Aus Sicherheitsgründen erlaubt Postfix nur E-Mails (Post) von den IP-Adressen,
-die in "mynetworks" aufgelistet sind oder zu lokalen oder virtuellen Domänen gehören zu verschicken.
-Alle anderen Fälle, wie z.B. das Senden einer Mail an eine andere Person im Internet, werden als
-*relaying* bezeichnet und sind aus Sicherheitsgründen beschränkt.
-Wenn Sie jede Mail weiterleiten würden, könnten Spammer Ihren Mailserver missbrauchen um Mails
-in Ihrem eigenen Interesse zu versenden.
-Sie würden als *open relay* genannt werden und wahrscheinlich geblacklistet werden.
-wenn der Fall erst einmal eintritt, wird es schwierig jemals wieder Mails versenden
-zu können.
-Das setzen der Rechte *smtpd_recipient_restrictions* (wie unten beschrieben) ist sehr wichtig.
-
-Generell können Sie die Netzwerke definieren, denen es erlaubt ist über
-Ihren Server weiterzuleiten, indem Sie die Einstellungen von *mynetworks* in der
-``main.cf`` anpassen.
-Gewöhnlich setzt man es auf das eigene Netzwerk, damit lokale Benutzer sich
-nicht authentifizieren müssen::
+Generell können Sie die Netzwerke definieren, denen es erlaubt ist über Ihren
+Server weiterzuleiten, indem Sie die Einstellungen von *mynetworks* in der
+``main.cf`` anpassen. Gewöhnlich setzt man es auf das eigene Netzwerk, damit
+lokale Benutzer sich nicht authentifizieren müssen::
$> postconf -e mynetworks=192.168.50.0/24
-Ein Fall von Relaying ist wirklich wichtig. Stellen Sie sich vor Sie haben
-einen Benutzer der nicht mit dem lokalen Netzwerk verbunden ist, aber E-Mails
-über Ihren Server ans internet senden will. Durch die obigen Regeln könnte der
-Benutzer keine E-Mails senden, da diese weder über Ihr Netzwerk versendet noch an eine
-Domäne von Ihnen adressiert sind. Sie müssen also einen Weg suchen, der es
-Remotebenutzern ermöglicht von Ihrem Mailserver als vertrauenswürdig eingestuft
-zu werden. Die Benutzer müssen sich mit Benutzernamen und Passwrot anmelden,
-damit der Server das Relaying erlaubt. Dies nennt man *authentifiziertes SMTP*.
-Die meisten E-Mail Clients unterstützen diese Funktion standardmäßig.
+Ein Fall von Relaying von außerhalb Ihres lokalen Netzes ist aber tatsächlich
+wichtig. Stellen Sie sich vor Sie haben einen Benutzer der nicht mit dem
+lokalen Netzwerk verbunden ist, aber Emails über Ihren Server ins Internet
+senden will. Durch die obigen Regeln könnte der Benutzer keine EMails senden,
+da diese weder über Ihr Netzwerk versendet noch an eine Domäne von Ihnen
+adressiert sind. Sie müssen also einen Weg suchen, der es Benutzern im Internet
+ermöglicht, von Ihrem Mailserver als vertrauenswürdig eingestuft zu werden. Die
+Benutzer müssen sich mit Benutzernamen und Passwrot anmelden, damit der Server
+das Relaying erlaubt. Dies nennt man *authentifiziertes SMTP*. Die meisten
+E-Mail Clients unterstützen diese Funktion standardmäßig.
Authentifiziertes SMTP mit Postfix stellte immer ein Problem dar. Es wurde
-durch die Bibliotek SASL (*Simple Authentificatin and Security Layer*) erledigt,
-welche ein Teil des Cyrus Mail Servers war.
-Es war beinahe unmöglich Fehlermeldungen auszuwerten da diese nicht aussagekräftig
-waren. Ab Postfix 2.3 können wir `Postfix dazu bringen den Dovecot Server zu benutzen
-<http://www.postfix.org/SASL_README.html#server_dovecot>`_ um den Benutzernamen
-und das Passwort zu verifizieren. Da Sie Dovecot bereits konfiguriert haben, sind die
-weiteren Schritte wirklich einfach. Postfix benötigt nur einige zustätzliche
-Konfigurationseitnräge::
+durch die Bibliothek SASL (*Simple Authentificatin and Security Layer*)
+erledigt, welche ein Teil des Cyrus Mail Servers war. Es war beinahe unmöglich,
+Fehler in der Konfiguration zu finden, da die Fehlermeldungen nicht besonders
+aussagekräftig waren. Ab Postfix 2.3 können wir `Postfix dazu bringen den
+Dovecot Server zu benutzen
+<http://www.postfix.org/SASL_README.html#server_dovecot>`_, um den
+Benutzernamen und das Passwort zu verifizieren. Da Sie Dovecot bereits
+konfiguriert haben, sind die weiteren Schritte wirklich einfach. Postfix
+benötigt nur einige zustätzliche Konfigurationseinträge::
$> postconf -e smtpd_sasl_type=dovecot
$> postconf -e smtpd_sasl_path=private/auth
$> postconf -e smtpd_sasl_auth_enable=yes
$> postconf -e smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
-``smtpd_sasl_auth_enable`` aktiviert die SMTP Authentifizierung.
-``smtpd_recipient_restrictions`` definiert Regeln, die überprüft werden
-sobald der Sender das ``RCPT TO:`` Kommando im SMTP Dialog sendet.
-In diesem Fall ist relaying erlaubt, wenn:
+``smtpd_sasl_auth_enable`` aktiviert die SMTP-Authentifizierung.
+``smtpd_recipient_restrictions`` definiert Regeln, die überprüft werden sobald
+der Sender das ``RCPT TO:`` Kommando im SMTP Dialog sendet. In diesem Fall ist
+Relaying erlaubt, wenn:
- ``permit_mynetworks``: sich der User im lokalen Netzwerk befindet (``mynetworks``) oder
- ``permit_sasl_authenticated``: wenn sich der User authentifiziert oder
@@ -1631,11 +1604,11 @@ In diesem Fall ist relaying erlaubt, wen
``virtual_alias_domains`` oder ``virtual_mailbox_domains``).
Es gibt zustätzliche Beschränkungen (``smtpd_client_restrictions``,
-``smtpd_helo_restrictions``, ``smtpd_sender_restrictions``). Solange Sie
-diese nicht einrichten wollen ist es OK sich auf ``smtpd_recipient_restrictions``
-zu beschränken.
+``smtpd_helo_restrictions``, ``smtpd_sender_restrictions``). Solange Sie diese
+nicht einrichten wollen ist es ausreichend, sich auf
+``smtpd_recipient_restrictions`` zu beschränken.
-Versuchen Sie sich während einer SMTP Sitzung zu authentifizieren:
+Versuchen Sie, sich während einer SMTP Sitzung zu authentifizieren::
$> telnet localhost smtp
@@ -1678,23 +1651,23 @@ Auf Wiedersehen::
221 2.0.0 Bye
-Die Authentifizierung funktioniert. Großartig.
+Die Authentifizierung funktioniert. Prima.
.. Note::
- Wenn Sie John's Passwort von 'summersun' auf ein anderes geändert haben,
+ Wenn Sie Johns Passwort von 'summersun' auf ein anderes geändert haben,
müssen Sie dies selbst mit Base64 verschlüsseln. Benutzen Sie::
perl -MMIME::Base64 -e \
'print encode_base64("john\@example.com\0john\@example.com\0password")';
-Jetzt können Sie versuchen die erste Mail mit Authentifizierung zu versenden. Damit
-auch Ihr locales Netzwerk temporär als nicht vertrauenswürdig eingestuft wird,
+Jetzt können Sie versuchen, die erste Mail mit Authentifizierung zu versenden. Damit
+auch Ihr lokales Netzwerk temporär als nicht vertrauenswürdig eingestuft wird,
können Sie folgende Einstellungen vornehmen::
$> postconf -e mynetworks=
-Starten Sie Ihr Mail Programm und beobachten Sie Ihre ``mail.log`` während
+Starten Sie Ihr Mail-Programm und beobachten Sie Ihre ``mail.log`` während
Sie eine E-Mail an eine Domäne im Internet schicken. Ich schlage
vor Sie schicken an ``devnull at workaround.org``, die Ihre Mails einfach verwirft.
Wenn alles klappt, sollte Ihre Logdatei ähnliches zeigen::
@@ -1709,32 +1682,33 @@ Wenn alles klappt, sollte Ihre Logdatei
(250 OK id=1HsPC3-0008UJ-O5)
postfix/qmgr[3963]: 2EAE8379CB: removed
-Falls es Probleme gibt, würde Sie so aussehen::
+Falls es Probleme gibt, würde es so aussehen::
postfix/smtpd[4032]: connect from ...[10.20.30.40]
postfix/smtpd[4032]: warning: ...[10.20.30.40]: SASL PLAIN authentication failed:
postfix/smtpd[4032]: lost connection after AUTH from ...[10.20.30.40]
postfix/smtpd[4032]: disconnect from ...[10.20.30.40]
-Ihr Mailprogramm hat Sie vielleicht bereits über das nicht-vertrauenswürdige
-SSL Zertifikat hingewiesen. Das Standardzertifikat, dass mit Postfix kommt
-wurde von der nicht existierenden "Office for Complication of Otherwise
-Simple Affairs" erstellt. Dies ist egal für die Tests, jedoch wird wie bereits
-bei Dovecot empfohlen, dass Sie ein korrektes SSL Zertifikat erstellen,
-welches mindestens den richtigen Hostnamen beinhaltet.
-Das Standardzertifikat ist unter ``/etc/ssl/certs/ssl-cert-snakeoil.pem`` und
-der Standardschlüssel unter ``/etc/ssl/private/ssl-cert-snakeoil.key`` gespeichert.
-Erstellen Sie ein neues Zertifikat/Schlüssel und speichern Sie es als ``postfix.pem``::
+Ihr Mail-Programm hat Sie vielleicht bereits auf das nicht-vertrauenswürdige
+SSL-Zertifikat hingewiesen. Das Standardzertifikat, dass mit Postfix kommt
+wurde von der nicht existierenden "Office for Complication of Otherwise Simple
+Affairs" erstellt. Dies ist egal für die Tests, jedoch wird wie bereits bei
+Dovecot empfohlen, dass Sie ein korrektes SSL Zertifikat erstellen, welches
+zumindest den richtigen Hostnamen beinhaltet. Das Standardzertifikat ist unter
+``/etc/ssl/certs/ssl-cert-snakeoil.pem`` und der Standardschlüssel unter
+``/etc/ssl/private/ssl-cert-snakeoil.key`` gespeichert. Erstellen Sie ein neues
+Zertifikat/Schlüssel und speichern Sie es als ``postfix.pem``::
$> openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/postfix.pem \
-keyout /etc/ssl/private/postfix.pem
-Die gleiche Vorgehensweise wie die, der Erstellung des Zertifikates für Dovecot oben.
-Denken Sie nur daran den "Common Name" auf den fully-qualified Hostnamen zu setzen.
-Natürlich können Sie auch das gleiche Zertifikat verwenden, das Sie für Dovecot
-erstellt haben, solange der Servername gleichbleibt. In diesem Fall benutzen Sie
-diee Dateien ``/etc/ssl/certs/dovecot.pem`` und ``/etc/ssl/private/dovecot.pem``
-in Verbindung mit dem Postconf Kommando weiter unten.
+Die gleiche Vorgehensweise wie die, der Erstellung des Zertifikates für Dovecot
+oben. Denken Sie nur daran den "Common Name" auf den voll-qualifizierten
+Hostnamen zu setzen. Natürlich können Sie auch das gleiche Zertifikat
+verwenden, das Sie für Dovecot erstellt haben, solange der Servername
+gleichbleibt. In diesem Fall benutzen Sie diee Dateien
+``/etc/ssl/certs/dovecot.pem`` und ``/etc/ssl/private/dovecot.pem`` in
+Verbindung mit dem Postconf Kommando weiter unten.
Vergessen Sie nicht die Rechte des privaten Schlüssels zu ändern, damit diesen
niemand unautorisiert lesen kann::
@@ -1742,13 +1716,13 @@ niemand unautorisiert lesen kann::
$> chmod o= /etc/ssl/private/postfix.pem
Nun müssen wir Postfix mitteilen wo es Ihre Zertifikat und den privaten Schlüssel
-finden kann;;
+finden kann::
$> postconf -e smtpd_tls_cert_file=/etc/ssl/certs/postfix.pem
$> postconf -e smtpd_tls_key_file=/etc/ssl/private/postfix.pem
-Nun sollten Sie in Ihrem Mail Client keine weiteren Warnungen über das Zertifikat
-erhalten.
+Sie sollten jetzt in Ihrem Mail-Programm keine weiteren Warnungen über das
+Zertifikat erhalten.
Standardgemäß erlaubt Postfix, dass Anmeldungen am SMTP Dienst als Klartext
gesendet werden dürfen. Sie sollten das besser ändern und nur verschlüsselte
@@ -1757,68 +1731,66 @@ gesendet werden dürfen. Sie sollten das
$> postconf -e smtpd_use_tls=yes
$> postconf -e smtpd_tls_auth_only=yes
-Die Parameter fordern eine Verschlüsselung für die SASL Authentifizierung
-von den Benutzer an, damit Passwörter im Format PLAIN oder LOGIN nicht
-im Klartext übertragen werden.
-Wenn sich der Client anfangs mit dem Server verbindet, wird das AUTH Kommando
-vom Server nicht angeboten. Wenn der Client das STARTTLS Kommanto sendet und
-die TLS Verbindung erfolgreich abschließt, sendet der Client das Helo Kommando
-ein zweites mal. Nun bietet der Server das AUTH Kommando an.
-Dies erfordert keine Verschlüsselung von Clients, die sich nicht authentifizieren
-müssen (z.B. Server die sich verbinden um E-Mails )
+Die Parameter fordern eine Verschlüsselung für die SASL Authentifizierung von
+den Benutzer an, damit Passwörter im Format PLAIN oder LOGIN nicht im Klartext
+übertragen werden. Wenn sich der Client anfangs mit dem Server verbindet, wird
+das AUTH-Kommando vom Server nicht angeboten. Wenn der Client das STARTTLS
+Kommanto sendet und die TLS Verbindung erfolgreich abschließt, sendet der
+Client das HELO-Kommando ein zweites mal. Nun bietet der Server das
+AUTH-Kommando an.
-This won't require any kind of encryption from clients who don't need
-to authenticate (i.e. servers that connect to send mail to the domains our
-server is a final destination for, as opposed to our end users attempting to
-relay mail through it to external domains).
+Dies erfordert keine Verschlüsselung von anderen Systemen, die sich nicht
+anmelden müssen (z.B. andere Mail-Server die Emails an Ihre Domains senden
+möchten - im Gegensatz zu Anwendern, die über Ihren Email-Server relayen möchten).
-Wenn sie unverschlüsselte STMP Verbindungen wirklich verbieten wollen
+Wenn sie unverschlüsselte STMP-Verbindungen wirklich verbieten wollen,
(ich tue dies auf Port 587 und 465), können Sie entweder
"``smtpd_tls_security_level = encrypt``" (für STARTTLS, auf Port 587)
oder "``smtpd_tls_wrappermode = yes``"
(für SSL Verschlüsselung der eigentlichen Verbindung, auf port 465).
-Schritt 10: AMaViS: Filtern von Spam und Viren
-==============================================
+Schritt 10: AMaViS: Herausfiltern von Spam und Viren
+======================================================
Zwei lästige Punkte gibt es bei der Benutzung von E-Mails: Spam und Viren.
-Glücklicherweise können Sie beide durch Benutzung von AMaViS (Ein Mail Virus
-Scanner) bekämpfen. AMaViS ist eine Schnittstelle zwischen Postfix, Spamassassin
-(bekannt für sein Baesianbasiert Spamfilter Methode ) und einem optionalen
+Glücklicherweise können Sie beide durch Benutzung von AMaViS (A Mail Virus
+Scanner) erschlagen. AMaViS ist eine Schnittstelle zwischen Postfix, Spamassassin
+(bekannt für sein Bayes-basierte Spamerkennung) und einem optionalen
Virenscanner. AMaViS regelt das Filtern von Spam, hat jedoch keinen eingebauten
Virenscanner. Für diesem Zweck sollten Sie ClamAV installieren.
Dies ist ein kostenloser Virenscanner der häufig aktualisiert wird.
In Debian Etch hat sich die Konfiguration von AMaviS von der Datei
``/etc/amavis/amavisd.conf`` auf verschiedene Dateien im Order ``/etc/amavis/conf.d``
-geändert. Glücklicherweise ist der Viren Scanner "ClamAV" standardmäßig richtig
+geändert. Glücklicherweise ist der Virenscanner "ClamAV" standardmäßig richtig
konfiguriert. Somit müssen Sie das nicht erledigen. Wie auch immer: Ich empfehle
Ihnen sich die Datei ``/etc/amavis/conf.d/20-debian_defaults`` näher anzusehen:
-- ``$sa_spam_subject_tag``: Wenn diese Zeile einkommentiert bleibt wird jeder
+- ``$sa_spam_subject_tag``: Wenn diese Zeile aktiviert bleibt, wird jeder
Mail im Betreff eine Zeichenkette eingefügt, sobald AMaViS die Mail als Spam
- definiert. Wenn Sie den Betreff nicht verändern wollen, sollten Sie diese
+ erkennt. Wenn Sie den Betreff nicht verändern wollen, sollten Sie diese
Zeile auskommentieren. Benutzer können deswegen Spam trotzdem ausfiltern, indem
- Sie den ``Y-spam-Status`` Header überprüfen.
+ Sie den ``X-Spam-Status`` Header überprüfen.
- ``$sa_tag_level_deflt``: Spam mit einer höheren oder gleichen Anzahl der hier
- bestimmten Punkten bekommen einen Spam Header hinzugefügt. Das Debuggen fällt leichter
- wenn jede Mail einen entsprechenden Header bekommt. Deshalb sollten Sie die Punkte
- möglichst klein vergeben (z.B. "undef" - der kleinstmögliche Wert - damit Header
- immer hinzugefügt werden)
+ bestimmten Punkten bekommen einen Spam-Header hinzugefügt. Die Fehlersuche ist
+ leichter, wenn jede Mail einen entsprechenden Header bekommt. Deshalb sollten
+ Sie die Punkte möglichst klein vergeben (z.B. "undef" - der kleinstmögliche
+ Wert - damit Header immer hinzugefügt werden)
- ``$sa_tag2_level_deflt``: E-Mails mit einer größeren oder gleichen Anzahl von
hier definierten Spampunkten werden als Spam markiert. Der vorgegebene Wert
ist angemessen. Stellen Sie den Wert kleiner ein, wenn zu viel Spam durchkommt.
- ERhöhen Sie Ihn, wenn zu viele Mails unkorrekterweise als Spam eingestuft werden.
+ Erhöhen Sie Ihn, wenn zu viele Mails unkorrekterweise als Spam eingestuft werden.
- ``$sa_kill_level_deflt``: sollte den gleichen Wert wie ``$sa_tag2_level_deflt`` haben
- ``$final_spam_destiny``: Der Wert ``D_BOUNCE`` ist hier völlig blödsinning.
Die normale Vorgehensweise ist E-Mail als Spam zu *markieren*.
- Wenn Sie die Spammails bouncen würden, würden Sie wahrscheinlich eine unschuldige
- Person treffen, da Spam Mails meist nie die richtige Absenderadresse aufweisen.
- Lassen Sie die Benutzer entscheiden was sie mit Spammails machen wollen.
- Es wird stark empfohlen den Wert auf ``D_PASS`` zu setzen.
+ Wenn Sie die Spammails zurückschicken würden, würden Sie wahrscheinlich eine
+ unschuldige Person treffen, da Spam-Mails selten die richtige Absenderadresse
+ verwenden. Lassen Sie die Benutzer entscheiden was sie mit Spammails machen
+ wollen. Es wird stark empfohlen den Wert auf ``D_PASS`` zu setzen.
- ``$banned_filename_re``: gehen Sie mit dieser Zeile sehr vorsichtig um.
- Sie beinhaltet die Dateiformate von Anhängen die zurückgewiesen werden sollen.
+ Sie beinhaltet die Dateiformate von Datei-Anhängen die zurückgewiesen werden
+ sollen.
In der Datei ``/etc/amavis/conf.d/15-content_filter_mode`` sollten Sie die '#'
von den Zeilen ``@bypass_...`` entfernen, damit das Filtern von Spam und Viren
@@ -1830,11 +1802,12 @@ nie abläuft. Dieses Feature würde sonst
bayes_auto_expire 0
Wenn Sie die Konfigurationsdateien verändert haben, müssen Sie
-AMaViS neustarten::
+AMaViS neu starten::
$> /etc/init.d/amavis restart
-Stellen Sie sicher, dass AMaViS am TCP Port 10024 lauscht::
+Stellen Sie sicher, dass AMaViS am TCP-Port 10024 auf eingehende Verbindungen
+wartet::
$> netstat -nap | grep 10024
@@ -1842,17 +1815,17 @@ Sie sollten dieses Ergebnis erhalten::
tcp 0 0 127.0.0.1:10024 0.0.0.0:* LISTEN 12345/amavisd
-Wenn Sie obige Ausgabe erhalten, läuft AMaViS und wartet auf eingehende
-SMTP Sitzungen. Andernfalls überpr+fen Sie Ihre ``/var/log/mail.log`` -
+Wenn Sie diese Ausgabe erhalten, läuft AMaViS und wartet auf eingehende
+SMTP-Sitzungen. Andernfalls überprüfen Sie Ihre ``/var/log/mail.log`` -
vielleicht haben Sie ja einen Fehler in der Konfigurationsdatei gemacht.
-Ein paar Worte wie AMaViS in Postfix integriert wird. Wenn Ihnen jemand
-über das Internet eine E-Mail schickt, wird diese über Postfix (dem *smtpd*
-Dämon) zurst auf TCP Port 25 (SMTP) emfpangen. Wenn Postfix die E-Mail
-akzeptiert, wird diese zu AMaViS auf Port 10024 (SMTP) weitergeleitet.
-Wenn AMaViS ebenfalls mit der Mail und deren Inhalt einverstanden ist,
-wird diese wieder an Postifx auf den TCP Port 10025 (SMTP) weitergeleitet.
-Postfix liefert die Mail letztendlich an den entsprechenden Empfänger aus.
+Ein paar Worte dazu, wie AMaViS in Postfix integriert wird. Wenn Ihnen jemand
+über das Internet eine E-Mail schickt, wird diese über Postfix (dem
+*smtpd*-Dämon) zunächst auf TCP-Port 25 (SMTP) emfpangen. Wenn Postfix die
+E-Mail akzeptiert, wird diese zu AMaViS auf Port 10024 (SMTP) weitergeleitet.
+Wenn AMaViS ebenfalls mit der Mail und deren Inhalt einverstanden ist, wird
+diese wieder an Postifx auf den TCP Port 10025 (SMTP) weitergeleitet. Postfix
+liefert die Mail letztendlich an den entsprechenden Empfänger aus.
Damit postfix die Mail an AMaViS weiterleitet, müssen Sie die
``content_filter`` Einstellungen verändern::
@@ -1861,9 +1834,8 @@ Damit postfix die Mail an AMaViS weiterl
$> postconf -e receive_override_options=no_address_mappings
Zuerst müssen wir jedoch den ``smtp-amavis`` Dienst in der
-``/etc/postfix/master.cf`` definieren.
-Ausserdem müssen Sie Postfix beibringen auf TCP Port
-10025 von AMaViS zurückgeschickte Mails zu warten.
+``/etc/postfix/master.cf`` definieren. Außerdem müssen Sie Postfix beibringen
+auf TCP-Port 10025 von AMaViS zurückgeschickte Mails zu warten::
smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
@@ -1897,40 +1869,37 @@ Starten Sie postfix neu::
$> postfix reload
Zwei Einstellungen bedürfen näherer Erklärung. Zuerst werden die
-``receive_override_options`` auf ``no_address_mappings`` gesetzt.
-Dies deaktiviert alles Adressmappings. Ihre virtuellen Aliase z.B. werden
-zuerst nicht beachtet. Die Mail wird dann zu ``smtp-amavis`` und letztendlich
-an den Dienst ``127.0.0.1:10025`` gesendet, der jede Menge Optionen
-setzt. Eine dieser Optionen ist die ``receive_override_options``.
-Diese Mail wird jedoch die Einstellung ``no_address_mappings`` ausgelassen.
-Hier überprüft Postfix nun Ihre virtuellen Aliase. Klingt kompliziert?
-Es muss jedoch so gemacht werden, da Ihre Aliase ansonsten zweimal ausgewertet
-werden würden, was zu doppelten Mails führen würde.
-Die anderen Optionen sind dazu da, Überprüfungen die Postfix bereits beim
-ersten Mal gemacht hat, abzuschalten.
+``receive_override_options`` auf ``no_address_mappings`` gesetzt. Dies
+deaktiviert alle Weiterleitungen. Ihre virtuellen Aliase z.B. werden zuerst
+nicht beachtet. Die Mail wird dann zu ``smtp-amavis`` und letztendlich an den
+Dienst ``127.0.0.1:10025`` gesendet, der jede Menge Optionen setzt. Eine dieser
+Optionen ist die ``receive_override_options``. Diese Mail wird jedoch die
+Einstellung ``no_address_mappings`` ausgelassen. Hier überprüft Postfix nun
+Ihre virtuellen Aliase. Klingt kompliziert? Es muss jedoch so gemacht werden,
+da Ihre Aliase ansonsten zweimal ausgewertet werden würden, was zu doppelten
+Mails führen würde. Die anderen Optionen sind dazu da, Überprüfungen die
+Postfix bereits beim ersten Mal gemacht hat, abzuschalten.
.. Note::
Das Setzen von ``receive_override_options=no_address_mappings`` bewirkt,
dass Postfix die Aliase nicht mehr beachtet.
- Wenn Sie also den Content Filter AMaViS deaktivieren wollen, müssen
- Sie diesen Wert nicht setzen!
+ Wenn Sie also den Content-Filter AMaViS deaktivieren wollen, darf diese
+ Einstellung nicht gesetzt sein.
-
-Ein weiter Kleinigkeit: Der Benutzer "clamav" muss ein Mitglied der System
-Gruppe "amavis" sein, damit die beiden Dienste untereinander kommunizieren
+Ein weiterer Knackpunkt: Der Benutzer "clamav" muss ein Mitglied der System-Gruppe
+"amavis" sein, damit die beiden Dienste untereinander kommunizieren
können::
$> adduser clamav amavis
$> /etc/init.d/clamav-daemon restart
-Eine weitere Angelegenheit die beachtet werden muss: AMaViS verucht
-herauszufinden ob eine Mail eingehend (vom Internet an Ihre Domäne
-gesendet) oder ausgehend (von Ihrem System ins Internet gesendet) ist,
-indem es die Einstellungen ``@acl_local_domains`` überprüft.
-Sie müssen AMaViS mitteilen ob eine bestimmte Domäne einer Ihrer
-Zieldomänen ist. Editieren Sie die Datei ``/etc/amavis/conf.d/50-user``
-und fügen Sie folgende Zeilen vor "1;" ein::
+Und noch etwas: AMaViS verucht herauszufinden, ob eine Email eingehend (vom
+Internet an Ihre Domäne gesendet) oder ausgehend (von Ihrem System ins Internet
+gesendet) ist, indem es die Einstellungen ``@acl_local_domains`` überprüft. Sie
+müssen AMaViS mitteilen ob eine bestimmte Domäne einer Ihrer Zieldomänen ist.
+Editieren Sie die Datei ``/etc/amavis/conf.d/50-user`` und fügen Sie folgende
+Zeilen vor "1;" ein::
@lookup_sql_dsn = (
['DBI:mysql:database=mailserver;host=127.0.0.1;port=3306',
@@ -1939,11 +1908,11 @@ und fügen Sie folgende Zeilen vor "1;" e
$sql_select_policy = 'SELECT name FROM virtual_domains WHERE CONCAT("@",name) IN (%k)';
-Der Eintrag definiert, wie AMaViS Ihre Datenbank abrufen soll. Der Eintrag
-``$sql_select_policy`` definiert den SQL Query der ausgeführt wird, wenn AMaViS
-überprüft ob die überprüfte Mail an eine Ihre virtuellen Domänen adressiert ist.
-Die Variable ``%k`` stellt eine Liste von Zeichen dar, die AMaViS erwartet zu finden.
-Der Query würde also so aussehen::
+Der ``@lookup_sql_dsn``-Eintrag definiert, wie AMaViS Ihre Datenbank abrufen
+soll. Der Eintrag ``$sql_select_policy`` definiert den SQL Query der ausgeführt
+wird, wenn AMaViS überprüft ob die überprüfte Mail an eine Ihre virtuellen
+Domänen adressiert ist. Die Variable ``%k`` stellt eine Liste von Zeichen dar,
+die AMaViS erwartet zu finden. Die Abfrage würde also so aussehen::
SELECT name
FROM virtual_domains
@@ -1957,12 +1926,11 @@ Der Query würde also so aussehen::
'@.')
Dies sieht etwas verwirrend aus, aber letztendlich wird nach der Zeichenkette
-'@example.com' gesucht.
-Starten Sie AMaViS neu::
+'@example.com' gesucht. Starten Sie AMaViS neu::
$> /etc/init.d/amavis restart
-Versuchen Sie nun eine E-Mail an john at example.com zu senden. Wenn Sie sich die
+Versuchen Sie nun, eine E-Mail an john at example.com zu senden. Wenn Sie sich die
Header der Mail ansehen, sollten Sie folgende Zeilen finden, die durch AMaViS
hinzugefügt wurden::
@@ -1987,11 +1955,11 @@ Ein Beispiel von empfangenen Spam::
X-Spam-Flag: YES
Nun sollten alle eingehenden E-Mails auf Spam und Viren überprüft werden.
-Überprüfen Sie dies. Spamassassin hat eine Beispieldatei mit Beispiel Spam.
-Diese Datei beinhaltet *GTUBE* (Generic Test for Unsolicited Bulk Email),
-eine Signatur die dafür vorgesehen ist Spamfilter zu testen. Dies können
-Sie mit dem EICAR.COM Testvirus vergleichen, der zum Testen von Virenscannern
-benutzt wird. Senden Sie nun John eine Spammail::
+Überprüfen Sie dies. Spamassassin hat eine Beispieldatei mit Beispiel-Spam.
+Diese Datei beinhaltet *GTUBE* (Generic Test for Unsolicited Bulk Email), eine
+Signatur die dafür vorgesehen ist Spamfilter zu testen. Dies ist vergleichbar
+mit dem EICAR.COM-Testvirus, der zum Testen von Virenscannern benutzt wird.
+Senden Sie nun John eine Spammail::
$> sendmail john at example.com < /usr/share/doc/spamassassin/examples/sample-spam.txt
@@ -2001,7 +1969,7 @@ Ihre ``/var/log/mail.log`` enthält nun u
Die E-Mail wurde also als Spam erkannt und an John weitergeleitet. Sehr schön.
Passen Sie nun die Rechte der AMaViS Konfigurationsdateien an, damit niemand
-unauthorisiert Ihr Datenbank Passwort lesen kann::
+unautorisiert Ihr Datenbank-Passwort auslesen kann::
$> chmod o= /etc/amavis/conf.d/50-user
@@ -2009,32 +1977,31 @@ Schritt 11: Spam und Nicht-Spam lernen
Schritt 11: Spam und Nicht-Spam lernen
======================================
-Die Software SpamAssassin unterscheidet Spam Mails von normale Mails (ham).
+Die Software SpamAssassin unterscheidet Spam-Mails von Nicht-Spam-Mails (Ham).
Sie beinhaltet eine Vielzahl von Test, denen Mails unterzogen werden.
-SpamAssassin fragt sogar real-time Blacklists im Internet ab.
-Zusätzlich zu den festen Tests gibt es den sogenannten *Bayesian* Filter.
-Dieser benutzt zusätzliche Wahrscheinlichkeiten um die Wörter der Mail
-mathematisch zu analysieren. So kann sich der Filter ableiten ob die Mail
-Spam ist oder nicht. Je mehr Spam und Ham E-Mails Sie dem Filter zeigen,
-desto besser wird dessen Erkennung. Sie müssen mindestens 200 ham
-und 200 Spam Mails für das Training benutzen, damit der Bayes Filter aktiv wird.
-Die hier beschriebene Konfiguration wird nicht die Ham und SPam Mails pro
-Benutzer erkennen, aber eine globale Bayes Datenbank aufrechterhalten.
+SpamAssassin fragt sogar Echtzeit-Sperrlisten (real-time blacklists / RBL) im
+Internet ab. Zusätzlich zu den statischen Tests gibt es den sogenannten
+*Bayesian* Filter. Dieser benutzt bedingte Wahrscheinlichkeiten um die Wörter
+der Mail mathematisch zu analysieren. So kann sich der Filter ableiten ob die
+Mail Spam ist oder nicht. Je mehr Spam und Ham E-Mails Sie dem Filter zeigen,
+desto besser wird dessen Erkennung. Sie müssen mindestens 200 Spam- und und 200
+Nicht-Spam-Mails für das Training benutzen, damit der Bayes Filter aktiv wird.
+Die hier beschriebene Konfiguration wird nicht die Spam-Mails pro Benutzer
+lernen, aber eine globale Bayes-Datenbank erstellen.
-Da der Benutzer 'amavis' der Eigentümer der Datei ``/var/lib/amavis/.spamassassin``
-(zuständig für das Speichern der Bayes Datenbank) ist, jedoch der Benutzer
-'vmail' benutzt wird um die Postfächer der Benutzer zu verwalten, haben wir hier
-ein kleines Problem mit den Dateirechten.
+Da der Benutzer 'amavis' der Eigentümer der Datei
+``/var/lib/amavis/.spamassassin`` (zuständig für das Speichern der Bayes
+Datenbank) ist, jedoch der Benutzer 'vmail' benutzt wird um die Postfächer der
+Benutzer zu verwalten, haben wir hier ein kleines Problem mit den Dateirechten.
Leider können wir diess Problem nicht lösen indem wir den Benutzer 'amavis' zu
der Gruppe 'vmail' hinzufügen. Die Rechte von ``/home/vmail`` erlauben es nicht
-einer Gruppe Schreibzugriff zu erteilen.
-Aus diesem Grund muss das erlernen von Spam und Ham durch den Benutzer 'root'
-erfolgen, was ein potentielles Sicherheitsrisiko darstellt.
+einer Gruppe Schreibzugriff zu erteilen. Aus diesem Grund muss das erlernen von
+Spam und Ham durch den Benutzer 'root' erfolgen, was ein potentielles
+Sicherheitsrisiko darstellt.
-Ein Script, dass SpamAssassin Ham und Spam beibringt, kann einmal am Tag
-vom Benutzer 'root' ausgeführt werden.
-Ein Beispiel des Scriptes (welches Sie z.B. über einen Ctonjob laufen lassen
-können)::
+Ein Skript, dass SpamAssassin Ham und Spam beibringt, kann einmal am Tag vom
+Benutzer 'root' ausgeführt werden. Ein Beispiel des Scriptes (welches Sie z.B.
+über einen Cronjob laufen lassen können)::
#!/bin/bash -e
@@ -2060,125 +2027,100 @@ können)::
chown -R amavis:amavis $SADIR
-You can see what AMaViS has recorded into its database by running::
+Sie können nachsehen, was AMaViS als Ham und Spam gelernt hat::
$> sa-learn --dbpath /var/lib/amavis/.spamassassin/bayes --dump magic
0.000 0 977 0 non-token data: nspam
0.000 0 27866 0 non-token data: nham
[...]
-Der Wert *nsmap* ist die Anzal der SPam E-Mail die SpamAssassin bereits
-gesehen hat. *Nham* ist die Anzahl der Ham Mails die bereits gelernt wurden.
+Der Wert *nspam* ist die Anzal der Spam-Emails, die SpamAssassin bereits
+gesehen hat. *nham* ist die Anzahl der Ham-Mails die bereits gelernt wurden.
-Hinweis: Sie trainieren hiermit die *globale* Bayesian Datenbank. Dies
-betrifft alle E-Mails die auf Ihr System treffen. Stellen Sie sicher,
-dass Sie Spam Mails von unzuverlässigen oder unvertrauten Benutzer
-trainieren. Dies kann Ihre Spamerkennungsrate drastisch verschlechtern,
-indem die Benutzer Nachrichten in Ihren 'Spam' Ordner verschieben, die
-keine wirklichen Spam Mails sind.
-Nur weil ein Benutzer keine E-Mails seiner EX-Freundin erhalten will,
-sollte er diese nicht als Spam für alle markieren.
-Seien Sie also vorsichtig, welche mails Sie für das Training der globalen
-Bayes Datenbank verwenden. SpamAssassin sollte auch nicht aus Mails lernen,
-die Ihnen Benutzer weitergeleitet haben. Die Header Informationen würden
-dadurch verloren gehen. Diese enthalten jedoch viele Informationen, die
-es SpamAssassin ermöglichen Spam zu erkennen.
-Stellen Sie sicher, dass die Benutzer das 'bounce' Feature verwenden, oder
-die Mail als Anhang senden. Die beste Wahl ist, die Mails direkt aus den
-Postfächern der Benutzer zu holen.
+Hinweis: Sie trainieren hiermit die *globale* Bayesian-Datenbank. Dies betrifft
+alle E-Mails die auf Ihr System treffen. Stellen Sie sicher, dass Sie keine
+Spam-Mails von unzuverlässigen Benutzern trainieren. Dies kann Ihre
+Spamerkennungsrate drastisch verschlechtern, wenn die Benutzer Nachrichten in
+Ihren 'Spam' Ordner verschieben, die keine wirklichen Spam-Mails sind. Nur weil
+ein Benutzer keine E-Mails seiner Ex-Freundin erhalten will, sollte er diese
+nicht als Spam für alle markieren. Seien Sie also vorsichtig, welche Mails Sie
+für das Training der globalen Bayes Datenbank verwenden. SpamAssassin sollte
+auch nicht aus Mails lernen, die Ihnen Benutzer weitergeleitet haben. Die
+Header Informationen würden dadurch verloren gehen. Diese enthalten jedoch
+viele Informationen, die es SpamAssassin ermöglichen Spam zu erkennen. Stellen
+Sie sicher, dass die Benutzer die 'bounce'-Funktion des Email-Programms
+verwenden, oder die Mail als Anhang senden. Die beste Wahl ist, die Mails
+direkt aus den Postfächern der Benutzer zu holen.
-Schritt 12: Befüllen der Datenbank / Konsole und Schnittstelle
+Schritt 12: Befüllen der Datenbank mit Email-Nutzerkonten
==============================================================
-Nun da Ihr Setup mit den Testeinträgen funktioniert ist es an der Zeit
-die Datenbank mit richtigen Daten zu füllen. Wenn Sie einer früheren
-Anleitung für *Sarge* gefolgt sind, können Sie einfach das
-`Konvertierungsscript <dbconvert.py>`_ verwenden::
+Nun da Ihr Server mit den Testeinträgen funktioniert, ist es an der Zeit,
+die Datenbank mit richtigen Daten zu füllen.
+
+Konvertieren der Datenbank vom Sarge-Tutorial
+-----------------------------------------------
+
+Wenn Sie einer früheren Anleitung für *Sarge* gefolgt sind, können Sie einfach
+das `Konvertierungsscript <dbconvert.py>`_ verwenden::
$> wget http://workaround.org/articles/ispmail-etch/dbconvert.py
$> chmod +x dbconvert.py
- ... edit the db_sarge and db_etch variables in the script ...
+ ... Editieren Sie die db_sarge- und db_etch-Variablen im Skript ...
$> ./dbconvert.py
-Dieses Script sollte die Struktur Ihrer Daten der Sarge-basierten Datenbank
+Dieses Skript sollte die Struktur Ihrer Daten der Sarge-basierten Datenbank
in das Format der Etch-Datenbank konvertieren.
+Ronny Tiebels PHP-Administrations-Frontend
+---------------------------------------------------
+
Natürlich brauchen Sie eine geeignete Schnittstelle um die Daten in der
-Datenbank zu verwalten. Viele Leser haben bereits angeboten ein Webinterace
-zu schreiben um die Verwaltung von Domänen, Konten und Aliase zu vereinfachen.
-Jedoch hat nur Robert Klikics ein `PHP Script <http://ronnytiebel.de/code/mail_control.phps>`_
-veröffentlicht, das von seinem Auszubildenden Ronny Tiebel verfasst wurde.
+Datenbank zu verwalten. Viele Leser haben bereits angeboten ein Webinterace zu
+schreiben um die Verwaltung von Domänen, Konten und Aliase zu vereinfachen.
+Robert Klikics hat dazu ein `PHP Script
+<http://ronnytiebel.de/code/mail_control.phps>`_ veröffentlicht, das von seinem
+Auszubildenden Ronny Tiebel programmiert wurde.
-Wenn Sie es bevorzugen auf der Konsole zu arbeiten können Sie folgendes,
-von mir geschriebenes, "ispadmin.py" Python Programm verwenden. Diese
-Script hilft Ihnen bei der Verwaltung von Domänen, Aliase und Benutzern.
-Um es benutzen zu können müssen Sie die Pakte ``python-sqlalchemy`` und ``python-mysqldb``
-Installiert haben.
-Laden Sie sich das Programm `ispadmin.py <ispadmin.py>`_ herunter und ändern
-Sie die Zeile *db_uri* am Anfang der Datei auf Ihre Werte.
-Das Programm kann folgende Kommanods:
+Peter Gutweins PHP administration frontend
+-------------------------------------------
-- d / domains: Zeigt eine Liste aller Domänen. Wenn ein zusätzlicher Parameter
- übergeben wird, werden nur die Domänen aufgelistet die mit der angegeben
- Zeichenkette beginnen. Wenn eine Nummer oder Name einer Domäne eingegeben
- wird, wechselt das Programm zu dieser Domäne. Bevor Sie Benutzer oder
- Aliase editieren können, müssen Sie immer eine Domäne ausgewählt haben.
-- nd / newdomain: Erstellt eine neue Domäne. Parameter: Name der Domäne
-- dd / deldomain: Löscht eine Domäne. Parameter: Name oder Nummer der Domäne
-- a / aliases: Zeigt einer Liste der Aliase für die ausgewählte Domäne
-- na / newalias: Erstellt einen neuen Alias. Benutzen Sie das "Namen des Benuzters"
- als Parameter. Wenn Sie ein Catchall Konto einrichten wollen, benutzen
- Sie "* Ziel".
- Sie können mehrere Aliase für einen Benutzer anlegen. Legen Sie diese wie folgt
- an: "Benutzer Ziel1" und "benutzer Ziel2".
-- da / delalias: Löschen eines Alias unter verwendung seiner Nummer, Benutzernamen
- oder "Benutzernamen Ziel".
-- u / users: Zeit einer Liste der Benutzer der ausgewählten Domäne.
-- nu / newuser: erstellt einen neuen Benutzer auf der ausgewählten Domäne.
- Parameter: "Benutzername Passwort". Das Passwort wird automatisch
- als MD5-Hash verschlüsselt und gespeichert.
-- du / deluser: Löscht einen Benutzer der ausgewählten Domäne. Parameter:
- Nummer des Benutzers oder Benutzername
-
-Vorschläge oder Feedback zu diesem Tool sind gerne willkommen. Beachten Sie
-bitte jedoch, dass es nicht ein komplettes Web Interface ersetzt.
-Es gibt keine verschiedenen Benutzerrechte und Benutzer können Ihr Passwort
-immer noch nicht ändern. Wenn Sie Interesse haben bei der Entwicklung eines
-passenden Web Interfaces mitzuhelfen, teilen Sie uns dies bitte auf der
-Chitchat Mailling Liste mit, damit die Vorgehensweise koordiniert werden kann.
+Ein weiteres PHP-basiertes Web-Frontend zum Administrieren von Benutzerkonten
+wurde von Peter Gutwein erstellt und kann unter
+http://www.grs-service.ch/pub/grs_mminstallation.html heruntergeladen werden.
Zusätzliche Funktionen
======================
-Anbieten einer Webmail Schnittstelle
+Anbieten einer Webmail-Schnittstelle
------------------------------------
-Die Installation hier ist optional, jedoch bieten die meisten E-Mail Anbieter
+Die Installation hier ist optional, jedoch bieten die meisten E-Mail-Provider
einen Weg an, die Mails im Browser zu lesen. Glücklicherweise ist dies recht
einfach umzusetzen. Das benötigte Paket nennt sich "squirrelmail" - ein
-webbasiertes E-Mail System, das IMAP Server (wie den Dovecot IMAP Server,
-den wir hier benutzen) abfragen kann.
-Um das Programm lauffähig zu machen, müssen Sie zuerst die Konfiguration
-von Squirrelmail in der Apache Konfiguration bekannt machen::
+webbasiertes Email-System, das IMAP-Server (wie den Dovecot IMAP Server, den
+wir hier benutzen) abfragen kann. Um das Programm lauffähig zu machen, müssen
+Sie zuerst die Konfiguration von Squirrelmail in der Apache Konfiguration
+bekannt machen::
$> ln -s /etc/squirrelmail/apache.conf /etc/apache2/conf.d/squirrelmail.conf
$> apache2ctl restart
-Sie müssen nohc mindestens einen Parameter in der Konfiguratin ändern.
+Sie müssen noch mindestens einen Parameter in der Konfiguration ändern.
Führen Sie dazu das Konfigurationsprogramm aus::
$> squirrelmail-configure
-wählen Sie Option 3 (Folder Defaults) und setzen Sie Option 3 (Default
+Wählen Sie Option 3 (Folder Defaults) und setzen Sie Option 3 (Default
Folder Prefix) auf 'none'. Sie können auch die anderen Menüs durchgehen
-und die Parameter nach Ihren Wünschen anpassen (z.B. Firmen Name, etc.)
+und die Parameter nach Ihren Wünschen anpassen (z.B. Firmenname, etc.)
Rufen Sie mit Ihrem Browser folgenden Link auf um das Webinterface zu
benutzen: http://localhost/squirrelmail (localhost ist die IP Adresse des
Servers). Loggen Sie sich nun als 'john at example.com' mit dem Passwort
'summersun' ein und schon sollten Sie in der Lage sein John's E-Mails
-zu lesen. Einfach könnte es wirklich nicht sein.
+zu lesen. Einfacher könnte es wirklich nicht sein.
Wenn Sie mit der Adresse http://mein.server/squirrelmail nicht glücklich
sind und lieber eine Adresse wie http://my.server haben würden, lesen
@@ -2186,23 +2128,23 @@ eine einfache URL) in der Datei ``/etc/s
eine einfache URL) in der Datei ``/etc/squirrelmail/apache.conf``.
-Sieve: Filtern von Spam
+Sieve: Herausfiltern von Spam
----------------------------------------
-Sie besitzen bereits einen voll funktionsfä#higen Mail Server, der sogar
-Spam markiert. Jedoch haben wir die Arbeit Spam Mails auszusortieren unseren
+Sie haben jetzt bereits einen voll funktionsfähigen Email-Server, der sogar
+Spam markiert. Jedoch haben wir die Arbeit, Spam-Mails auszusortieren, unseren
Benutzern überlassen. Das können wir schöner lösen, indem wir serverseitige
Filter anlegen. Das Ziel ist, den Spam jedes Benutzers in seinen entsprechenden
-Spamordner zu verschieben. Wir benutzen die rohe Kraft des *Sieve_* plugins,
-welches ein Mail Filter wie *procmail* (Procmail ist in Verbindung mit virtuellen
-Postfächern nutzlos) ist.
-Sieve benutzt eine einfach Scriptsprache, welche es möglich macht alle E-Mails
-die von Spamassassin markiert wurden, automatisch in einen Spamordner weiterzuleiten
-Weiter oben haben wir `` protocol lda`` definiert und dort folgende Variable gesetzt:
-``global_script_path = /home/vmail/globalsieverc``.
-Jedesmal wenn eine E-Mail an einen virtuellen Benutzer ausgeliefert wird, wird diese
-Datei als Filter ausgeführt. Erstellen Sie eine Datei ``/home/vmail/globalsieverc``
-mit folgendem Inhalt::
+Spamordner zu verschieben. Wir benutzen dazu die Möglichkeiten des
+*Sieve_*-Plugins, das ein Mail-Filter wie *procmail* ist (bis darauf, dass
+Procmail in Verbindung mit virtuellen Postfächern leider nutzlos ist). Sieve
+benutzt eine einfache Skriptsprache, die es erlaubt, alle E-Mails die von
+Spamassassin markiert wurden, automatisch in einen Spamordner weiterzuleiten.
+Weiter oben haben wir ``protocol lda`` definiert und dort folgende Variable
+gesetzt: ``global_script_path = /home/vmail/globalsieverc``. Jedesmal wenn eine
+E-Mail an einen virtuellen Benutzer ausgeliefert wird, wird diese Datei als
+Filter ausgeführt. Erstellen Sie eine Datei ``/home/vmail/globalsieverc`` mit
+folgendem Inhalt::
require ["fileinto"];
# Move spam to spam folder
@@ -2223,68 +2165,63 @@ Der Eintrag zeigt uns, dass die E-Mail i
Der Eintrag zeigt uns, dass die E-Mail im Spamordner gespeichert wurde. Wenn Sie
nun die Mails abrufen, sollten Sie die Mail in dem Ordner finden.
-Mailing Listen mit mailman
+Mailing-Listen mit mailman
-------------------------------------
-Eine häufig gestellte Frage ist, wie man Mailing Listen mit
-der berühmten Software 'mailman' betreiben kann, wenn man virtuelle
-Domänen benutzt. Das ist nicht wirklich schwer und es gibt verschiedene
-Wege dies zu erreichen.
-Der einfachste und flexibelste Weg ist *local aliases* zu benutzen:
+Eine häufig gestellte Frage ist, wie man Mailing-Listen mit der berühmten
+Software 'mailman' betreiben kann, wenn man virtuelle Domänen benutzt. Das ist
+nicht wirklich schwer und es gibt verschiedene Wege dies zu erreichen. Der
+einfachste und flexibelste Weg ist *lokale Aliase* zu benutzen:
-Benutzen von lokalen Aliase
-...........................
+Benutzen von lokalen Aliasen
+............................
-Der erste Ansatz benutzt die Aliase, die Sie normal unter
-``/etc/aliases`` eintragen.
-Sie müssen lediglich verstehen, dass virtuelle Benutzer keine
+Der erste Ansatz benutzt die Aliase, die Sie normalerweise unter ``/etc/aliases``
+eintragen. Sie müssen lediglich verstehen, dass virtuelle Benutzer keine
+Aliase haben können, die an externe Programme weiterleiten.
+Sobald Sie eine neue Mailing-Liste mit dem ``newlist``-Befehl angelegt haben,
+müssen Sie bestimmte Aliase in Ihre ``/etc/aliases``-Datei hinzufügen wie
+*chitchat-admin*, *chitchat-bounces*, *chitchat-join* u.s.w., die auf das
+Mailman weiterleiten wie z.B.
+``"|/var/lib/mailman/mail/mailman post powerdns-debian"``.
+Die Email wird also an dieses Programm übergeben und Mailman erhält diese
+Email als Eingabe zur Weiterverarbeitung.
-You just have to understand that virtual users cannot have piped aliases.
-Piped... what? Well, once you have created a mailing list with the
-``newlist`` command you are requested to add certain
-aliases to your /etc/aliases file like chitchat-admin,
-chitchat-bounces, chitchat-join and so on that point to destinations
-that look like
-``"|/var/lib/mailman/mail/mailman post powerdns-debian"``.
-This means that the email is piped into the ``mailman``
-program. Mailman is called and gets the email as input.
+Das funktioniert gut für lokale Domänen aber klappt leider nicht bei
+virtuelen Aliasen. Das liegt daran, dass es keinen System-Benutzer gibt,
+unter dessen Benutzerrechten dieses Skript ablaufen könnte. Die Lösung ist
+hier eine Weiterleitung von der virtuellen Email-Adresse an eine lokale
+Email-Adresse.
-This works well for local domains but will fail if you put a piped
-alias like this into a virtual alias. That is because you do not
-have a system user whose user-id you could use to run this pipe.
-So you will have to make a circuit and forward your virtual email
-address to a local email address where you can use piped aliases.
+Ich schlage vor, dass Sie 'localhost' als lokale Domäne definieren
+(``mydestination = localhost``) und jeden der Mailman-Aliases
+an das @localhost-Äquivalent weiterleiten. Falls Sie also eine Adresse
+chitchat-subscribe at virtual.domain haben, muss sie an die Adresse
+chitchat-subscribe at localhost und dann unter Verwendung der /etc/aliases
+an das "mailman"-Programm weitergeleitet werden.
-I recommend that you use 'localhost' as your local domain
-(``mydestination = localhost``) and forward each of the
-mailman aliases to the @localhost equivalent. So if you have a
-chitchat-subscribe at virtual.domain address you just forward it to
-chitchat-subscribe at localhost and use the /etc/aliases as suggested by
-'mailman'. Perhaps someone comes up with a nifty solution to put
-the /etc/aliases into the MySQL database, too. Let me know if you
-have invented something. :)
+vielleicht findet jemand eine elegante Lösung, die /etc/aliases auch noch
+in die MySQL-Datenbank zu integrieren. :)
-Benutzen von Transprot Maps (bereitgestellt von Michael Dürgner)
+Benutzen von Transprot Maps (bereitgestellt von Michael Dürgner)
.................................................................
-Wenn Sie Ihren Kunden/Klienten erlauben wollen eigene Mailling Listen
+Wenn Sie Ihren Kunden/Nutzern erlauben wollen, eigene Mailing-Listen
zu erstellen, ist die oben genannte Lösung nicht flexibel genug.
-Postfix's mächtige Transport Maps erlauben es Ihnen Postfix mitzuteilen,
-welche Transporte (Dienste) für bestimmte E-Mail Adressen oder ganze
+Postfix's mächtige Transport-Maps erlauben es Ihnen, Postfix mitzuteilen,
+welche Wege (Dienste) für bestimmte E-Mail Adressen oder ganze
Domänen benutzt werden sollen.
-Benutzen Sie eine reguläre expression lookup Tabelle um E-Mails
-weiterzuleiten in denen die Empfängeradresse in bestimmten Ausrücken
-mit Mailman übereinstimmen.
-
-Das folgende Beispiel von Transport Mapping zeigt eine Weiterleitung
-an den Mailman Dienst von E-Mails mit dem Emfpänger ``mylist at example.com``
+Benutzen Sie reguläre Ausdrücke, um Emails weiterzuleiten, in denen die
+Empfänger-Adresse mit einem bestimmten Muster übereinstimmt.
+Das folgende Beispiel von Transport-Maps zeigt eine Weiterleitung
+an den Mailman-Dienst von E-Mails mit dem Emfpänger ``mylist at example.com``
und jeder anderen Empfängeradresse die ähnlich aussieht wie
``mylist-*@example.com``::
/^(mylist|mylist-.*)@example\.com$/ mailman:
-Wenn Sie die Adressen Ihrer Mailing Listen mit einer MySQL Tabelle
+Wenn Sie die Adressen Ihrer Mailing-Liste mit einer MySQL-Tabelle
verwalten wollen, benutzen Sie folgende Konfigurationsdatei mit dem
Namen ``/etc/postfix/mysql-transport-mailman.cf``::
@@ -2295,7 +2232,7 @@ Namen ``/etc/postfix/mysql-transport-mai
query = SELECT 'mailman:' FROM transports WHERE email LIKE '%s'
Die Tabelle ``transport`` besteht aus mindestens einer Spalte ``email``
-die die Adressen der Mailining Liste beinhaltet.
+die die Adressen der Mailining-Liste beinhaltet.
Benutzen Sie als Platzhalter '%' in der Datenbank.
Machen Sie Postfix mit der Konfigurationsdatei vertraut::
@@ -2303,41 +2240,40 @@ Machen Sie Postfix mit der Konfiguration
$> postconf -e transport_maps=mysql:/etc/postfix/mysql-transport-mailman.cf
-Greylisting mit postgrey
+Greylisting mit Postgrey
----------------------------
-Viele Administratoren schwärmen von der Methode genannt *greylisting*.
-Wie funktioniert das? Normalerweise besitzen MTAs einen Puffer, der die
-Mails zwischenspeichert wenn es temporäre Auslieferungsprobleme seitens
-des Empfängers gibt. SMTP behandelt temporäre Fehler beginnend mit "4"
-und dauerhafte Fehler beginnend mit der Nummer "5".
-Wenn ein Fehler 5 auftritt, wird der Empfänger über die fehlgeschlagene
-Zustellung informiert. Wenn ein Fehler 4 auftritt, wird einige Tage
-lang versucht die Mail zuzustellen.
-Die meisten Spammer benutzen keine MTAs mit einem Zwischenspeicher (queue),
-da sie einfach mehrere tausende Anhnungslose mit Spam überhäufen wollen
-und sich keine Gedanken mit Queues machen.
-Wenn ihr System also die erste Mail verweigert, kann es sein dass die Spammer
-es nicht weiter versuchen. Diesen Vorgang nennt man Greylisting. Postfix
-lehnt den ersten Zustellungsversuch eines unbekannten Systems mit einem
-Fehler 4 ab. Nach fünf Minuten akzeptiert postfix den nächsten
-Zustellungsversuch.
+Viele Administratoren schwärmen von der Methode genannt *greylisting*. Wie
+funktioniert das? Normalerweise besitzen MTAs einen Puffer, der die Mails
+zwischenspeichert wenn es temporäre Auslieferungsprobleme seitens des
+Empfängers gibt. SMTP behandelt temporäre Fehler beginnend mit "4" und
+dauerhafte Fehler beginnend mit der Nummer "5". Wenn ein 5er-Fehler auftritt,
+wird der Empfänger über die fehlgeschlagene Zustellung informiert. Wenn ein
+4er-Fehler auftritt, wird einige Tage lang wiederholt versucht, die Mail
+zuzustellen. Viele Versender von Spam benutzen keine MTAs mit einem
+Zwischenspeicher (queue), da sie einfach mehrere tausende Anhnungslose mit Spam
+überhäufen wollen und sich keine Gedanken um die Fehlerbehandlung nicht
+zugestellter Emails machen. Wenn ihr System also den ersten Zustellversuch
+temporär ablehnt, kann es sein dass die Spammer es nicht weiter versuchen.
+Diesen Vorgang nennt man Greylisting. Postfix lehnt den ersten
+Zustellungsversuch eines unbekannten Systems mit einem Fehler 4 ab. Nach fünf
+Minuten akzeptiert Postfix aber den nächsten Zustellungsversuch.
-Greylisting hat Vor- und Nachteile. Sie blocken Spammer, die keinen Queue
-verwenden. Aber Sie werden auch normale Mails um mind. 5 Minuten verzögern,
-was einige Ihrer Benutzer stören wird, wenn diese dringend auf eine wichtige
-Mail warten. Es sieht ausserdem so aus, als würde Greylisting mit der Zeit
-immer uneffizienter werden, da Spammer häufig richtige Mailserver "cracken"
-und über diese Systeme Ihre Mails weiterleiten. Diese System haben dann meist
-einen Queue. Es bleibt Ihre Entscheidung ob Sie es verwenden wollen oder nicht.
-Einige Administratoren lieben es - die anderen sagen es bringt nichts.
+Greylisting hat Vor- und Nachteile. Sie blocken Spammer, die keine Queues
+verwenden. Aber Sie werden auch normale Mails um mindestens 5 Minuten
+verzögern, was einige Ihrer Benutzer stören wird, wenn diese dringend auf eine
+wichtige Mail warten. Es sieht ausserdem so aus, als würde Greylisting mit der
+Zeit immer uneffizienter werden, da Spammer häufig in richtige Mailserver
+"einbrechen" und über diese Systeme Ihre Mails weiterleiten. Diese System haben
+dann meist eine Queue. Es bleibt Ihre Entscheidung ob Sie es verwenden wollen
+oder nicht. Einige Administratoren lieben es - andere halten es für nutzlos.
Glücklicherweise ist es nicht gerade schwer, Greylisting mit Postfix zu
benutzen. Sie müssen zuerst das Paket ``postgrey`` installieren::
$> aptitude install postgrey
-Nach der Installation läuft der ``postgrey`` Dämon im Hintergrund und wartet
+Nach der Installation läuft der ``postgrey``-Dämon im Hintergrund und wartet
auf Anfragen über den TCP Port 60000. Damit Postifx diesen *policy daemon*
benutzt, müssen Sie einige Zeilen zu Ihrer ``/etc/postfix/main.cf`` im Abschnitt
``smtpd_client_restrictions`` hinzufügen::
@@ -2354,7 +2290,7 @@ benutzt, müssen Sie einige Zeilen zu Ihr
In diesem Beispiel werden ein paar RBLs (real-time blacklists) überprüft um
festzustellen ob das Sendersytem als Spammer bekannt ist.
-Wenn keine der Kirterien zutrifft, wird der ``postgrey`` policy daemon nach
+Wenn keine der Kriterien zutrifft, wird der ``postgrey``-Policy-Dämon nach
dem System des Senders gefragt und die Zustellung für 5 Minuten abgelehnt.
Diese Verzögerungen sind in Ihrer ``mail.log`` zu sehen::
@@ -2364,83 +2300,63 @@ Diese Verzögerungen sind in Ihrer ``mail
from=<spammer at example.com> to=<one.of at your.users> proto=ESMTP helo=<[10.20.30.40]>
-Abwesenheitsnachricht
----------------------
+Abwesenheitsnachrichten / Autoresponder
+--------------------------------------------
-Remo Fritzsche hat einen PHP-basierten Abwesenheitsassistent names `goldfish
-<http://www.remofritzsche.ch/goldfish/>`_ veröffentlicht, welcher einfach in diese
-Installation integriert werden kann.
+Remo Fritzsche hat netterweise einen PHP-basierten Abwesenheitsassistenten
+names `goldfish <http://www.remofritzsche.ch/goldfish/>`_ veröffentlicht,
+welcher einfach in diese Installation integriert werden kann.
.. @TODO:
Controlling AMaViS from the database
-Benutzen von Horde/Imp als Webmail Schnittstelle
+Benutzen von Horde/Imp als Webmail-Dienst
------------------------------------------------
Oliver Ladner bietet eine Anleitung an wie man `Horde/Imp mit dem SQL
Schema dieser Anleitung benutzen kann <http://oli.lugh.ch/horde-workaround.org.txt>`_.
-Alte, gelöscht Mails entfernen
+Alte gelöschte Mails entfernen
------------------------------
-Mit IMAP kann man E-Mails als gelöscht markieren. Einige E-Mail Clients
-zeigen diese Mails dann nicht mehr an. Diese bleiben jedoch auf dem Server und
-verbrauchen unnötig Speicherplatz. Es gibt eine Option die Mails wirklich zu löschen,
-aber wenn die User diese bene nicht benutzen....
-Michel Weisgerber hat vorgeschlagen folgendes Kommando mit einem Cronjob
-auszuführen um solche Mails zu löschen::
+Mit IMAP kann man E-Mails als gelöscht markieren. Einige E-Mail Clients zeigen
+diese Mails dann nicht mehr an. Diese bleiben jedoch auf dem Server und
+verbrauchen unnötig Speicherplatz. Normalerweise haben Email-Programme eine
+Funktion, um diese Mails endgültig zu löschen. Leider interessieren sich viele
+Anwender nicht dafür. Michel Weisgerber hat vorgeschlagen folgendes Kommando
+mit einem Cronjob auszuführen um solche Mails zu löschen::
find /home/vmail/ -name '*,ST' -ctime +7 | xargs rm -f
-Dovecot benennt alle E-Mails um und hängt ein ``,ST`` an das Ende des Dateinamens
-an. Passen Sie den Parameter ``-ctime`` nach Ihren Wünschen an.
-In dem Beispiel werden alle gelöschten Mails die älter als 7 Tage sind gelöscht.
-
-.. ::
-
- Setting up a backup MX
- ----------------------------
-
- Die meisten Internet Anbieter haben mehr als einen Mail Server um Mails zu
- emfpangen. WEnn Sie sich Ihre MX Einträge (welche die E-Mail Server definieren,
- die für das Empfangen von Mails an bestimmten Domänen verantwortlich sind)
- ansehen, werden Sie verschiedene Server mit verschiedenen Prioritäten sehen
- können. Es wird empfohlen einen Backup Server zu betreiben, der die Arbeit
- erledigt, sobald der primäre Mailserver nicht im Netzwerk erreichbar ist oder
- einen Hardwareschaden erleidet.
- Es ist von entscheidender Bedeutung, dass Ihr Backupserver genau so sicher
- konfiguriert ist als der primäre Server. Einige Organisationen scheinen
- Backupserver zu benutzen, die blindlings Mails akzeptieren und zum primären
- Server weiterleiten. Wenn der primäre Server die mails dan ablehnt, weil Sie
- wie Spam oder Virenmails aussehen, erzeugen Sie Bounces zu ahnungslosen Leuten.
- Stellen Sie also sicher, dass Ihr Backup MX Server nur E-Mails annimmt, die
- auch der primäre Server annehmen wrde.
-
+Dovecot benennt alle gelöschten E-Mails um und hängt ein ``,ST`` an das Ende
+des Dateinamens an. Passen Sie den Parameter ``-ctime`` nach Ihren Wünschen an.
+In dem Beispiel werden alle gelöschten Mails die älter als 7 Tage sind
+gelöscht.
Fehlerbehebung
===============
-Wenn Sie Probleme beim Empfangen oder Senden von E-Mails haben sollten,
-helfen Ihnen diese Schritte weiter:
+Falls Sie Probleme beim Empfangen oder Senden von E-Mails haben sollten,
+sollten Sie diese Tipps probieren:
#. Überprüfen Sie Ihre ``/var/log/mail.log``. 93.7% aller Probleme hinterlegen
- hier eine entsprechende Fehlermeldung.
+ hier eine entsprechende Fehlermeldung. :)
#. Führen Sie ``postfix check`` aus. Wenn nichts ausgegeben wird, bedeutet
das, dass alles in Ordnung ist.
-#. Fragen Sie im IRC Kanal auf irc.freenode.net nach. Bitte warten Sie dort
- bis Ihnen jemand hilft und drängen Sie die Leute nicht. Lesen Sie vor allem
- die Hinweise im Topic (Thema) des Kanals
+#. Fragen Sie im IRC-Kanal ``#postfix`` auf irc.freenode.net nach. Bitte warten
+ Sie dort bis Ihnen jemand hilft und drängen Sie die Leute nicht. Lesen Sie
+ vor allem die Hinweise im Topic (Thema) des Kanals
#. Stellen Sie Ihre Frage in der `workaround chitchat mailing list
<http://workaround.org/cgi-bin/mailman/listinfo/workaround-chitchat>`_
- (bitte in English schreiben)
-#. Dieses Tutorial setzt Debian "Etch" voraus. Wenn Sie das Setup auf eine
- anderen Distribution anwenden, müssen Sie dies alleine machen.
+ (bitte auf englisch schreiben)
+#. Dieses Tutorial setzt Debian "Etch" voraus. Wenn Sie das Setup auf einer
+ anderen Distribution anwenden, sind Sie auf sich alleine gestellt.
Und: Nein, Ubuntu zählt nicht als Debian, da sich die Paketversionen
unterscheiden.
#. Der ungünstigste Fall ist E-Mails direkt an den Author zu schicken und nach Hilfe
- zu fragen. Vorschläge oder Feedback an den Author sind jederzeit erwünscht.
-
+ zu fragen. Vorschläge oder Feedback an den Autor sind hingegen jederzeit
+ erwünscht.
Danksagung
==========
@@ -2449,9 +2365,9 @@ Vielen Dank an:
Vielen Dank an:
- Alexander Stielau
-- Axel Zöllich
-- Cameron Jones from `vpslink <http://www.vpslink.com>`_ for sponsoring
- a virtual root server for testing this setup
+- Axel Zöllich
+- Cameron Jones von `vpslink <http://www.vpslink.com>`_ für das Sponsoring
+ eines virtuellen Root-Servers zum Testen dieses Tutorials
- Christian Garling
- Christian Kurz
- Christof Gruber
@@ -2460,6 +2376,7 @@ Vielen Dank an:
- Daniel Wladow
- Devdas Bhagat
- Eicke Kemm
+- Florian Fritsch
- Jasper Slits
- Jesper Krogh
- Jon Cox
@@ -2467,7 +2384,7 @@ Vielen Dank an:
- Lucas Baltes
- Mario Duve
- Matthias Quade
-- Michael Dürgner
+- Michael Dürgner
- Michael Weisgerber
- Mikael Tokarev
- Oliver Ladner
@@ -2483,9 +2400,10 @@ Sie können zusätzliche Beiträge, die noc
Sie können zusätzliche Beiträge, die noch nicht in die Anleitung eingeflossen sind
auf der `Wiki Seite <http://workaround.org/moin/PostfixTutorialContributions>`_.
einsehen. Vielen Dank auch an alle Leser der Anleitung die Feedback gegeben haben -
-technisch als auch gefühlsbetont.
-Vielleicht interessiert es Sie auch `was andere denken <http://workaround.org/moin/PostfixTutorialFeedback>`_.
-Wenn Sie den Author unterstützen wollen können Sie hier spenden:
+sowohl technisch als auch motivatorisch.
+Vielleicht interessiert es Sie auch `was andere denken
+<http://workaround.org/moin/PostfixTutorialFeedback>`_. Wenn Sie den Author
+unterstützen wollen können Sie hier spenden:
.. raw:: html
diff -r 1e277513a64b -r f0ba7c11bab9 tutorial/en.rest
--- a/tutorial/en.rest Mon Jan 28 20:46:42 2008 +0100
+++ b/tutorial/en.rest Mon Jan 28 23:43:53 2008 +0100
@@ -22,7 +22,6 @@ Howto: ISP-style Email Server with Debia
:License: (C) 2007 Christoph Haas. This document is published under the
terms of the GNU General Public License
(http://www.gnu.org/licenses/gpl.html)
-:Revision: $Rev: 159 $
:Source: The most current version of this document can be found at
`workaround.org`_. If you feel you need to mirror this document then please
keep your copy up to date. Otherwise you are causing the author a lot of
@@ -78,7 +77,7 @@ deliberately no script that will do all
deliberately no script that will do all the setup automatically. But in the end
you will be skilled enough to debug problems yourself. If you feel you need
help with your setup then read the hints on `Troubleshooting`_. The setup in
-this tutorial has been tested very thoroughly by several people. Unlike many
+this tutorial has been tested very thoroughly by several readers. Unlike many
other Postfix tutorials on the internet this is already the third edition.
Writing this tutorial took a month of work so these are not just quick draft
notes thrown together but a consistent document guiding you.
@@ -243,7 +242,7 @@ That would be equal if you used a text f
john at doe.net jack at example.com, jeff at example.com, kerstin at example.com
-We hope you get the idea of mappings in databases so far.
+So much as a quick introduction on how mappings are used with databases.
Virtual domains versus local domains
@@ -257,7 +256,7 @@ All domains listed as *mydestination* in
All domains listed as *mydestination* in your main.cf are treated as local
domains. Your default domain (``/etc/defaultdomain``) is usually configured as
a local domain. Emails for local domains are delivered to system users (those
-you configure in ``/etc/passwd``). The mails will be delivered to /var/mail by
+you list in ``/etc/passwd``). The mails will be delivered to /var/mail by
default. You should consider using at least "localhost" as a local domain
so that you can always receive mails for root at localhost. Imagine your
database server has problems and sends that to your root account but your
@@ -286,7 +285,7 @@ disk.
The *virtual_mailbox_maps* parameter tells Postfix where the mailbox directory
is located on the hard disk for a certain user. The path is relative to the
-*virtual_mailbox_base* directory which is empty by default.
+*virtual_mailbox_base* directory which is unset by default.
.. Note::
@@ -347,7 +346,7 @@ for the "*Mail name*" by entering the fu
for the "*Mail name*" by entering the fully qualified hostname (that means
including the domain part) of your system.
-If you intend to run the MySQL server on the same machine::
+If you intend to run the MySQL server on the same server::
$> aptitude install mysql-server-5.0
@@ -562,8 +561,9 @@ both kerstin42 at yahoo.com and kerstin at myc
Do not be scared if this way looks incredibly complicated. Such a database is
not supposed to be maintained by manual SQL commands. But it is still important
-that you understand the schema of the database tables. (A web interface for
-maintaining this information is already in the making.)
+that you understand the schema of the database tables.
+There are already web-based administration tools that are supposed to
+make managing accounts easier.
Step 4: Create the database mapping files
@@ -648,7 +648,7 @@ mailboxes. The following shell commands
mailboxes. The following shell commands will create a system group "vmail" with
GID (group ID) 5000 and a system "user" with UID (user ID) 5000. (Make sure
that UID and GID is not yet used or choose another - the number can be anything
-between 1000 and 65000)::
+between 1000 and 65000 that is not yet used)::
$> groupadd -g 5000 vmail
$> useradd -g vmail -u 5000 vmail -d /home/vmail -m
@@ -784,7 +784,7 @@ john at example.com john at example.com, Deli
*catchall* account.
================ ================= =================================
-See ``man 5 virtual`` for a complete definition.
+See ``man 5 virtual`` for a more formal definition.
As you see it is possible to name multiple destinations seperated by commas. In
the database the same effect can be achieved by using different rows instead.
@@ -886,7 +886,7 @@ john at example.com john at example.com
================= ====================
More specific aliases have precedence over general catchall aliases. Postfix
-will find an entry for 'john at example.com' and find that email should be
+will find an entry for 'john at example.com' first and find that email should be
"forwarded" to 'john at example.com' - the same email address. This trickery may
sound weird but it is needed if you plan to use catchall accounts. So the
*virtual_alias_maps* mapping must obey both the "view_aliases" view and this
@@ -963,7 +963,7 @@ so that Dovecot starts the IMAP and POP3
so that Dovecot starts the IMAP and POP3 services and also its equivalents
that work over an encrypted SSL (*secure socket layer*) connection.
-If some users complain they cannot fetch their emails consider setting::
+If users start to complain that they cannot fetch their emails consider setting::
disable_plaintext_auth = no
@@ -1375,7 +1375,7 @@ IMAP will just give you basic informatio
* 1 FETCH (FLAGS (\Seen) INTERNALDATE .........
4 OK Fetch completed.
-To read the actual mail body you need to fetch it exlicitly::
+To read the actual mail body you need to fetch it explicitly::
5 fetch 1 body[]
@@ -1490,15 +1490,15 @@ authenticate::
$> postconf -e mynetworks=192.168.50.0/24
-One case of relaying is but important in real-life. Imagine you have a user who
-is currently not connected to your local network but wants to send out an email
-to the internet through your mail server. According to the above rules the user
-would not be able to do that because neither are they on your network nor are
-they sending an email *to* one of your domains. You need to find a way to make
-your remote user be trusted by your mail server. The users will need to show you
-their username and password so you know relaying should be permitted. This is what
-*authenticated SMTP* is about. And most email clients have that feature built
-in.
+One case of relaying from outside of your network is but important in
+real-life. Imagine you have a user who is currently not connected to your local
+network but wants to send out an email to the internet through your mail
+server. According to the above rules the user would not be able to do that
+because neither are they on your network nor are they sending an email *to* one
+of your domains. You need to find a way to make your remote user be trusted by
+your mail server. The users will need to show you their username and password
+so you know relaying should be permitted. This is what *authenticated SMTP* is
+about. And most email clients have that feature built in.
Authenticated SMTP with Postfix has always been a pain. It was done through the
SASL (*Simple Authentication and Security Layer*) library that was part of the
@@ -1980,7 +1980,7 @@ Ronny Tiebel's PHP administration fronte
Of course you need a convenient user interface to administer the data in the
database. Many readers offered to write a web interface to simplify the
-administration of domains, accounts and aliases. But so far only Robert Klikics
+administration of domains, accounts and aliases. Robert Klikics
published a `PHP script <http://ronnytiebel.de/code/mail_control.phps>`_
written by his apprentice Ronny Tiebel.
@@ -2130,7 +2130,7 @@ Use this config file by setting::
$> postconf -e transport_maps=mysql:/etc/postfix/mysql-transport-mailman.cf
-Greylisting with postgrey
+Greylisting with Postgrey
----------------------------
Some administrators are enthusiatic about a mechanism called *greylisting*. How
@@ -2186,8 +2186,8 @@ like::
from=<spammer at example.com> to=<one.of at your.users> proto=ESMTP helo=<[10.20.30.40]>
-Autoresponder
-------------------
+Vacation / Autoresponder
+-----------------------------
Remo Fritzsche has kindly published his PHP-based `goldfish
<http://www.remofritzsche.ch/goldfish/>`_ autoresponder that can easily be used
@@ -2214,29 +2214,9 @@ crontab to remove such emails::
find /home/vmail/ -name '*,ST' -ctime +7 | xargs rm -f
-Dovecot renames all emails so that they get a ``,ST`` added at the end of the
-filename. Adjust the parameter to ``-ctime`` as you like. In this example
-deleted mails older than 7 days are purged.
-
-.. ::
-
- Setting up a backup MX
- ----------------------------
-
- Most internet providers have more than one mail server to receive email.
- If you look at their MX records (which define the email servers responsible
- for receiving emails for certain domain) you may see different servers with
- different priorities. In case your primary mail server is disconnected from
- the internet accidentally or has a hardware failure it is advised that you
- run a backup server. It is vital though that your backup server is configured
- as securely as the first one. Many organisations seem to run backup servers
- that blindly accept any mail and forward it to the primary mail server.
- If the primary server would then reject the email because it looks like spam
- or contains a virus then you are creating bounces to innocent people. So
- make sure your backup MX server accepts only emails that your primary server
- would accept, too.
-
-
+Dovecot renames all deleted emails so that they get a ``,ST`` added at the end
+of the filename. Adjust the parameter to ``-ctime`` as you like. In this
+example deleted mails older than 7 days are purged.
Troubleshooting
@@ -2245,7 +2225,7 @@ general steps:
general steps:
#. Check your ``/var/log/mail.log``. 93.7% of all problems cause a more or less
- clear error message there.
+ clear error message there. :)
#. Run ``postfix check``. No output means everything is well.
#. Ask on the ``#postfix`` IRC channel on irc.freenode.net. I usually attend
there as *Signum* but please just ask and wait for people to help you.
@@ -2277,6 +2257,7 @@ translated it, contributed suggestions a
- Daniel Wladow
- Devdas Bhagat
- Eicke Kemm
+- Florian Fritsch
- Jasper Slits
- Jesper Krogh
- Jon Cox
More information about the Workaround-chitchat
mailing list