Email Forwarding

Emails to addresses now go through a LDAP distributed email system. This system uses the forwarding field in the LDAP directory to route mail without passing it through a users .forward file on a single host. Multiple machines participate in the forwarding to provide redundancy.

Each forwarders inspects the LDAP database to see if has forwarding set to an address, if so the envelope to address is rewritten and the message redirected to the new address. Otherwise the message is relayed to for processing by the users .forward files. If email forwarding is setup then .forward files are NOT considered. Extension addresses (foo-lists) are always routed directly to master for processing.

All machines also use the forwarding attribute as a default destination for email. If the user has a home directory and no .forward file the mail is forwarded rather than delivered to /var/spool/mail. This makes sure cron reports, bug responses and other unexpected emails are not misplaced.

If you set the forwarding address to be a specific Debian machine and do not create a forward file then that machine will spool the mail to /var/spool/mail instead of creating a mail loop.

The email forwarding can be easily reconfigured using GnuPG:

echo "emailforward:" | gpg --clearsign | mail
or by visiting

You can test the email routing by using the command /usr/sbin/exim -bt


If you use procmail for your main mailbox, PLEASE, erase your .forward file and put a .procmailrc in its place instead. This feature has been supported on machines for a good while now, and will continue to be supported. .procmailrc files won't be synchronised to all hosts in the LDAP directory.

The correct way to invoke procmail for extension addresses is "|/usr/bin/procmail [options]" Ignore the IFS=".." stuff in the procmail man page.

MailBox formats

Email can be saved to mailboxes or maildirs by using the correct lines in a .forward file:

Mailbox format files "/debian/home/foo/Mbox"
Maildir format files "/debian/home/foo/MDir/"

To deliver to /var/spool/mail/foo use a construct like '|/usr/bin/procmail -m /dev/null'. Putting the mailbox path will not work. You must use absolute paths for mailboxes, qmail-like ./ paths are not supported by Exim.

Also, 'Exim Filter' files are deliberately turned off.

You can contact us at

Last Modified: Wed, Jan 2 18:40:23 UTC 2019
Copyright © 1997-2019 SPI; See license terms
Debian is a registered trademark of Software in the Public Interest, Inc.