# sals auth fehler



## Rupertt (1. Sep. 2010)

Hallo,

ich habe ein ispconfig system nach diesem http://www.howtoforge.com/perfect-server-opensuse-11.2-x86_64-ispconfig-3-p5 howto aufgesetzt.

Wenn ich mit smtp eine mail verschicken möchte kommt folgender Fehler:


```
Sep  1 16:53:56 panel postfix/smtpd[28060]: warning: unknown[192.168.1.30]: SASL PLAIN authentication failed: authentication failure
Sep  1 16:53:56 panel postfix/smtpd[28060]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Sep  1 16:53:56 panel postfix/smtpd[28060]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Sep  1 16:53:56 panel postfix/smtpd[28060]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Sep  1 16:53:56 panel postfix/smtpd[28060]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
```
Ich habe einige Beiträge zu diesem Fehler gefunden, aber keiner der 
Vorschläge hat geholfen, viele Beiträge sind auch schon 5jahre alt, ka was sich in der zeit schon geändert hat.


danke

EDIT:

ok, ichn hab den Fehler gefunden und die sasldb2 Datei mit saslpasswd angelegt und bin nun beim nächsten Fehler der behoben werden muss




```
Sep  2 08:50:24 panel postfix/smtpd[23794]: warning: SASL authentication failure: Password verification failed
Sep  2 08:50:24 panel postfix/smtpd[23794]: warning: unknown[192.168.1.30]: SASL PLAIN authentication failed: authentication failure
Sep  2 08:50:24 panel postfix/smtpd[23794]: warning: unknown[192.168.1.30]: SASL LOGIN authentication failed: authentication failure
```


```
Sep  2 08:48:39 panel saslauthd[23359]: DEBUG: auth_pam: pam_authenticate failed: User not known to the underlying authentication module
Sep  2 08:48:39 panel saslauthd[23359]: do_auth         : auth failure: [user=rupertt@local.local] [service=imap] [realm=] [mech=pam] [reason=PAM auth error]
```
saslfinger gibt:


```
# ./saslfinger -c
saslfinger - postfix Cyrus sasl configuration Thu Sep  2 08:51:57 CEST 2010
version: 1.0.2
mode: client-side SMTP AUTH

-- basics --
Postfix: 2.7.1
System: 
Welcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l).

-- smtp is linked to --
        libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00002b598b6a5000)

-- active SMTP AUTH and TLS parameters for smtp --
relayhost = *
smtp_sasl_auth_enable = no
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = 
smtp_use_tls = no


-- listing of /usr/lib64/sasl2 --
total 732
drwxr-xr-x  2 root root  4096 Aug 19 12:41 .
drwxr-xr-x 41 root root 32768 Aug 23 17:38 ..
-rwxr-xr-x  1 root root 16248 Sep  5  2009 libanonymous.so
....

-- listing of /etc/sasl2 --
total 20
drwxr-xr-x  2 root root  4096 Aug 19 12:41 .
drwxr-xr-x 81 root root 12288 Sep  2 08:12 ..
-rw-------  1 root root    49 Aug 14 00:19 smtpd.conf


-- permissions for /etc/postfix/sasl_passwd --
-rw------- 1 root root 20 Aug 30 14:37 /etc/postfix/sasl_passwd

-- permissions for /etc/postfix/sasl_passwd.db --
-rw------- 1 root root 12288 Aug 30 14:37 /etc/postfix/sasl_passwd.db

/etc/postfix/sasl_passwd.db is up to date.

-- active services in /etc/postfix/master.cf --
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
smtp      inet  n       -       n       -       -       smtpd -D
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
        -o fallback_relay=
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}  ${extension} ${recipient} ${user} ${nexthop} ${sender} ${extension}  ${recipient} ${user} ${nexthop} ${sender} ${extension} ${recipient}  ${user} ${nexthop} ${sender} ${extension} ${recipient} ${user}  ${nexthop} ${sender} ${extension} ${recipient} ${user} ${nexthop}  ${sender} ${extension} ${recipient} ${user} ${nexthop} ${sender}  ${extension} ${recipient} ${user} ${nexthop} ${sender} ${extension}  ${recipient} ${user} ${nexthop} ${sender}
cyrus     unix  -       n       n       -       -       pipe
  user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr

amavis unix - - - - 2 smtp
        -o smtp_data_done_timeout=1200
        -o smtp_send_xforward_command=yes

127.0.0.1:10025 inet n - - - - smtpd
        -o content_filter=
        -o local_recipient_maps=
        -o relay_recipient_maps=
        -o smtpd_restriction_classes=
        -o smtpd_client_restrictions=
        -o smtpd_helo_restrictions=
        -o smtpd_sender_restrictions=
        -o smtpd_recipient_restrictions=permit_mynetworks,reject
        -o mynetworks=127.0.0.0/8
        -o strict_rfc821_envelopes=yes
        -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
        -o smtpd_bind_address=127.0.0.1

-- mechanisms on * --


-- end of saslfinger output --
```
und einige daten aus der main.conf


