Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I've got postfix setup with a relay and some forward files (Ubuntu 12.04 server). root has a .forward file that just contains user@fqdn. Then user has a .forward file to me@address.com

Sending mail is working in almost all cases except...

If I call "sendmail -bv root" or "sendmail -bv user" I don't get the email in my external inbox where I expected it or either local inbox. It just seems to go out into the ether.

If I remove the .forward files I get the result in a local inbox.

Any idea on how to get the forwarding to work.

I stumbled on this problem while following this tutorial on getting forwarding to work in the first place. It seems to work for that guy and I don't see what's different except his gmail-specific setup.

UPDATE:

I've removed the .forward files and am using aliases instead as per the comment below. I ran "sudo newaliases" and restarted postfix and sending mail to both root and user gets forwarded on to my external address. But, I'm still not getting mail delivery status reports. The mail.log shows that it is getting sent to my external address (added to the queue) and then removed from the queue. So, it looks like my external SMTP server doesn't like something. Maybe the "orig_to"?

share|improve this question
    
/var/log/mail.log would probably shed some light on what happened to the message. Also make sure that .forward files have correct owner and permissions. –  Daniel Vérité Aug 29 '12 at 1:41

1 Answer 1

up vote 1 down vote accepted

Instead of using a .forward file for root, which comes with its own set of problems, you should do what is recommended by all email standards and the author of postfix: alias away the root address to a real user or mailbox.

/etc/aliases:
    root:  mailadmin@example.org

This ensures that mailbox permissions and root privileges are not part of the problem.

EDIT: Reading that how-not-to link you included explains a lot, actually...

The author of that page states:

  1. Postfix needs to be set up to handle and recognize external addresses.
  2. As a security measure, the root user cannot send mail to external addresses, so we need to forward root mail to another user before sending it on to an external address.

The first is enabled out-of-the-box, which makes me wonder how the author mangled his postfix installation prior to writing, and the second is plain nonsense.

EVEN IF there was somehow security in place that prevented a root alias from pointing offsite (there isn't), all you'd need to do is alias root to a dummy user and alias that dummy user to an offsite address; postfix correctly resolves alias references arbitrary levels deep.

share|improve this answer
    
I've updated my question following your great suggestion. –  kjs3 Aug 30 '12 at 22:58

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.