Problem mit Fetchmail/LMTP und PAM: User doesn't exist

Volker Wysk post at volker-wysk.de
So Mai 8 18:15:35 CEST 2016


Hallo!

Ich habe Dovecot installiert, und kann mit KMail darauf zugreifen. Ich kann 
Nachrichten hineinverschieben, Ornder anlegen usw.

Jetzt versuche ich, die Post mit Fetchmail abzuholen und nach Dovecot per
LMTP zuzustellen. Das funktionert nicht. Ich habe das Problem schließlich 
soweit eingegrenzt, daß es an Dovecot liegt, das den Benutzer zurückweist: 

~ % /etc/init.d/fetchmail debug-run 
...
fetchmail: LMTP< 220 desktop Dovecot ready.
fetchmail: LMTP> LHLO desktop
fetchmail: LMTP< 250-desktop
fetchmail: LMTP< 250-STARTTLS
fetchmail: LMTP< 250-8BITMIME
fetchmail: LMTP< 250-ENHANCEDSTATUSCODES
fetchmail: LMTP< 250 PIPELINING
fetchmail: weitergeleitet an /var/run/dovecot/lmtp
fetchmail: LMTP> MAIL FROM:<post at volker-wysk.de> BODY=7BIT
fetchmail: LMTP< 250 2.1.0 OK
fetchmail: LMTP> RCPT TO:<v at localhost>
fetchmail: LMTP< 550 5.1.1 <v at localhost> User doesn't exist: v at localhost
fetchmail: LMTP-Fehler: 550 5.1.1 <v at localhost> User doesn't exist: 
v at localhost
fetchmail: LMTP-Server mag Empfängeradresse „v at localhost“ nicht
Versuche, mit 127.0.0.1/25 zu verbinden...Verbindung fehlgeschlagen.
fetchmail: Verbindung zu localhost:smtp [127.0.0.1/25] fehlgeschlagen: 
Verbindungsaufbau abgelehnt.
fetchmail: Verbindungsfehler für diesen Abruf:
Name 0: Verbindung zu localhost:smtp [127.0.0.1/25] fehlgeschlagen: 
Verbindungsaufbau abgelehnt.
fetchmail: LMTP> RCPT TO:<v at localhost>
fetchmail: LMTP< 550 5.1.1 <v at localhost> User doesn't exist: v at localhost
fetchmail: kann noch nicht einmal an v senden!
fetchmail: LMTP> RSET
fetchmail: LMTP< 250 2.0.0 OK
...


Dovecot versucht, "v" per PAM zu authentifizieren. Das ist aus /var/log/
mail.log:

May  8 18:04:57 desktop dovecot: lmtp(3905): Connect from local
May  8 18:04:57 desktop dovecot: auth: Debug: Loading modules from directory: 
/usr/lib/dovecot/modules/auth
May  8 18:04:57 desktop dovecot: auth: Debug: Module loaded: /usr/lib/dovecot/
modules/auth/libdriver_sqlite.so
May  8 18:04:57 desktop dovecot: auth: Debug: Read auth token secret from /
var/run/dovecot/auth-token-secret.dat
May  8 18:04:57 desktop dovecot: auth: Debug: master in: 
USER#0111#011v at localhost#011service=lmtp
May  8 18:04:57 desktop dovecot: auth-worker(3908): Debug: Loading modules 
from directory: /usr/lib/dovecot/modules/auth
May  8 18:04:57 desktop dovecot: auth-worker(3908): Debug: Module loaded: /
usr/lib/dovecot/modules/auth/libdriver_sqlite.so
May  8 18:04:57 desktop dovecot: auth-worker(3908): Debug: pam(v at localhost): 
lookup
May  8 18:04:57 desktop dovecot: auth-worker(3908): pam(v at localhost): unknown 
user
May  8 18:04:57 desktop dovecot: auth: Debug: userdb out: NOTFOUND#0111
May  8 18:04:57 desktop dovecot: auth: Debug: master in: 
USER#0112#011v at localhost#011service=lmtp
May  8 18:04:57 desktop dovecot: auth-worker(3908): Debug: pam(v at localhost): 
lookup
May  8 18:04:57 desktop dovecot: auth-worker(3908): pam(v at localhost): unknown 
user
May  8 18:04:57 desktop dovecot: auth: Debug: userdb out: NOTFOUND#0112
May  8 18:04:57 desktop dovecot: lmtp(3905): Disconnect from local: Successful 
quit


Folgendes ist aus /var/log/auth.log. Das sagt mir nicht viel:

May  8 18:04:56 desktop su[3902]: Successful su for fetchmail by root
May  8 18:04:56 desktop su[3902]: + ??? root:fetchmail
May  8 18:04:56 desktop su[3902]: pam_unix(su:session): session opened for 
user fetchmail by (uid=0)
May  8 18:04:56 desktop su[3902]: pam_systemd(su:session): Cannot create 
session: Already running in a session
May  8 18:05:49 desktop su[3902]: pam_unix(su:session): session closed for 
user fetchmail


Was mich etwas stutzig macht ist, daß als Benutzer "v at localhost" angegeben 
ist. Sollte das vielleicht nur "v" sein?


Hier ist meine dovecot.conf:

mail_location = mdbox:~/lib/Dovecot-Mail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character 
vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy 
include variables body enotify environment mailbox date index ihave duplicate 
mime foreverypart extracttext
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix = 
}
plugin {
  sieve = file:~/sieve;active=~/.dovecot.sieve
}
protocols = imap lmtp sieve
service imap-login {
  inet_listener imap {
    port = 0
  }
}
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
  driver = passwd
}

service lmtp {
  unix_listener lmtp {
    mode = 0666
#    user = fetchmail
  }
}

# postmaster_address is used as the From: header address in bounce mails 
# siehe http://wiki.dovecot.org/LDA
postmaster_address = post at volker-wysk.de

auth_debug_passwords=yes

# http://wiki2.dovecot.org/PasswordDatabase/Shadow
passdb {
  driver = pam
  args = session=yes failure_show_msg=yes max_requests=100 dovecot
}



Und hier noch meine /etc/fetchmailrc:

set postmaster "v"
set bouncemail
set no spambounce
set properties ""
set syslog
set daemon 300

poll volker-wysk.de with proto IMAP
       user 'web327p1' there with password 'xxx' is 'v' here ssl
       smtphost "/var/run/dovecot/lmtp" lmtp




Für Hilfe wäre ich dankbar.

Volker


Mehr Informationen über die Mailingliste Dovecot