```
myhostname = *
program_directory = /usr/lib/postfix
inet_interfaces = all
masquerade_domains = 
mydestination = *, localhost, localhost.localdomain   
defer_transports = 
mynetworks_style = subnet
disable_dns_lookups = no
relayhost = *
mailbox_command = 
mailbox_transport =
strict_8bitmime = no
disable_mime_output_conversion = no
smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf
smtpd_client_restrictions = check_client_access mysql:/etc/postfix/mysql-virtual_client.cf
smtpd_helo_required = no
smtpd_helo_restrictions = 
strict_rfc821_envelopes = no
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf, reject_unauth_destination
smtp_sasl_auth_enable = yes
smtpd_sasl_auth_enable = yes
smtpd_use_tls = yes
smtp_use_tls = no
alias_maps = hash:/etc/aliases
mailbox_size_limit = 524288000
message_size_limit = 10485760
mynetworks = 127.0.0.0/8 [::1]/128
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_mailbox_base = /var/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_tls_security_level = may
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
relay_domains = mysql:/etc/postfix/mysql-virtual_relaydomains.cf
relay_recipient_maps = mysql:/etc/postfix/mysql-virtual_relayrecipientmaps.cf
virtual_create_maildirsize = yes
virtual_maildir_extended = yes
virtual_mailbox_limit_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = "The user you are trying to reach is over quota."
virtual_overquota_bounce = yes
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_
maildrop_destination_concurrency_limit = 1
maildrop_destination_recipient_limit = 1
virtual_transport = maildrop
header_checks = regexp:/etc/postfix/header_checks
mime_header_checks = regexp:/etc/postfix/mime_header_checks
nested_header_checks = regexp:/etc/postfix/nested_header_checks
body_checks = regexp:/etc/postfix/body_checks
content_filter = amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings
#dovecot_destination_recipient_limit = 1
#smtpd_sasl_type = dovecot
smtpd_sasl_path = smtpd
#smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
#smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
```


----------



## Till (2. Sep. 2010)

ISPConfig 3 verwendet garkeine  sasldb2, diese Datei darf in dem Setup also auch garnicht existieren. SASL authentifiziert bei Dir gegen das falsche Medium, es muss sich über pam_mysql authentifizieren und nicht sasldb.

Führe bitte ein manuelles ISPConfig Update durch und wähle aus dass die Diense rekonfiguriert werden. Poste dann die komplette Ausgabe die der ISPConfig Updater erzeugt.

Außerdem stehen da ein paar Sachen in der main.cf die nicht in ein virtuelles setup gehören wie z.B. "smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd". Ich vermute mal Du hast die selbst hinzugefügt. Mach bitte alle Änderungen an der main.cf rückgängig, die Du im sasl Bereich gemacht hast.


----------



## Rupertt (2. Sep. 2010)

er scheint jetzt immer noch sasl nutzen zu wollen,
in /etc/pam/stmp steht das die DB genutzt werden soll. die logins stimmen auch, in der DB selber ist mein user angelegt.
Kann ich die main.cf mal komplett löschen?


