Tipps und Tricks‎ > ‎

OS X Server - SMTP-AUTH Identifizierung

veröffentlicht um 01.10.2009 13:52 von Oliver Grosche
Um die Funktion “E-Mail versenden über Host:” im Mail-Dienst von OS X Server zu benutzen, muss für das einliefern von Mails an den eingetragenen Server die SMTP AUTH Identifizierung (meistens wird diese benutzt wenn der Mail-Server das einliefern von Mails nur mit Authentifizierung erlaubt) in Postfix eingerichtet werden.

Dazu muß die Konfigurationsdatei main.cf von Postfix bearbeitet werden. Die Datei befindet sich hier /etc/postfix/, gehört dem Benutzer root, Gruppe wheel und ist eine ganz normale Textdatei. Vor der Änderung muß aber das Name-/Kennwortpaar für die Identifizierung am Server geschützt abgelegt werden. Diese Daten gehören in die Datei sasl_passwd, die in dieses Verzeichnis gehört: /etc/postfix/.

Mit dem Befehl,

sudo pico /etc/postfix/sasl_passwd

erstellen wir die Datei. In der Datei steht der SMTP-Server an den wir die ausgehenden Mails schicken und unser Benutzername und Kennwort für das einliefern von Mails auf diesem Server. Die Formatierung der Datei sollte dann folgender maßen aussehen:<br><br>

smtp.beispiel1.de Benutzer:Kennwort

Die Zeile muß am Ende mit der Eingabetaste abgeschlossen werden. Dann die Datei speichern. Da die Datei Geheime Informationen enthält, müssen wir dafür sorgen das sie nicht angesehen werden kann. Dazu folgende Befehle eingeben:<br><br>

sudo chown root:wheel /etc/postfix/sasl_passwd
sudo chmod 600 /etc/postfix/sasl_passwd

Somit kann Postfix die Datei lesen, da es mit root-Rechten läuft, sonst aber keiner.
Postfix erwartet den Inhalt aber in einer speziell optimietrten Form die wir mit folgendem Befehl erstellen:

sudo postmap hash:/etc/postfix/sasl_passwd

Jetzt befindet sich im Verzeichnis /etc/postfix/ eine weitere Datei sasl_passwd.db. Falls Änderungen an der Datei sasl_passwd gemacht werden muß der letzte Schritt immer ausgeführt werden.

Jetzt können wir die Datei main.cf bearbeiten. Dazu öffnen wir sie mit dem Befehl:

sudo pico /etc/postfix/main.cf

Wir gehen in der Datei an die stelle wo “# THE FOLLOWING DEFAULTS ARE SET BY APPLE ” steht. Oberhalb dieser Stelle tragen wir folgende Zeilen ein:<

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =>

Nun die Datei speichern und das Mail-System neu starten:

sudo postfix reload

Jetzt sollte das versenden von Mails nach außen funktionieren…


externe E-Mail mit fetchmail holen

Damit der Mail-Dienst von OS X Server Mails von externen POP3-Konten abholt muss fetchmail eingerichtet werden. Fetchmail soll unter root-Rechten laufen. Es benutzt eine Startdatei in der Anweisungen stehen die fetchmail sagen was gemacht werden soll. Diese Startdatei liegt immer im Privatordner des Benutzers, also bei root in /var/root. Die Startdatei muss den Namen .fetchmailrc haben.

Mit folgendem Befehl legen wir die Datei an:

sudo pico /var/root/.fetchmailrc

Der Inhalt sollte folgendermaßen aussehen:


set postmaster (lokaler Benutzer der Postmaster sein soll)
set syslog

poll pop.beispiel1.de proto POP3:

User (benutzername) with pass (kennwort) is (dazugehöriger lokaler Benutzer) here

poll pop.beispiel2.de proto POP3:

User (benutzername) with pass (kennwort) is (dazugehöriger lokaler Benutzer) here

poll pop.beispiel3.de proto POP3:

User (benutzername) with pass (kennwort) is (dazugehöriger lokaler Benutzer) here


Jetzt die Datei speichern und mit dem Befehl,

sudo chmod 600 /var/root/.fetchmailrc

verstecken. Wie man oben sieht, kann man mehrere Postfächer bei verschidenen Providern angeben. Mit dem Befehl:

sudo fetchmail

wird fetchmail ausgeführt und holt sämtliche Mails ab, legt sie auf dem lokalen Server in die entsprechenden Postfächer und löscht die Mails vom externen Server. Damit funktioniert die manuelle abholung schon mal. Da die Mails aber automatisch abgeholt werden sollen benötigen wir noch einen Eintrag in der Datei /etc/crontab. Dazu geben wir den Befehl,

sudo pico /etc/crontab

ein, und fügen z.B. folgende Zeile ein :

0 9,11,13,15,17*** root /usr/bin/fetchmail

und speichern die Datei wieder. Diese Zeile bewirkt das an jedem Wochentag zu vollen Stunde (0) um jeweils 9,11,13,15 und 17 Uhr durch den Benutzer (root) das Programm fetchmail aufgerufen wird. Zwischen 8-18 Uhr werden nun alle 2 Stunden Mails abgerufen und lokal an die Benutzer verteilt.