Postfix, SASL, MySql: CRAMMD5 geht nicht.

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
sirelvis
Posts: 8
Joined: 2003-07-06 13:25

Postfix, SASL, MySql: CRAMMD5 geht nicht.

Post by sirelvis » 2003-07-06 13:39

Nach einem nich ganz leichten Kampf mit Postfix (mein erstes mal, dass ich einen MTA aufsetze) lüft er jetzt so wie er soll. SMTP AUTH funktioniert soweit auch... die Datenbank wird abgefragt und alles ist gut. Außer, dass CRAMMD5 einfach nicht will. Wenn ich mich per Telnet einlogge krieg ich nur 250-AUTH LOGIN PLAIN und nix anders. SASL ist 1.5.28 und mit CRAMMD5 kompiliert (/usr/lib/libcrammd5.so gibt es auch), /etc/postfix/sasl/smtpd.conf (sowie /usr/lib/sasl/smtpd.conf) ist mit "pwcheck_method: PAM" gefüllt und /etc/pam.d/smtp entsprechend eingestellt (crypt=1 muss ich dort ja nicht machen, solang die Passwörter als Plaintext in der DB stehen, oder?).

Was mache ich falsch? Wo liegt mein Probem?

Danke
Florian Wagner

sirelvis
Posts: 8
Joined: 2003-07-06 13:25

Re: Postfix, SASL, MySql: CRAMMD5 geht nicht.

Post by sirelvis » 2003-07-06 20:16

Ich hab jetzt noch probiert SASL2 zu installiern und Postfix damit zu linken... und siehe es geht... zumindest laut EHLO kann er jetzt CRAM-MD5. Ã?berprüfen ob das wirklich stimmt kann ich dummerweise nicht, da jetzt SMTP AUTH garnicht mehr geht. Sobald ich eine Mail verschicken will schreibt er folgende drei Zeilen in /var/log/syslog (oder /var/log/mail.err) und die Verbindung verabschiedet sich.

Code: Select all

Jul  6 20:17:24 debian postfix/smtpd[417]: connect from pD9523DB0.dip.t-dialin.net[217.82.61.176]
Jul  6 20:17:25 debian postfix/master[323]: warning: process /usr/lib/postfix/smtpd pid 417 killed by signal 11
Jul  6 20:17:25 debian postfix/master[323]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
Hier noch meine /etc/postfix/main.cf (irgendwo darin muss das Problem ja wohl liegen):

Code: Select all

command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
setgid_group = postdrop
biff = no

mydomain      = sirelvis.de
myhostname    = $mydomain
morigin       = $mydomain
mydestination = localhost.$mydomain, localhost
mynetworks    = 127.0.0.0/8
relay_domains = $mydomain, $mydestination

append_dot_mydomain = no
relayhost =
mailbox_command =
mailbox_size_limit = 0
recipient_delimiter = +

home_mailbox = /

virtual_mailbox_base    = /var/vmail
virtual_mailbox_maps    = mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf
virtual_alias_maps      = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
virtual_uid_maps        = static:106
virtual_gid_maps        = static:106
virtual_transport       = virtual
local_recipient_maps    = $virtual_alias_maps $virtual_mailbox_maps

broken_sasl_auth_clients    = yes
smtpd_sasl_auth_enable      = yes
smtpd_sasl_security_options = noanonymous

maps_rbl_domains = relays.ordb.org,
                   dev.null.dk,
                   spews.relays.osirusoft.com,
                   spamhaus.relays.osirusoft.com,
                   opm.blitzed.org

smtpd_recipient_restrictions = permit_mynetworks,
                               permit_sasl_authenticated,
                               reject_maps_rbl,
                               check_relay_domains,
                               permit

mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Re: Postfix, SASL, MySql: CRAMMD5 geht nicht.

Post by mark » 2003-07-07 20:59

Hi,

erstmal vorweg:
CramMD5 läuft nur, wenn du die sasldb oder die sasldb2 verwendest. Mit pam geht das leider nicht. Mit pam kannst du nur plain und login verwenden.

Tip: Wenn du das mit TLS kombinierst, werden die Passwörter nicht im Klartext übertragen.

Gruß
Mark

sirelvis
Posts: 8
Joined: 2003-07-06 13:25

Re: Postfix, SASL, MySql: CRAMMD5 geht nicht.

Post by sirelvis » 2003-07-07 22:41

Oh ok... danke!
Das dumme ist nur, dass mein derzeiges Problem garnix damit zu tun zu haben scheint. Wenn ich die Logfiles richtige lese (hab mittlerweile smtpd -v laufen) dann semmelt der ab, bevor er überhaupt daran denkt irgendwelche Datenbanken oder PAM zu befragen. Um das zu testen hab ich pwcheck_method auf alwaystrue gesetzt und vorsichtshalber noch alle cram und digest Module aus dem sasl Verzeichnis genommen, sowie meinem Mail Client gesagt er soll nur AUTH PLAIN machen... hilft aber alles ned.