```
# php -f update.php 


--------------------------------------------------------------------------------
 _____ ___________   _____              __ _       
|_   _/  ___| ___ \ /  __ \            / _(_)      
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _ 
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |
 _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| |
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, |
                                              __/ |
                                             |___/ 
--------------------------------------------------------------------------------


>> Update  

Operating System: openSUSE or compatible, unknown version.

This application will update ISPConfig 3 on your server.
MySQL root password []: bbmysql

Reconfigure Services? (yes,no) [yes]: yes

Configuring Postfix
Configuring Jailkit
Configuring SASL
Configuring PAM
Configuring Courier
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring MyDNS
Configuring Apache
Configuring vlogger
Configuring Apps vhost
Configuring Database
Configuring Firewall
Updating ISPConfig
ISPConfig Port [8080]: 

Reconfigure Crontab? (yes,no) [yes]: yes

Updating Crontab
Restarting services ...
Restarting service MySQL 
Shutting down service MySQL ..done
Starting service MySQL ..done
Shutting down mail service (Postfix)..done
Starting mail service (Postfix)..done
Shutting down service saslauthd..done
Starting service saslauthd..done
Daemon [5480] terminated by SIGTERM
Shutting down virus-scanner (amavisd-new): ..done
Starting virus-scanner (amavisd-new): ..done
Shutting down Clam AntiVirus daemon ..done
Starting Clam AntiVirus daemon ..done
Shutting down Courier Authentication Daemon ..done
Starting Courier Authentication Daemon ..done
Shutting down Courier-IMAP ..done
Starting Courier-IMAP ..done
Shutting down Courier-IMAP (SSL)..done
Starting Courier-IMAP (SSL)..done
Shutting down Courier-POP3 ..done
Starting Courier-POP3 ..done
Shutting down Courier-POP3 (SSL)..done
Starting Courier-POP3 (SSL)..done
[Thu Sep 02 10:55:27 2010] [warn] NameVirtualHost 193.175.82.152:443 has no VirtualHosts
[Thu Sep 02 10:55:27 2010] [warn] NameVirtualHost 193.175.82.152:443 has no VirtualHosts
Syntax OK
Shutting down httpd2 (waiting for all children to terminate) ..done
[Thu Sep 02 10:55:28 2010] [warn] NameVirtualHost 193.175.82.152:443 has no VirtualHosts
[Thu Sep 02 10:55:28 2010] [warn] NameVirtualHost 193.175.82.152:443 has no VirtualHosts
Starting httpd2 (prefork) ..done
Shutting down pure-ftpd..done
Starting pure-ftpd..done
Update finished.
```


----------



## Till (2. Sep. 2010)

> er scheint jetzt immer noch sasl nutzen zu wollen,


Was ja auch korrekt ist. Denn SASL authentifiert ja die smtp Verbindungen und unterstützt eine große Bandbreite an Authentifizierungsmachanismne von Textdateien über SQL Datenbankne bis hin zu ldap. In dieser Konfiguration muss sasl über mysql authentifizieren und nicht die sasl2db



> Kann ich die main.cf mal komplett löschen?


Nein. ISPConfig modifiziert nur die standard main.cf von opensuse, es installiert keine neue main.cf. Wenn Du sie löschst, dann startet postfic einfach nicht mehr und ispconfig kann ihn auch nicht mehr rekonfigurieren.

Die Ausgabe vom Update sieht swoeit gut aus, da er courier erkannt hat denn in Deiner main.cf stand auch was von dovecot Authentifizierung drin. da schein also irgend eine andere Software schon vorab die standard SuSE main.cf modifiziert zu haben.

Was mich in Der Ausgabe oben etwas wundert ist:



> Welcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l).


Es handelt sich also nicht um ein opensuse system? Wenn es SLES und nicht opensuse ist, dann kann es ganz einfach sein dass das sles sasl Paket garkein mysql unterstützt.


----------



## Rupertt (2. Sep. 2010)

Zitat von Till:


> Was ja auch korrekt ist. Denn SASL authentifiert ja die smtp Verbindungen und unterstützt eine große Bandbreite an Authentifizierungsmachanismne von Textdateien über SQL Datenbankne bis hin zu ldap. In dieser Konfiguration muss sasl über mysql authentifizieren und nicht die sasl2db
> 
> 
> 
> ...


Ich hab leider kein howto für SLES gefundem, daher musste ich mich für eines entscheiden und had eins für OpenSuse11.2 genommen.


ich habe mal die original main.cf erstellt und nochmal update laufen lassen und mach grad nen reboot da der fehler der selbe war, den postfix hatte ich schon neu gestart.


Die Fehlermeldung ändert sich je nachdem wie ich es im thunderbird einstelle:



```
==> mail.warn <==
Sep  2 12:26:06 panel postfix/smtpd[2307]: warning: dict_nis_init: NIS domain name not set - NIS lookups disabled
Sep  2 12:26:07 panel postfix/smtpd[2307]: warning: SASL authentication failure: no secret in database
Sep  2 12:26:07 panel postfix/smtpd[2307]: warning: unknown[192.168.1.30]: SASL CRAM-MD5 authentication failed: authentication failure

==> mail.info <==
Sep  2 12:26:13 panel postfix/smtpd[2307]: disconnect from unknown[192.168.1.30]
Sep  2 12:26:28 panel postfix/smtpd[2307]: connect from unknown[192.168.1.30]

==> mail.warn <==
Sep  2 12:26:28 panel postfix/smtpd[2307]: warning: SASL authentication failure: Password verification failed
Sep  2 12:26:28 panel postfix/smtpd[2307]: warning: unknown[192.168.1.30]: SASL PLAIN authentication failed: authentication failure
Sep  2 12:26:28 panel postfix/smtpd[2307]: warning: unknown[192.168.1.30]: SASL LOGIN authentication failed: authentication failure
```
ein restart von saslauthd gibt:


