[Postfixbuch-users] Postfix kann nicht zum saslauthd serverconnecten

Patrick Ben Koetter p at state-of-mind.de
Mi Mai 12 08:47:14 CEST 2004


* Michael Grundmann <michael at linuxfox.de> [040511 22:53]:
> Wie sind denn die REchte auf /var/run/saslauthd?
> Debian hat diese supertolle Idee, dass man Postfix zu einer sasl (?)
> Gruppe hinzufügen muss, damit smtpd Zugriff auf das Directory bekommt.
> Die Rechte zu verändern hilft nichts, weil ein Startupskript das wieder
> umbiegt...
> 
> das ist ja gut zu wissen - ich habe in meinem Startscript eine Zeile
> hinzugefügt, die die Rechte wieder umschreibt. Was ist denn jetzt der
> bessere Weg? Funktionieren werden wohl beide Varianten.

Also das ist IMHO eine Frage, die sich in Richtung Religion und
Philosophie hineinbewegt; es dreht sich um die Frage, ob man das
Verzeichnis nur für root:sasl zugängig macht oder für root:anybody.

root:sasl
So können nur User root und Group sasl zugreifen. Das ist gut, weil
lokale user mit shell Zugriff nicht auf den socket zugreifen können, um
ihn evtl. anzuzapfen und so die Kennworte anderer auszuspionieren.
Auf einem System, bei dem die mailuser auch auf die Shell zugreifen ist
das ein sinvolles Feature.

root:anybody
So können User root und Group anybody zugreifen. Das ist gut, weil man
damit Postfix nicht in eine andere Gruppe aufnehmen muß und folgt dem
strikten Ansatz des "least privilige" den Postfix verfolgt: "Ich kann
nicht benutzt werden, wozu ich nicht geschaffen wurde." Das ist gut
gegen externe Angriffe, weil ein smtpd, der nicht zur Gruppe sasl
gehört, kann gehackt auch nicht Dinge tun, die sasl tun dürfte.

Die Frage ist IMHO also, was man eher will. Ich bevorzuge letzteres,
denn ich bin der Meinung, dass eine Gefahr für das System in größerem
Maße von aussen gegeben ist.

Wenn man weder das eine noch das andere will, sollte man sich von
saslauthd und seinem (zu schützenden) socket verabschieden und auf die
auxprop_plugins umsteigen, auth user in z.b. einer MySQL DB anlegen und
sie so komplett von den lokalen Benutzerdaten in /etc/passwd trennen.

Das ist IMHO die beste Option, denn damit verhindert man viel
effektiver, dass ein äußerer Angreifer shell Zugang über ausspionieren
von SMTP AUTH erhält; die Daten in der MySQL DB sind so angelegt, dass
sie keinen shell Zugang zulassen. Schützen vor lokalen Angreifern muß
man sich da dann auch nicht so sehr; die könnten zwar die Mailbox eines
anderen lesen, wenn sie dessen Daten erfahren haben. Zugriff auf andere
Daten, z.B. das $home des Angegriffenen hätten sie damit immer noch
nicht.

saslauthd ist IMHO nur dann sinnvoll, wenn man auf /etc/passwd zugreifen
möchte oder auf IMAP zurückgreifen muss, um zu authentisieren. Für alles
andere, gibt es mit den auxprop_plugins elegantere, potentiell sicherere
und vor allem flexiblere Lösungen, die zudem noch andere Mechanismen als
nur plaintext gestatten; das ist nämlich das einzige was saslauthd kann:
plaintext...

<werbung>
Die Benutzung von auxprop_plugins ist im bald erscheinenden "Book of
Postfix" ausführlich beschrieben. Ich sage das, während ich am
vorletzten Kapitel schreibe und weis, dass es wirklich bald fertig sein
wird. ;)
</werbung>

p at rick


-- 
Patrick Koetter <p at state-of-mind.de>
http://postfix.state-of-mind.de/patrick.koetter/
 
"By the time you're thirty you have grown up,
whether you acknowledge it or not."




Mehr Informationen über die Mailingliste Postfixbuch-users