Postfix: Unbegrenzte Benutzeradressen über das Pluszeichen


10

Google Mail-Nutzer können mit ("plus Adressierung") praktisch unbegrenzt E-Mail-Adressen erhalten$name+$suffix@gmail.com .

Ich hätte das gerne für meinen eigenen Mailserver, auf dem Postfix ausgeführt wird. Die Postfach- und Aliasdaten werden in einer MySQL-Datenbank gespeichert.

Ich vermute, dass die Alias-Konfiguration geändert werden muss, damit user+foo@example.orgsie dem user@example.orgPostfach zugeordnet wird, aber ich kann nicht herausfinden, wie.

Also ist es möglich? Wie?

Antworten:


13

Abgesehen von der Einstellung

recipient_delimiter = +

Ich musste auch ändern master.cf, damit maildrop nicht nur den Empfänger, sondern auch den tatsächlichen Benutzer übergibt:

maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=Debian-exim argv=/usr/bin/maildrop -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}

Blogbeitrag: http://cweiske.de/tagebuch/postfix-plus-addressing.htm


Sie haben nachgefragt postfix, doch dies erwähnt exim, dass es sich um einen anderen SMTP-Server handelt. Übrigens: Wenn Sie einen echten IMAP-Server (nicht nur ein Postfach) haben, ist die Verwendung LMTPviel schneller als Maildrop. Und wenn Sie LMTP mit Cyrus verwenden, benötigen Sie dies nicht.
MVP

1
Der Benutzer ist debian-exim, aber es ist immer noch Postfix.
Cweiske


Rettete meinen Tag mit {nexthop}. Ich wusste nicht einmal, dass es das gibt. Vielen Dank.
TCB13

Danke für die Antwort. Es hat mir sehr geholfen. Ich verwende Postfix + Procmail + Dovecot auf einem VirtualMin-Server. Ich habe gerade die Zeile "recept_delimiter = +" hinzugefügt und die Plus-Adressierung scheint gut zu funktionieren. Sollte ich zusätzlich etwas für Procmail oder Dovecot tun? Ist es auch möglich, dies domänenweise einzuschränken? Damit ich diese Plusadressierung nur für einige Domains auf meinem Server aktivieren kann? Vielen Dank.
Vishnu

3

Sie haben nicht angegeben, auf welchem ​​Mailserver Ihre E-Mails gespeichert werden. Heutzutage sollte es einer der IMAP-Server sein - wie Cyrus, Dovecot, Courier, ...

Ich persönlich mag Cyrus IMAP. Es unterstützt dies relativ einfach :

Plus-Adressierung - Ermöglicht die direkte Zustellung an eine bestimmte Mailbox (außer an einen Posteingang). Dies erfolgt über eine Adresse des Formulars: Benutzername + Mailordner @ Domäne, die an den Ordner INBOX.mailfolder (oder einen entsprechenden Altnamespace) des Benutzers gesendet wird. Diese Submailbox muss dem postenden Benutzer das Recht "p" einräumen.

Das Hinzufügen von 'p' ist ein wichtiger Schritt. Andernfalls werden alle E-Mails (mit +oder ohne) an den Benutzernamen INBOX gesendet.

Beachten Sie, dass Sie verwenden sollen LMTP(lokales E - Mail - Transportprotokoll) Ihre Mail von liefern , postfixum IMAPServer und auch zu konfigurieren Postfix müssen recipient_delimiter(oder recipient_delimiters) , wie hier beschrieben :

recipient_delimiter = +

Solange die E-Mails den Benutzer / Maildrop nicht erreichen, weil die E-Mail-Adresse vom empfangenden Server nicht erkannt wird, spielt die Unterstützung des IMAP-Servers keine Rolle.
Cweiske

Vielen Dank für den Hinweis zu "plus adressing". Mit diesem Namen fand ich die Lösung.
Cweiske

2

Die master.cfLinie für Dovecot:

dovecot   unix  -       n       n       -       -       pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver
 -f ${sender} -a ${recipient} -d ${user}@${domain}

Verwenden Sie mit Postfix 2.4 und früheren Versionen ${nexthop}anstelle von${domain}

http://wiki2.dovecot.org/LDA/Postfix


Vielen Dank. Ideed, Die Postfix-Lösung allein reicht nicht aus, wenn Sie Dovecot verwenden. Sie benötigen diese zusätzliche Konfiguration für Dovecot.
David Verdin
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.