Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Schon wieder - Postfix Cyrus sasldb2 Verständnisproblem

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Gesperrt
enabler
Newbie
Newbie
Beiträge: 5
Registriert: 24. Nov 2004, 15:03

Schon wieder - Postfix Cyrus sasldb2 Verständnisproblem

Beitrag von enabler »

Hallo ihr Kundigen!

Ich lese seit ca. 2 Wochen in diesem Forum zum Thema Postfix, sowie alle extern angegebenen Links. Habe eine Suse 9.1 am laufen und möchte hiermit nun einen Mailserver betreiben. Es soll nur eine Domain versorgt werden.
Nach einzelnen Vorbetrachtungen bin ich zu dem Schluss gekommen, das eine Kombination von Postfix, Cyrus IMAP, Cyrus sasl und fetchmail gut funktionieren müsste. Die Idee, Mail-Benutzer nur in einer separaten Datenbank anzulegen und diesen hiermit komplett den Zugriff auf das eigentliche System zu verweigern gefiel mir sehr gut. Gesagt, getan, soweit alle notwendigen Programme installiert, funktioniert auch zum Teil.

Was funktioniert:
vom Client kann ich mich per in sasldb2 hinterlegten Zugangsdaten gegenüber cyrus autentifizieren und auf das Postfach und Unterordner zugreifen.

Mails können vom MUA über den MTA an externe Empfänger problemlos versandt werden. Die hierbei eingesetzte vorherige SMTP-auth Authentifikation via sasldb2 funktioniert.

Was nicht funktioniert:

Nun mein generelles Verständnisproblem:
Ich möchte erreichen, das Mailbox-User nur über die salsdb2 authentifiziert werden. Auf dem Server sollen nur die Standard-User existieren (root, postfix, usw.). Das Anlegen lokaler System-User soll unbedingt vermieden werden. Wenn ich nun lokal Mail verschicken möchte
z.B. user1@meine.domain an user2@meine.domain, (beide existieren nur in der sasldb2) meint postfix, das der zu erreichende User nicht existieren würde... Wie bekomme ich Postfix dazu, die Abfrage, ob der betreffende User in dieser Domain existiert ausschliesslich über die sasldb2 zu realisieren ? wie gesagt alles über die sasldb2 Authentifizierung. Wo liegt mein Denk-(wissens)Fehler?

Nochmal in Kurzform:
(Am Mailserver zum Versand anmelden) SMTP auth: sasldb2
(Per Mailclient auf die IMAP Ordner zugreifen) IMAP : sasldb2
(Mail an lokale(sasldb2)User versenden): sasldb2?

Welche Alternativen gibt es ausser MySQL?
Welchen Thread habe ich noch nicht zweimal gelesen? :roll:

An welcher Stelle (wo) nimmt Postfix die Prüfung vor, ob ein User existiert oder nicht?
Wie kann man Postfix dazu bewegen, diese Informationen aus der sasldb2 zu beziehen ?
Benutzeravatar
ThomasF
Hacker
Hacker
Beiträge: 578
Registriert: 1. Mai 2004, 12:37
Wohnort: Köln

Beitrag von ThomasF »

Hmmm,

habe den Post zwar nur überflogen, aber meine erste Idee ist :

Authentifizierung ist nicht gleich Mailzustellung, will heißen Postfix oder Cyrus-Imap interessiert es als erstes einmal ob ein Postfach für diesen User existiert ..... Dann wird geschaut ob ein Account vorhanden ist und dann wird die Mail erst zugestellt.

Selbst wenn es umgekehrt geprüft wird es müssen immer beide vorhanden sein ;-)

Gibt es für jeden User den Du bei den Test-Mails probiert hast ein Postfach in Cyrus ?
Die Postfächer in Cyrus werden meiner Meinung nach nicht automatisch angelegt, das muß man per Hand machen ...

Oder gibt es überhaupt einen User mit Postfach und sasldb2 Account dem Du eine Mail schicken kannst ?

So long

ThomasF
______________________

Ich bin /root, ich darf das !
enabler
Newbie
Newbie
Beiträge: 5
Registriert: 24. Nov 2004, 15:03

Beitrag von enabler »

Ja, es existieren für diese Benutzer mit cyradm angelegt Postfächer in der Form user.user1 unter /var/spool/imap.

Die Benutzer existieren auch mit dem gleichen Namen (user1) in der /etc/sasldb2, angelegt mit saslpasswd2.

Wo/Wann/womit prüft Postfix das Vorhandensein eines lokalen Kontos?
Benutzeravatar
ThomasF
Hacker
Hacker
Beiträge: 578
Registriert: 1. Mai 2004, 12:37
Wohnort: Köln

Beitrag von ThomasF »

Also das Wo/Wann/Womit kann ich Dir nicht sagen ...

