• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

postfix+mysql+courier-imap+cyrus-sasl "SASL Problem&quo

Status
Für weitere Antworten geschlossen.

komaii

Member
hallo,
ich hab postfix mit mysql und courier-imap und cyrus-sasl installiert..

soweit funktioniert alles wunder bar, ich kann per imap oder pop3 mails abholen und senden...

nun wollt ich noch "cyrus-sasl" dazuhängen, das die mysql user und passwörter abfragt, leider ohne erfolg...

<-- hier der wichtige auszug aus der "main.cf" -->
## - MYSQL Support ##
relay_domains = $mydestination, mail.kukka.livliq.local
virtual_maps = mysql:/etc/postfix/forward.mysql
virtual_mailbox_base = /var/spool/maildirs
virtual_uid_maps = mysql:/etc/postfix/ids.mysql
virtual_gid_maps = mysql:/etc/postfix/ids.mysql
virtual_mailbox_maps = mysql:/etc/postfix/mailbox.mysql
virtual_minimum_uid = 5000
##
## - SASL2 Support
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = yes

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination
##
<-- meine smtp.conf -->
ess /usr/lib/sasl2/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sql
mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5
log_level: 3
#
sql_user: postfix
sql_passwd: ganzgeheim
sql_hostnames: localhost
sql_database: mailbase
sql_select: SELECT %p FROM mailusers WHERE account = '%u@%r'
sql_verbose: yes

ich habe dazu die Anleitung von Patrick Koetter genommen: http://postfix.state-of-mind.de/patrick.koetter/easterhegg2004/#d0e43

folgende packete habe ich mit yast2 installiert:
cyrus-sasl 2.1.18
cyrus-sasl-devel (zum courier imap kompilieren)
cyrus-sasl-plain
cyrus-sasl-cramm5
cyrus-sasl-gssapi

<-- telnet localhost 25 ergibt -->
telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 kukka.livliq.local ESMTP Postfix
ehlo kukka.livliq.local
250-kukka.livliq.local
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH CRAM-MD5 DIGEST-MD5 LOGIN PLAIN
250-AUTH=CRAM-MD5 DIGEST-MD5 LOGIN PLAIN
250 8BITMIME
quit
221 Bye

wenn ich nun "saslauthd" starte dann steht da
24653 ? Ss 0:00 /usr/sbin/saslauthd -a pam

stimmt das denn? ich weiss es ehrlich gesagt nicht wie ich den starten muss?

ich danke schon mal vorweg...

lg,
-tomi
 

oc2pus

Ultimate Guru
/usr/local/lib/sasl2/smtpd.conf (oder wo auch immer du die stehen hast)
Code:
pwcheck_method: auxprop
auxprop_plugin: sql
sql_engine: mysql
mech_list: sql plain login
sql_hostnames: localhost
sql_user: postfix
sql_passwd: your-password
sql_database: postfix
sql_statement: SELECT clear FROM postfix_smtp WHERE email = '%u@%r'
sql_verbose: yes

mech_list--> sql fehlt da glaube ich

hier auch noch ein paar infos:
Installing Postfix, Cyrus SASL, and Courier IMAP to use MySQL
http://www.webconexion.net/knowledgebase/linux_howto/virtual_mail_server.php
 
OP
K

komaii

Member
jetzt bin ich nochmals alles durchgegangen aber ich bekomm das nicht hin..
hier die fehler meldung:--->
Jul 15 17:03:34 kukka postfix/smtpd[1163]: warning: tomte.livliq.local[192.168.81.225]: SASL LOGIN authentication failed
Jul 15 17:03:34 kukka postfix/smtpd[1163]: lost connection after AUTH from tomte.livliq.local[192.168.81.225]
Jul 15 17:03:34 kukka postfix/smtpd[1163]: disconnect from tomte.livliq.local[192.168.81.225]

was mach ich nur falsch ??
 

oc2pus

Ultimate Guru
da fehlt irgendwie noch die Verbindung von sasl zur Datenbank...

probier so was mal:

smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
check_recipient_access mysql:/etc/postfix/mysql-recipient.cf,
reject_unauth_destination, permit
smtpd_sender_restrictions = check_sender_access
mysql:/etc/postfix/mysql-sender.cf
smtpd_client_restrictions = check_client_access
mysql:/etc/postfix/mysql-client.cf

(ich habe das auch noch nicht mit dem courier-imap gemacht ;)
 
OP
K

komaii

Member
danke, leider hilft das auch nicht...

das steht in meiner "smtpd.conf"
cat /usr/local/lib/sasl2/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sql
sql_engine: mysql
mech_list: sql plain login CRAM-MD5 DIGEST-MD5
log_level: 3
sql_user: postfix
sql_passwd: supergeheim
sql_hostnames: localhost
sql_database: mailbase
sql_select: SELECT %p FROM mailusers WHERE account = '%u@%r'
sql_verbose: yes
-----

vllt noch einen anderen tipp auf lager? :)
 

oc2pus

Ultimate Guru
ne aber noch n link ;)
http://www.linux-club.de/viewtopic.php?p=60992#60992

normalerweise arbeited saslauthd via sasldb2 und legitimiert dann, du willst ja aber gerade, das saslauthd deine mySQL Datenbank nach den Daten abfragt und legitimiert.

pwcheck_method: saslauthd
damit fragt mein saslauthd bei der sasldb2,

deshalb klingt es für mich logisch das sql bei dir steht.

hast du mal unter /usr/share/doc/packages/cyrus-sasl2/doc geschaut, da steht auch was von mySQL drin.
 
OP
K

komaii

Member
hallo oc2pus,

ja das mit sasldb2 das würde schon funktionieren, das möcht ich aber nicht, wie du schon bemerkt hast will ich das über das sql plugin lösen...

jetzt hab ich alles nochmals neu kompiliert, aber leider immer noch der selbe fehler, so ein mist. ich bin mir sicher das wieder so ein ganz einfacher eintrag ist irgendwo und dann gings...ich werd mal weitersuchen :)

den link hab ihc nicht ganz verstanden den du dazugehängt hast...
 

oc2pus

Ultimate Guru
Oops cut and copy Fehler. Falscher Link, sorry. Ich werde den noch mal suchen und dann nachreichen

Mich interessiert dieses Thema auch, wäre schön wenn du bei Erfolg mal kurz laut geben könntest ;)
 
OP
K

komaii

Member
sodala jetzt funktionierts endlich genauso wie ich es haben möchte...
genauso wie ich vermutet habe, ein einziger parameter hatte nicht gestimmt....

in der "smtpd.conf" hatte ich stehn:
sql_select: SELECT %p FROM mailusers WHERE account = '%u@%r'

leider kannte das das sql nicht das feld, den in meiner tabelle heisst das "password". und wenn sql varaible %p fragt aber "userPassword" ab.

so stimmts nun:
sql_select: SELECT `password` FROM mailusers WHERE account = '%
u@%r'

na endlich funktioniert alles einwandfrei, ich danke noch allen für die hilfe und werd mich jetzt auf TLS stürtzen ;o)

lg, komaii
 
Status
Für weitere Antworten geschlossen.
Oben