Tip of the Trade: Sometimes you want to use a "do-not-reply" type of email address and you don't want to have to mass-delete the mailbox at intervals. Here's an easy way to add a Postfix virtual alias to /dev/null.
It's poor practice to send out email from email addresses that don't
resolve, and may mean your mail ends up in a spamtrap. But sometimes you want to use a
"do-not-reply" type of email address, and you don't want to have to mass-delete
the mailbox at intervals.
The usual solution is to forward to /dev/null, and in a local-only
setup you could do that in /etc/aliases:
However, if you're using Postfix virtual domains, it gets a little more
complicated. With virtual domains/users, you can't forward mail to a file. It
must go to a user or an email address, like this:
However, what you can do is set up an alias user in /etc/aliases
and then point to that in your virtual domain database file (which should be
somewhere in /etc/postfix/virtual/
, or it may be the
After you've made the change, run postmap /etc/postfix/virtual/dbfile
and reload Postfix. You can check if the alias is properly set up with the
postmap -q email@example.com /etc/postfix/virtual/dbfile
You should see the correct alias returned.
One last gotcha: On some systems, the /etc/aliases change may not
work unless that user (devnull) already exists on the system. You
may well already have a nobody user in /etc/passwd (one with
a nonexistent home directory and no login shell), which you can use in place
of devnull in /etc/aliases; otherwise you can set up adevnull user to operate similarly.
Juliet Kemp has been messing around with Linux systems, for financial reward and otherwise, for about a decade. She is also the author of "Linux System Administration Recipes: A Problem-Solution Approach" (Apress, 2009).
Follow ServerWatch on Twitter