MAILDROP_README   [plain text]


The following information was kindly provided by Russell Mosemann,
with tips by Victor Duchovni for supporting user+foo@domain addresses.

In order to use the maildrop transport for some domain, add an entry
to transport_maps for each domain similar to the following.

/etc/postfix/transport:
    some.domain       maildrop:
    someother.domain  maildrop:

Define the following variable in main.cf so that pipe will provide one
recipient at a time to maildrop.

/etc/postfix/main.cf:
    maildrop_destination_recipient_limit = 1

The vmail userid as used below is the user that maildrop should
run as.  This would be the owner of the virtual mailboxes if they
all have the same owner.  If maildrop is suid (see maildrop
documentation), then maildrop will change to the appropriate owner
to deliver the mail.  Do not use the postfix user as the maildrop
user.

/etc/postfix/master.cf:
    maildrop  unix  -       n       n       -       -       pipe
      flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}

If you want to support user+extension@domain style addresses, use
the following instead:

/etc/postfix/master.cf:
    maildrop  unix  -       n       n       -       -       pipe
      flags=DRhu user=vmail argv=/usr/local/bin/maildrop 
	-d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}

The mail is delivered to ${user}@${nexthop} (match key for maildrop
userdb lookup). The ${extension} and the other address components
are available to maildrop rules as $1, $2, $3, ...  and can be
omitted from master.cf or ignored by maildrop when not needed.