Postfix: Mails an nicht-existente Mailboxen werden trotzdem zugestellt

AleXburnA

Registered User
Hi Serversupportforum-Community!

Ich hätte da mal ein Problemchen, falls es dafür schon eine Lösung gibt habe ich anscheinend die falschen Suchbegriffe benutzt. :)

Ich habe mich mal wieder an meinen Ubuntu Server (10.04) gemacht und nach HowTo von workaround.org dort erfolgreich einen Email-Server zum laufen gebracht. Jedoch habe ich noch ein Problem: Mails an eine nicht existente Mailbox werden trotzdem zugestellt.

Beispiel: der Server empfängt eine Mail für michgibtsnicht@domain.tld. Dieser User ist nicht in der MySQL-Datenbank eingetragen. Aber anstatt dass postfix ein "Rejected, user unknown" oder ähnliches zurückgibt, wird die Mail zugestellt:

Code:
Jul 31 12:19:02 meinserver postfix/smtpd[4472]: connect from mail.example.com[1.2.3.4]
Jul 31 12:19:03 meinserver tumgreyspf[4477]: Allowed greylisting: REMOTEIP="1.2.3.4" HELO="mail.example.com" SENDER="someone@example.com"
RECIPIENT="michgibtsnicht@meinedomain.tld" QUEUEID=""
Jul 31 12:19:03 meinserver postfix/smtpd[4472]: 3E932400AFF: client=mail.example.com[1.2.3.4]
Jul 31 12:19:03 meinserver postfix/cleanup[4478]: 3E932400AFF: message-id=<136BA63B14B41642A2B5FAB209DC035A3AD03BCAE5@mail>
Jul 31 12:19:03 meinserver postfix/qmgr[2674]: 3E932400AFF: from=<someone@example.com>, size=6608, nrcpt=1 (queue active)
Jul 31 12:19:03 meinserver postfix/smtpd[4472]: disconnect from mail.example.com[1.2.3.4]
Jul 31 12:19:05 meinserver postfix/smtpd[4482]: connect from localhost[127.0.0.1]
Jul 31 12:19:05 meinserver postfix/smtpd[4482]: 028D7401389: client=localhost[127.0.0.1]
Jul 31 12:19:05 meinserver postfix/cleanup[4478]: 028D7401389: message-id=<136BA63B14B41642A2B5FAB209DC035A3AD03BCAE5@mail>
Jul 31 12:19:05 meinserver postfix/qmgr[2674]: 028D7401389: from=<someone@example.com>, size=7310, nrcpt=1 (queue active)
Jul 31 12:19:05 meinserver postfix/smtpd[4482]: disconnect from localhost[127.0.0.1]
Jul 31 12:19:05 meinserver amavis[1778]: (01778-15) Passed CLEAN, [1.2.3.4] [1.2.3.4] <someone@example.com> -> <michgibtsnicht@meinedomain.tld>, Message-ID: <136BA63B14B41642A2B5FAB209DC035A3AD03BCAE5@mail>, mail_id: uuWX5H9LkIoZ, Hits: 0.001, size: 6608, queued_as: 028D7401389, 1724 ms
Jul 31 12:19:05 meinserver postfix/smtp[4479]: 3E932400AFF: to=<michgibtsnicht@meinedomain.tld>, relay=127.0.0.1[127.0.0.1]:10024, delay=2, delays=0.31/0.01/0/1.7, dsn=2.0.0, status=sent (250 2.0.0 Ok, id=01778-15, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 028D7401389)
Jul 31 12:19:05 meinserver postfix/qmgr[2674]: 3E932400AFF: removed
Jul 31 12:19:05 meinserver dovecot: deliver(michgibtsnicht@meinedomain.tld): sieve: msgid=<136BA63B14B41642A2B5FAB209DC035A3AD03BCAE5@mail>: stored mail into mailbox 'INBOX'
Jul 31 12:19:05 meinserver postfix/pipe[4483]: 028D7401389: to=<michgibtsnicht@meinedomain.tld>, relay=dovecot, delay=0.26, delays=0.07/0.01/0/0.18, dsn=2.0.0, status=sent (delivered via dovecot service)
Jul 31 12:19:05 meinserver postfix/qmgr[2674]: 028D7401389: removed

dabei legt postfix automatisch das entsprechende Verzeichnis unter /var/vmail/meinedomain.tld an.

Gibt es die Möglichkeit, Postfix anzuweisen, solche Mails abzuweisen?

Danke und viele Grüße,
Alex
 
Wie sieht denn deine Postfix-Konfiguration aus?
Code:
# postconf -n

Auf meinem Mailserver arbeitet Postfix als Relay. Er fühlt sich für x Domains zuständig, überprüft ob der Benutzer in der Datenbank existiert und leitet dann die Mail per LMTP an Cyrus weiter.
Bei mir so gewollte Besonderheit: Ein Benutzer hat nur ein Konto, das für alle Domains gilt.

Das Setup sieht in Auszügen in etwa so aus:

/etc/postfix/main.cf:
Code:
relay_domains = hash:/etc/postfix/relay_domains
transport_maps = hash:/etc/postfix/relay_domains
relay_recipient_maps = proxy:mysql:/etc/postfix/relay_recipients.mysql

/etc/postfix/relay_domains:
Code:
meine-domain.de      lmtp:unix:public/lmtp
meine-domain2.de      lmtp:unix:public/lmtp

/etc/postfix/relay_recipients.mysql:
Code:
user = myuser
password = mypass
hosts = localhost
dbname = mydb
query = SELECT username FROM cyrus_email WHERE username = '%u'

Gruß filewalker
 
habe soeben den Fehler gefunden. Das mapping auf die virtuellen Mailboxen war kurioserweise nicht mehr in der /etc/postfix/main.cf eingetragen.

Nach einem
Code:
postconf -e virtual_mailbox_maps=mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
gehts nun endlich so wie es soll :)


Danke trotzdem für die Hilfe!
 
Back
Top