```
Sep  2 12:28:01 panel /usr/sbin/cron[2333]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep  2 12:28:37 panel sshd[2350]: Accepted publickey for root from 192.168.1.30 port 50570 ssh2
Sep  2 12:28:58 panel saslauthd[1891]: server_exit     : child exited: 1891
Sep  2 12:28:58 panel saslauthd[1889]: server_exit     : child exited: 1889
Sep  2 12:28:58 panel saslauthd[1879]: handle_sigchld  : child exited: 1889
Sep  2 12:28:58 panel saslauthd[1879]: handle_sigchld  : child exited: 1891
Sep  2 12:28:58 panel saslauthd[1887]: server_exit     : child exited: 1887
Sep  2 12:28:58 panel saslauthd[1879]: handle_sigchld  : child exited: 1887
Sep  2 12:28:58 panel saslauthd[1886]: server_exit     : child exited: 1886
Sep  2 12:28:58 panel saslauthd[1879]: handle_sigchld  : child exited: 1886
Sep  2 12:28:58 panel saslauthd[1879]: get_accept_lock : acquired accept lock
Sep  2 12:28:58 panel saslauthd[1879]: server_exit     : pid file lock removed: /var/run/sasl2//saslauthd.pid.lock
Sep  2 12:28:58 panel saslauthd[1879]: ipc_cleanup     : accept lock file removed: /var/run/sasl2//mux.accept
Sep  2 12:28:58 panel saslauthd[1879]: ipc_cleanup     : socket removed: /var/run/sasl2//mux
Sep  2 12:28:58 panel saslauthd[1879]: server_exit     : master exited: 0
Sep  2 12:28:58 panel saslauthd[2416]: detach_tty      : master pid is: 2416
Sep  2 12:28:58 panel saslauthd[2416]: ipc_init        : listening on socket: /var/run/sasl2//mux
Sep  2 12:29:01 panel /usr/sbin/cron[2422]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
```


----------



## Till (2. Sep. 2010)

ISPConfig wurde nie unter SLES getestet, es kann also sein dass es darunter nicht funktioniert bzw. der Installer es nicht konfigurieren kann. Das wahrscheinlichste Problem ist aber dass einige SLES Pakete mit falschen Optionen, also ohne mysql Support, kompiliert sind. Die SASL Fehlermeldungen deuten darauf hin.

Ich würde Dir raten eine von ISPConfig unterstützte Linux Distribution zu verwenden, am besten Geeignet ist Debian Linux.


----------



## Rupertt (2. Sep. 2010)

Zitat von Till:


> ISPConfig wurde nie unter SLES getestet, es kann also sein dass es darunter nicht funktioniert bzw. der Installer es nicht konfigurieren kann. Das wahrscheinlichste Problem ist aber dass einige SLES Pakete mit falschen Optionen, also ohne mysql Support, kompiliert sind. Die SASL Fehlermeldungen deuten darauf hin.
> 
> Ich würde Dir raten eine von ISPConfig unterstützte Linux Distribution zu verwenden, am besten Geeignet ist Debian Linux.


würd ich auch gern, nur sind mir bei der distri wahl die hände gebunden


----------



## Till (2. Sep. 2010)

Dann bleiben 2 Möglichkeiten, das eine ist dass Du versuchst Dovecot statt courier zu verwenden, dann wird nämlich sasl nicht benötigt. Das Setup mit Dovecot ist hier beschrieben:

http://www.howtoforge.com/perfect-server-opensuse-11.3-x86_64-ispconfig-3

Es kann aber natürlich sein dass die sles Dovecot Pakete auch kein mysql unterstützen, dass kann ich Dir so nicht vorher sagen.

Oder Du kompilierst Dir neue sasl Pakete mit mysql Unterstützung. Wenn Du aber pech hast kommt dann nur das nächste Paket ohne mysql Untersttzung zum Vorschein und Du musst im schlimmsten fall alle zum mail setup gehörigen Teile manuell neu kompilieren.


----------

