Postfix: unlimited per-user addresses via "+" sign
Solution 1:
Apart from setting
recipient_delimiter = +
I also had to modify master.cf
, so that maildrop gets not only the recipient passed, but the real user:
maildrop unix - n n - - pipe
flags=DRhu user=Debian-exim argv=/usr/bin/maildrop -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}
Blog post: http://cweiske.de/tagebuch/postfix-plus-addressing.htm
Solution 2:
You did not say what mail server is storing your emails. These days, it should be one of the IMAP servers - like Cyrus, Dovecot, Courier, ...
I personally like Cyrus IMAP. It supports this with relative ease:
Plus addressing - allows direct delivery to a particular mailbox (other than an INBOX). This is done via an address of the form: username+mailfolder@domain, which will deliver to the user's INBOX.mailfolder folder (or altnamespace equivalent). This submailbox must allow the posting user the 'p' right.
Adding 'p' right is important step - otherwise all mail (using +
or not) will be delivered to username INBOX.
Note that you should use LMTP
(local mail transport protocol) to deliver your mail from postfix
to IMAP
server and also need to configure postfix recipient_delimiter
(or recipient_delimiters
) as described here:
recipient_delimiter = +
Solution 3:
The master.cf
line for Dovecot:
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver
-f ${sender} -a ${recipient} -d ${user}@${domain}
With Postfix 2.4 and earlier, use ${nexthop}
instead of ${domain}
http://wiki2.dovecot.org/LDA/Postfix