PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Postfix, SMTP Auth, SASL



debian-climber
17.10.02, 09:48
Hallo zusammen,

bei mir sieht es zur Zeit folgender massen aus.
Mein Postfix läuft immer noch und mittlerweile ist auch der relayhost mit smtp auth eingetragen. Mails verschicken über den relayhost funktioniert einwandfrei.
ABER:
Ich wollte dass man nur noch mails über den relayhost abschicken darf wenn man sich authorisiert hat. Das ganze hab ich mit sasl versucht.
Wenn ich bei Kmail auf meinen SMTP Server klicke und "Fähigkeiten des Servers testen" mache bekomme ich auch bei der Authorisierungs Methode dass nur noch CRAM-MD5 und DIGEST-MD5 erlaubt ist. Versuch ich ne mail vom client aus an irgenwas@web.de zu schicken lässt er die mail nicht durch. in der log Datei /var/log/mail.info bringt er mir dann:

Oct 17 09:35:34 caribic postfix/smtpd[10011]: connect from unknown[192.168.1.41]
Oct 17 09:35:34 caribic postfix/smtpd[10011]: warning: unknown[192.168.1.41]: SASL DIGEST-MD5 authentication failed
Oct 17 09:35:44 caribic postfix/smtpd[10011]: disconnect from unknown[192.168.1.41]

den sasl user hab ich mit
saslpasswd -a smtp -c test
password: test
password: test angelegt

mit sasldblistusers bringt er mir

user: test realm: caribic mech: PLAIN
user: test realm: caribic mech: CRAM-MD5
user: test realm: caribic mech: DIGEST-MD5

der user ist also da

meine main.cf sieht so aus.

postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
mail_owner = postfix
mail_spool_directory = /var/mail/
mailbox_size_limit = 0
mailbox_transport = cyrus
mailq_path = /usr/bin/mailq
manpage_directory = /usr/local/man
mydestination = caribic.test.com, localhost.test.com, localhost
myhostname = caribic.test.com
mynetworks = 127.0.0.0/8 192.168.1.0/24
myorigin = /etc/mailname
newaliases_path = /usr/bin/newaliases
program_directory = /usr/lib/postfix
queue_directory = /var/spool/postfix
readme_directory = no
recipient_delimiter = +
relayhost = auth.smtp.kundenserver.de
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth
smtp_sasl_security_options = noanonymous, noplaintext
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, permit_mx_backup, check_relay_domains
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous, noplaintext

Weis jemand woran das liegen könnte?

Viele Grüsse Matthias

Jasper
17.10.02, 10:41
Wenn ich bei Kmail auf meinen SMTP Server klicke und "Fähigkeiten des Servers testen" mache bekomme ich auch bei der Authorisierungs Methode dass nur noch CRAM-MD5 und DIGEST-MD5 erlaubt ist. Versuch ich ne mail vom client aus an irgenwas@web.de zu schicken lässt er die mail nicht durch. in der log Datei /var/log/mail.info bringt er mir dann:

Oct 17 09:35:34 caribic postfix/smtpd[10011]: connect from unknown[192.168.1.41]
Oct 17 09:35:34 caribic postfix/smtpd[10011]: warning: unknown[192.168.1.41]: SASL DIGEST-MD5 authentication failed
Oct 17 09:35:44 caribic postfix/smtpd[10011]: disconnect from unknown[192.168.1.41]


ich vermute, du verwendest saslv1 und nicht v2.

PLAIN hast du mit:

smtpd_sasl_security_options = noanonymous, noplaintext

explizit verboten. sieh ausserdem in das auth-logfile (syslog-facility auth.*). da loggt sasl hinein.

ausserdem solltest du dir die berechtigungen von /etc/sasldb ansehen. der postfix-user muss diese lesen (im falle von auto-transition auch schreiben) können.und ausserdem musst du sasl auch sagen, welches plugin, in deinem falle sasldb, er verwenden soll:

$ cat /usr/lib/sasl/smtpd.conf
pwcheck_method:sasldb

-j

debian-climber
17.10.02, 11:12
Hi Jasper,