Welches Modul das jetzt genau überprüft ist aber relativ egal, aber wenn es Dich interessiert such/frag doch mal in der Mailingliste vom Postfix-Buch.

Also ich gehe auch über SASL aber verzweige dann über PAM nach LDAP, weil ich die User auch für die Linux Authentifizierung brauche.

Was steht den bei Dir in der /etc/sysconfig/saslauthd ?

So long

ThomasF
______________________

Ich bin /root, ich darf das !
enabler
Newbie
Newbie
Beiträge: 5
Registriert: 24. Nov 2004, 15:03

Beitrag von enabler »

In der /etc/sysconfig/saslauthd steht eine Zeile:

SASLAUTHD_AUTHMECH=pam

Sollte ich hier etwas entscheidendes übersehen haben. Könnte es sein, das hier der Hinweis auf das auxprop, sasldb2 hingehört ?

Bis dann
Benutzeravatar
ThomasF
Hacker
Hacker
Beiträge: 578
Registriert: 1. Mai 2004, 12:37
Wohnort: Köln

Beitrag von ThomasF »

Hmm,

Auszug aus man saslauthd

Code: Alles auswählen

 sasldb     (All platforms)

                Authenticate against the SASL authentication database.  Note
                that this is probabally not what you want to be using, and is
                even disabled at compile-time by default.  If you want to use
                sasldb with the SASL library, you probably want to use the
                pwcheck_method of "auxprop" along with the sasldb auxprop plu-
                gin instead.
Also wenn ich das richtig verstehe ist die Benutzung von /etc/sasldb2 standardmässig nicht mit kompiliert, aber vielleicht hat SuSE es doch mit reingenommen ;-)

Versuch doch einfach mal anstatt pam sasldb einzutragen ...

Ansonsten hast Du die Wahl entweder das Paket neu zu kompilieren oder eventuell doch auch auf LDAP umzusteigen ... ;-)

So long

Thomas
______________________

Ich bin /root, ich darf das !
Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus »

liest du hier:
http://www.pl-berichte.de/t_netzwerk/po ... TO-de.html
http://fn.neuroflex.de/tn/postfixsasl.html
http://www.daniel-lewin.de/id/srv_mail.html
http://www.linux-tin.org/

postfix regelt den erlaubten Zugriff über die smtp_*_restrictions bzw smtpd_*_restrictions

wenn der Postfix gegen sasldb2 authentifizieren soll lautet die Option: permit_sasl_authenticated

ansonsten sind hier schon sehr viele Threads zum Thema sasldb2 Authentifizierung gelaufen :)
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User
Benutzeravatar
ThomasF
Hacker
Hacker
Beiträge: 578
Registriert: 1. Mai 2004, 12:37
Wohnort: Köln

Beitrag von ThomasF »

Hmm,

man lernt doch immer wieder dazu ... ;-)

So long

ThomasF
______________________

Ich bin /root, ich darf das !
enabler
Newbie
Newbie
Beiträge: 5
Registriert: 24. Nov 2004, 15:03

Beitrag von enabler »

Oh oc2pus, :)

gerade weil hier die sasldb2 so ausführlich und für alle Lebenslagen diskutiert und behandelt wird, bin ich voller Hoffnung auch in meinem besonderen Fall irgenwie ein Lösung erarbeiten zu können - auch wenn es die Stammgäste hier manchmal fast schon nerven dürfte. Ich habe alle angegebenen Links durchgelesen, der von http://www.pl-berichte.de/t_netzwerk/po ... TO-de.html war wirklich sehr aufschlussreich, hat mir sehr geholfen, da ich genau diese Informationen nirgendwo anders in dieser Form gefunden habe.

Es ist exakt so, wie du es beschreibst, in den Anweisungen
smtp_*_restrictions bzw smtpd_*_restrictions ist natürlich die Option permit_sasl_authenticated angegeben. Trotzdem antwortet postfix beim Versuch per telnet einem User der NUR in der sasldb2 angegeben ist eine Mail zu schreiben mit:

450 <user1@meine.domain>: Recipient address rejected: User unknown in local recipient table

Er soll doch nicht in der local recipient table nachsehen, sondern in meiner sasldb2.... Ich glaube hier liegt der Hase im Pfeffer. Deswegen nannte ich den thread auch "... Verständnisproblem"
Sorry für mein zur Zeit beschränktes Wissen. Wie biege ich diese Abfrage "um"?

Ein tail -f von /var/log/messages und /var/log/mail gibt auch keine weiteren Hinweise.
Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus »

dann setz einfach mal in der main.cf
local_recipient_maps =

also auf NIX :)

ansonten main.cf posten ... denn meine Glaskugel will heute nicht so wie ich will ;)
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User
Gesperrt