Code: Select all

Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: mynetworks ~? debug_peer_list
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: mynetworks ~? fast_flush_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: mynetworks ~? mynetworks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? debug_peer_list
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? fast_flush_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? mynetworks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? permit_mx_backup_networks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? qmqpd_authorized_clients
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: relay_domains ~? relay_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: permit_mx_backup_networks ~? debug_peer_list
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: permit_mx_backup_networks ~? fast_flush_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: permit_mx_backup_networks ~? mynetworks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: permit_mx_backup_networks ~? permit_mx_backup_networks
Jul  7 22:36:47 debian postfix/smtpd[27763]: maps_append: mysql:/etc/postfix/mysql-virtual_alias_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set username to 'postfix'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set password to 'pass'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set database name to 'postfix'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set table name to 'alias'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set select_field to 'goto'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set where_field to 'address'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set additional_conditions to ''
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): adding host '127.0.0.1' to list of mysql server hosts
Jul  7 22:36:47 debian postfix/smtpd[27763]: dict_open: mysql:/etc/postfix/mysql-virtual_alias_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: maps_append: mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set username to 'postfix'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set password to 'pass'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set database name to 'postfix'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set table name to 'mailbox'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set select_field to 'maildir'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set where_field to 'username'
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): set additional_conditions to ''
Jul  7 22:36:47 debian postfix/smtpd[27763]: mysqlname_parse(): adding host '127.0.0.1' to list of mysql server hosts
Jul  7 22:36:47 debian postfix/smtpd[27763]: dict_open: mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: maps_append: mysql:/etc/postfix/mysql-virtual_alias_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: maps_append: mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? debug_peer_list
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? fast_flush_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? mynetworks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? permit_mx_backup_networks
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? qmqpd_authorized_clients
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? relay_domains
Jul  7 22:36:47 debian postfix/smtpd[27763]: match_string: smtpd_access_maps ~? smtpd_access_maps
Jul  7 22:36:47 debian postfix/smtpd[27763]: name_mask: noanonymous
Jul  7 22:36:47 debian postfix/smtpd[27763]: watchdog_create: 0x807f0d8 18000
Jul  7 22:36:47 debian postfix/smtpd[27763]: watchdog_stop: 0x807f0d8
Jul  7 22:36:47 debian postfix/smtpd[27763]: watchdog_start: 0x807f0d8
Jul  7 22:36:47 debian postfix/smtpd[27763]: connection established
Jul  7 22:36:47 debian postfix/smtpd[27763]: master_notify: status 0
Jul  7 22:36:47 debian postfix/smtpd[27763]: name_mask: resource
Jul  7 22:36:47 debian postfix/smtpd[27763]: name_mask: software
Jul  7 22:36:47 debian postfix/smtpd[27763]: connect from pD9523747.dip.t-dialin.net[217.82.55.71]
Jul  7 22:36:47 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 220 sirelvis.de ESMTP Postfix (Debian/GNU)
Jul  7 22:36:47 debian postfix/smtpd[27763]: watchdog_pat: 0x807f0d8
Jul  7 22:36:51 debian postfix/smtpd[27763]: < pD9523747.dip.t-dialin.net[217.82.55.71]: EHLO [192.168.1.50]
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-sirelvis.de
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-PIPELINING
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-SIZE 10240000
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-VRFY
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-ETRN
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-AUTH LOGIN PLAIN OTP
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250-AUTH=LOGIN PLAIN OTP
Jul  7 22:36:51 debian postfix/smtpd[27763]: match_hostname: pD9523747.dip.t-dialin.net ~? 127.0.0.0/8
Jul  7 22:36:51 debian postfix/smtpd[27763]: match_hostaddr: 217.82.55.71 ~? 127.0.0.0/8
Jul  7 22:36:51 debian postfix/smtpd[27763]: match_list_match: pD9523747.dip.t-dialin.net: no match
Jul  7 22:36:51 debian postfix/smtpd[27763]: match_list_match: 217.82.55.71: no match
Jul  7 22:36:51 debian postfix/smtpd[27763]: > pD9523747.dip.t-dialin.net[217.82.55.71]: 250 8BITMIME
Jul  7 22:36:51 debian postfix/smtpd[27763]: watchdog_pat: 0x807f0d8
Jul  7 22:36:51 debian postfix/smtpd[27763]: < pD9523747.dip.t-dialin.net[217.82.55.71]: AUTH PLAIN BALBLA (ich glaube das sollte ich hier nicht posten)
Jul  7 22:36:51 debian postfix/smtpd[27763]: smtpd_sasl_authenticate: sasl_method PLAIN, init_response BALBLA (ich glaube das sollte ich hier nicht posten)
Jul  7 22:36:51 debian postfix/smtpd[27763]: smtpd_sasl_authenticate: decoded initial response
Jul  7 22:36:51 debian postfix/master[27759]: warning: process /usr/lib/postfix/smtpd pid 27763 killed by signal 11
Jul  7 22:36:51 debian postfix/master[27759]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
So wie ich das sehe verabschiedet er sich beim decoden oder kurz danach. Auch mein Test mit dem SASL MySql Modul verleitet mich zum gleichen Schluß... im Query log taucht nix von wegen Passwortabfrage seitens SASL auf.

sirelvis
Posts: 8
Joined: 2003-07-06 13:25

Re: Postfix, SASL, MySql: CRAMMD5 geht nicht.

Post by sirelvis » 2003-07-10 16:00

Es war wohl (wie ich irgendwo gelesen habe) ein Linking Problem oder ähnliches. Ich hab heute alle Packages (Debian + selber gebaute) nochmal runtergehaut und die Debian unstable draufgemacht und jetzt geht er. Danke libsasl2 MySql Modul geht jetzt auch CRAM-MD5 für SMTP AUTH mit Daten aus der MySql DB.