#ich vermute, du verwendest saslv1 und nicht v2.
ich habe beides installiert -> benutzt wird aber saslv1

#PLAIN hast du mit: smtpd_sasl_security_options = noanonymous, noplaintext explizit verboten.
wollte ich ja abstellen, war geplant! muss ich das wieder ändern?

sieh ausserdem in das auth-logfile (syslog-facility auth.*). da loggt sasl hinein.

# ausserdem solltest du dir die berechtigungen von /etc/sasldb ansehen. der postfix-user muss diese lesen (im falle von
# auto-transition auch schreiben) können.
ich hab auf die datei chmod 777 gemacht und getestet geht auch nicht
ich hab die datei auch nochmal in /var/spool/postfix/etc/sasldb -> laut beschreibung sollte sie hier drin stehen

# und ausserdem musst du sasl auch sagen, welches plugin, in deinem falle sasldb, er verwenden soll:
# $ cat /usr/lib/sasl/smtpd.conf
# pwcheck_method:sasldb
hab ich gemacht, allerdings liegt die datei bei mir unter /usr/local/lib/sasl/smtpd.conf

sonst noch eine Idee
Mein System Debian Woody

Viel Gruesse Matthias

Jasper
17.10.02, 12:30
#PLAIN hast du mit: smtpd_sasl_security_options = noanonymous, noplaintext explizit verboten.
wollte ich ja abstellen, war geplant! muss ich das wieder ändern?


wenn du plain nicht verwenden willst, ist das korrekt so.



ich hab die datei auch nochmal in /var/spool/postfix/etc/sasldb -> laut beschreibung sollte sie hier drin stehen


nur wenn smtpd chrooted läuft (ist m.E. nicht notwendig).



sonst noch eine Idee


das auth-logfile? da steht drin, was sasl macht bzw. nicht macht und warum nicht.

-j

debian-climber
17.10.02, 12:47
Hier der auszug aus der /var/log/syslog
die andere datei syslog-facility oder so hab ich nicht gefunden.

Oct 17 12:42:25 caribic postfix/smtpd[11486]: connect from unknown[192.168.1.6]
Oct 17 12:42:25 caribic postfix/smtpd[11486]: warning: unknown[192.168.1.6]: SASL DIGEST-MD5 authentication failed
Oct 17 12:42:35 caribic postfix/smtpd[11486]: disconnect from unknown[192.168.1.6]

Muss ich in der Datei /etc/postfix/access oder so noch irgendwelche daten (Rechner namen, Personen Namen, Mailnamen o.ä.) eintragen??? -> unknown[192.168.1.6]

Viele Grüsse
Matthias

Jasper
17.10.02, 13:23
Hier der auszug aus der /var/log/syslog
die andere datei syslog-facility oder so hab ich nicht gefunden.


sieh in die /etc/syslog.conf. da steht u.U. ein eintrag drin, der so aussieht:

auth.*, authpriv.* /var/log/auth

wenn du keinen solchen oder ähnlichen eintrag findest, trag einen ein und restarte syslog.



Muss ich in der Datei /etc/postfix/access oder so noch irgendwelche daten (Rechner namen, Personen Namen, Mailnamen o.ä.) eintragen??? -> unknown[192.168.1.6]


nein, ist nicht notwendig. das unknown heisst ja nur, dass postfix per dns keinen namen zu der ip gefunden hat.

-j

debian-climber
17.10.02, 13:30
/var/log/auth.log wäre dann die datei die auf das zutreffen würde

hier ein kleiner auszug:

Oct 17 12:54:01 caribic PAM_unix[11610]: (cron) session opened for user list by (uid=0)
Oct 17 12:54:01 caribic PAM_unix[11610]: (cron) session closed for user list
Oct 17 12:55:02 caribic PAM_unix[11622]: (cron) session opened for user list by (uid=0)
Oct 17 12:55:02 caribic PAM_unix[11622]: (cron) session closed for user list
Oct 17 12:56:01 caribic PAM_unix[11625]: (cron) session opened for user list by (uid=0)
Oct 17 12:56:01 caribic PAM_unix[11625]: (cron) session closed for user list
Oct 17 12:57:01 caribic PAM_unix[11636]: (cron) session opened for user list by (uid=0)
Oct 17 12:57:01 caribic PAM_unix[11636]: (cron) session closed for user list
Oct 17 12:58:01 caribic PAM_unix[11638]: (cron) session opened for user list by (uid=0)
Oct 17 12:58:01 caribic PAM_unix[11638]: (cron) session closed for user list
Oct 17 12:59:01 caribic PAM_unix[11640]: (cron) session opened for user list by (uid=0)
Oct 17 12:59:01 caribic PAM_unix[11640]: (cron) session closed for user list
Oct 17 13:00:01 caribic PAM_unix[11680]: (cron) session opened for user list by (uid=0)
Oct 17 13:00:01 caribic PAM_unix[11680]: (cron) session closed for user list
Oct 17 13:01:01 caribic PAM_unix[11701]: (cron) session opened for user list by (uid=0)
Oct 17 13:01:01 caribic PAM_unix[11701]: (cron) session closed for user list
Oct 17 13:02:01 caribic PAM_unix[11738]: (cron) session opened for user list by (uid=0)
Oct 17 13:02:01 caribic PAM_unix[11738]: (cron) session closed for user list
Oct 17 13:03:01 caribic PAM_unix[11757]: (cron) session opened for user list by (uid=0)
Oct 17 13:03:01 caribic PAM_unix[11757]: (cron) session closed for user list
Oct 17 13:04:01 caribic PAM_unix[11776]: (cron) session opened for user list by (uid=0)
Oct 17 13:04:01 caribic PAM_unix[11776]: (cron) session closed for user list
Oct 17 13:05:01 caribic PAM_unix[11811]: (cron) session opened for user list by (uid=0)
Oct 17 13:05:01 caribic PAM_unix[11811]: (cron) session closed for user list
Oct 17 13:06:01 caribic PAM_unix[11830]: (cron) session opened for user list by (uid=0)
Oct 17 13:06:01 caribic PAM_unix[11830]: (cron) session closed for user list
Oct 17 13:07:01 caribic PAM_unix[11864]: (cron) session opened for user list by (uid=0)
Oct 17 13:07:01 caribic PAM_unix[11864]: (cron) session closed for user list
Oct 17 13:08:01 caribic PAM_unix[11899]: (cron) session opened for user list by (uid=0)
Oct 17 13:08:01 caribic PAM_unix[11899]: (cron) session closed for user list
Oct 17 13:08:01 caribic PAM_unix[11900]: (cron) session opened for user mail by (uid=0)
Oct 17 13:08:01 caribic PAM_unix[11900]: (cron) session closed for user mail
Oct 17 13:09:01 caribic PAM_unix[11923]: (cron) session opened for user list by (uid=0)
Oct 17 13:09:01 caribic PAM_unix[11923]: (cron) session closed for user list
Oct 17 13:10:01 caribic PAM_unix[11955]: (cron) session opened for user list by (uid=0)
Oct 17 13:10:01 caribic PAM_unix[11955]: (cron) session closed for user list
Oct 17 13:11:01 caribic PAM_unix[11974]: (cron) session opened for user list by (uid=0)
Oct 17 13:11:01 caribic PAM_unix[11974]: (cron) session closed for user list
Oct 17 13:12:01 caribic PAM_unix[11993]: (cron) session opened for user list by (uid=0)
Oct 17 13:12:01 caribic PAM_unix[11993]: (cron) session closed for user list
Oct 17 13:13:01 caribic PAM_unix[11997]: (cron) session opened for user list by (uid=0)
Oct 17 13:13:01 caribic PAM_unix[11997]: (cron) session closed for user list
Oct 17 13:14:01 caribic PAM_unix[11999]: (cron) session opened for user list by (uid=0)
Oct 17 13:14:01 caribic PAM_unix[11999]: (cron) session closed for user list
Oct 17 13:15:01 caribic PAM_unix[12062]: (cron) session opened for user list by (uid=0)
Oct 17 13:15:01 caribic PAM_unix[12062]: (cron) session closed for user list
Oct 17 13:16:01 caribic PAM_unix[12122]: (cron) session opened for user list by (uid=0)
Oct 17 13:16:01 caribic PAM_unix[12122]: (cron) session closed for user list
Oct 17 13:17:01 caribic PAM_unix[12151]: (cron) session opened for user list by (uid=0)
Oct 17 13:17:01 caribic PAM_unix[12151]: (cron) session closed for user list
Oct 17 13:18:01 caribic PAM_unix[12163]: (cron) session opened for user list by (uid=0)
Oct 17 13:18:01 caribic PAM_unix[12163]: (cron) session closed for user list
Oct 17 13:19:01 caribic PAM_unix[12176]: (cron) session opened for user list by (uid=0)
Oct 17 13:19:01 caribic PAM_unix[12176]: (cron) session closed for user list
Oct 17 13:20:01 caribic PAM_unix[12193]: (cron) session opened for user list by (uid=0)
Oct 17 13:20:01 caribic PAM_unix[12193]: (cron) session closed for user list
Oct 17 13:21:01 caribic PAM_unix[12199]: (cron) session opened for user list by (uid=0)
Oct 17 13:21:01 caribic PAM_unix[12199]: (cron) session closed for user list
Oct 17 13:22:01 caribic PAM_unix[12202]: (cron) session opened for user list by (uid=0)
Oct 17 13:22:01 caribic PAM_unix[12202]: (cron) session closed for user list
Oct 17 13:23:01 caribic PAM_unix[12204]: (cron) session opened for user list by (uid=0)
Oct 17 13:23:01 caribic PAM_unix[12205]: (cron) session opened for user mail by (uid=0)
Oct 17 13:23:01 caribic PAM_unix[12204]: (cron) session closed for user list
Oct 17 13:23:01 caribic PAM_unix[12205]: (cron) session closed for user mail
Oct 17 13:24:01 caribic PAM_unix[12208]: (cron) session opened for user list by (uid=0)
Oct 17 13:24:01 caribic PAM_unix[12208]: (cron) session closed for user list
Oct 17 13:25:01 caribic PAM_unix[12212]: (cron) session opened for user list by (uid=0)
Oct 17 13:25:01 caribic PAM_unix[12212]: (cron) session closed for user list
Oct 17 13:26:01 caribic PAM_unix[12217]: (cron) session opened for user list by (uid=0)
Oct 17 13:26:01 caribic PAM_unix[12217]: (cron) session closed for user list
Oct 17 13:27:01 caribic PAM_unix[12223]: (cron) session opened for user list by (uid=0)
Oct 17 13:27:01 caribic PAM_unix[12223]: (cron) session closed for user list
Oct 17 13:28:01 caribic PAM_unix[12229]: (cron) session opened for user list by (uid=0)
Oct 17 13:28:01 caribic PAM_unix[12229]: (cron) session closed for user list
da steht aber nichts mit sasl oder so
hilft dir das weiter????

Viele Grüsse
Matthias

Jasper
17.10.02, 14:55
da steht aber nichts mit sasl oder so
hilft dir das weiter????


hmm, lt. quellen (lib/common.c):

#ifdef HAVE_SYSLOG
/* this is the default logging */
static int _sasl_syslog(void *context __attribute__((unused)),
int priority,
const char *message)
{
int syslog_priority;

/* set syslog priority */
switch(priority) {
case SASL_LOG_ERR:
syslog_priority = LOG_ERR;
break;
case SASL_LOG_WARNING:
syslog_priority = LOG_WARNING;
break;
case SASL_LOG_INFO:
syslog_priority = LOG_INFO;
break;
default:
syslog_priority = LOG_DEBUG;
break;
}

/* do the syslog call. do not need to call openlog */
syslog(syslog_priority | LOG_AUTH, "%s", message);

return SASL_OK;
}
#endif /* HAVE_SYSLOG */

wird geloggt und zwar per syslog facility auth.{error,warning,info,debug}.
könnte es sein, dass syslog-support nicht mit einkompiliert wurde?
anderenfalls hab ich auch keine idee weiter.

-j