net_connect(/var/run/dovecot/auth-master) failed: Permission denied

Vor ein paar Tagen hatte ich ein kleiner Problem mit meinem Mailserver, die Rechte waren nicht richtig gesetzt und habe immer den gleichen Fehler in der Log erhalten.
Die folgende Problemloesung habe ich im Netz gefunden auf english. Da sich urls im Netz schnell aendern koennen habe ich das ganze hier festgehalten und auf deutsch uebersetzt.

1. chown 0.0 /usr/lib/dovecot/deliver
2. chmod 755 /usr/lib/dovecot/deliver
3. finde heraus welcher Benutzer in der master.cf fuer deliver eingetragen ist (... flags=DRhu user=nobody:mail argv=/usr/.../deliver) ^^^^^^
NICHT: root, dovecot der postfix!
4. mkdir /usr/local/lib/dovecot
5. chmod 700 /usr/local/lib/dovecot
6. chown nobody /usr/local/lib/dovecot
7. cp -p /usr/lib/dovecot/deliver /usr/local/lib/dovecot
8. chmod u+s /usr/local/lib/dovecot/deliver
9. weise den Path von Punkt 8 dem args vom dovecot service in der postfix master.cf zu
10. postfix neustarten und los gehts.

Mailingliste mit Postfix

Wie ein Postfix Mailserver einzurichten ist habe ich in dem Blogeintrag Einrichten eines Postfix Mailservers beschrieben. In der Datei “/etc/aliases” sind alle E-Mailadressen aufgelistet fuer die der Mailserver Post entgegennimmt. Ausserdem ist hier festgehalten an welchen internen Benutzer die Post weitergeleitet wird. Hier ein Beispiel.

reiz: pumukel
mueller: mueller@gmx.de

Die zwei Eintraege besagen das alle E-Mails mit der Empfaengeradresse “reiz@ploin.de” an den internen Benutzer pumukel weitergeleitet werden sollen und alle E-Mails mit der Empfaengeradresse “mueller@ploin.de” an die E-Mailadresse “mueller@gmx.de” weitergeleitet werden sollen.
Wir haben hier eine 1:1 Beziehung. Eine Mailingliste stellt eine 1:n Beziehung da. Eine E-Mail wird an eine E-Mailadresse geschickt und der Server verteil die Post auf n andere E-Mailadressen.
Um dieses Verhalten bei Postfix einzurichten muss als erstes eine Datei mit den Empfaengeradressen erstellt werden. Die Datei koennte “/etc/maillist1.txt” heissen und folgenden Inhalt haben.

rosan@gmx.de,
mike@gmx.de,
puppe@google.de,

Auf diese Datei muss nun von der “/etc/aliases” referenziert werden, was mit folgendem Eintrag moelgich ist.

freunde: :include:/etc/maillist1.txt

Nun muss die neue “etc/aliases” nur noch neu geladen werdne.

postalias /etc/aliases

Die Maillingliste ist fertig eingerichtet. Eine E-Mail an die Adresse freunde@ploin.de wird jetzt an alle E-Mailadressen aus der Datei “/etc/maillist1.txt” weitergeleitet.

Einrichten eines Postfix Mailserver

Auf Debian-Servern ist standardmaessig Exim als Mailserver vorinstalliert. Der ist nicht schlecht aber mein Lieblingsmailserver ist nun mal Postfix. Exim kann wie folgt vom System entfernt werden.

apt-get remove exim*

Nun ist der Weg frei fuer Postfix.

apt-get install postfix

Und zu einem guten MTA gehoert auch ein guter MUA.

apt-get install mutt

Der Mailserver ist nun installiert und muss nur noch konfiguriert werden. Die Hauptkonfigurationsdatei fuer Postfix ist die “/etc/postfix/main.cf” Die Standardeinstellungen in der Datei sind meisstens sehr sinnvoll, so das nur wenige Variablen angepasst werden muessen.
Als erstes sollte der Hostname und die Domain angepasst werden. In meinem Fall sieht das so aus:

myhostname = ploin.de
mydomain = ploin.de

Die Variable “mydestination” legt fest fuer welche Domain der Server E-Mails entgegen nehmen soll. Es mach Sinn hier den eigenen Server einzutragen.

mydestination = ploin.de, localhost, 192.344.559.2

Die Variable “mynetworks” legt fest welche Adressen vertrauenswuerdig sind. Hier sollte auch mindestens der eigene Server drin stehen.

mynetworks = 127.0.0.0/8

die Variable “alias_maps” enthaelt den Pfad zu einer Datei, in der alle E-Mailadressen enthalten sind.

alias_maps = hash:/etc/aliases

Eine “/etc/aliases” koennte so aussehen:

reiz: pumukel
mueller: mueller@gmx.de

In der ersten Zeile wird Postfix angewiesen alle E-Mails mit der Empfaengeradresse reiz@ploin.de an den Benutzer pumukel des Systemes zuzuweisen. Die E-Mails landen also im Postfach vom pumukel Account.
In der zweiten Zeile wird der Mailserver angewiesen alle E-Mail mit der Empfaengeradresse mueller@ploin.de an die E-Mailadresse mueller@gmx.de weiterzuleiten.
Wenn die Datei geaendert wird, muss nicht gleich der Mailserver durchgestartet werden um die anederungen zu uebernehmen. Ein einfaches “postalias” mit der Datei als Parameter reicht aus.

postalias /etc/aliases

Nach dem Befehl sind die Aenderungen gueltig.
Der E-Mailserver sollte jetzt eingerichtet und betriebsbereit sein. Er nimmt E-Mails entgegen und speichert sie in den ensprechenden Postfaechern der Benutzer die in der /etc/aliases eingetragen sind.