Solved

Configuring qmail to use an outgoing mail relay

Posted on 2008-10-28
9
2,102 Views
Last Modified: 2013-12-02
I have a qmail server  living on an Amazon Ec2 instance, it's primary purpose is to receive a large amount of incoming mail, which it does fine. It also wants to forward a very small portion of the mail that it gets, but one of the things about ec2 is since the machines use dynamic IPs, you cannot send outgoing mail on ec2 without it being blocked by most recipients. The solution for this is to not use ec2 for outgoing mail, or use a relay. Option 1 isn't available to me so I'm looking to have my qmail server send outgoing mail to a relay. I have little idea how to do this. Can someone point me towards how to set qmail to use an outgoing relay server?
0
Comment
Question by:malatia
9 Comments
 
LVL 77

Expert Comment

by:arnold
ID: 22828401
You need to add the entry into smtproutes:
:ec2_mailserver

http://www.lifewithqmail.org/lwq.html#smtproutes
0
 
LVL 6

Expert Comment

by:Syngin9
ID: 22832325
smtproutes configured in that way will force all email to that server though.  He just wants to forward a small part of the email received.

What is the criteria for the email to be forwarded?  All email for one domain? etc.
0
 
LVL 77

Expert Comment

by:arnold
ID: 22832528
The person wants all email that needs to be sent out forwarded through a smart host provided by the ISP.
The question is why an email server whose primary task is to process incoming email,   have a dynamic IP address?
0
 

Author Comment

by:malatia
ID: 22833402
Yes actually all of my outgoing mail from this server has to be relayed. It doesn't send much, the forwards are actually from a few criteria, joe@mydomain.com -> joe@hotmail.com, critical@mydomain -> me@mydomain, etc. set up in qmailadmin.

>The question is why an email server whose primary task is to process incoming email,   have a dynamic IP address?

It's actually ok running in the cloud as incoming server. All the mail it needs to get it gets. But it happpens to also send some outgoing mail. Any outgoing mail has to be relayed to mysmtpserver.com.  I think smtproutes is the way to do this then?  Qmail administration is new to me. Thank you much :)
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 20

Expert Comment

by:Daniel McAllister
ID: 22850351
OK... It's a pet-peeve of mine when "experts" tell users that WORKING parts of their system cannot work. So, let's take at face value that malatia has a QMail server that is on a server with a dynamic IP address. (This CAN be done -- RELIABLY -- for inbound mail by using any of the myriad of DynDNS-type services. The problem -- and thus the question here -- is in outbound mail, not inbound).

matalia has already admitted that ALL of his outbound messages will have to go through a relay host -- forwarded and "originating" messages alike! So, with that in mind, let's re-examine the original post...

First, there seems to be some confusion about how smtproutes is used within QMail. It DOES override the DNS lookup of MX records -- but it does NOT override the "locals" setting. So, if your "receiving domains" are listed in locals, you won't have to worry about inbound messages being "relayed" to your relay host. The same can be said for virtualdomains that "point" to a local domain.

ASIDE: If you WANT to have a domain whose messages you receive, but always forward out someplace else, enter the domain name in the rcpthosts file and the smtproutes file (and no place else).

So, if we assume you make the appropriate entry in your smtproutes file (and YES, you want the "global" forward format demonstrated above by arnold), then the next question appears to be how to make only certain users' e-mails forwarded.

In this instance, you're wanting to look at the .qmail file in each user's folder that contains their MailDir. (Assuming you're not using something like VPopMail to process inbound messages). In the .qmail file, place a line that starts with an & in the file for each "off-server" address you want the message sent to. You can thus forward to multiple accounts, and you can also choose whether the local system retains a copy of said messages.

For example, assuming we have a user called "me" whose e-mail address on the QMail server is me@mydomain.tld, and that messages are delivered to the MailDir located at /home/me/Maildir, then:
- if your .qmail looks like:
  &me@hotmail.com

  Then all mail for me@mydomain.tld is forwarded to me@hotmail.com -- and no local copy is kept. If the smtproutes file exists, then the routing goes through the mail relay host (as it should).

- if your .qmail looks like:
  &me@hotmail.com
  /home/me/Maildir

  Then all mail for me@mydomain.tld is forwarded to me@hotmail.com -- and a local copy IS kept.

- if your .qmail looks like:
  &me@hotmail.com
  &you@yahoo.com

  Then all mail for me@mydomain.tld is forwarded to both me@hotmail.com AND you@yahoo.com -- and no local copy is kept.

You should get the idea.

I hope this helps.... someone!

Dan
IT4SOHO
0
 
LVL 77

Accepted Solution

by:
arnold earned 200 total points
ID: 22853237

There are different ways to get an email address that would forward without the need for creating local account.  Look at www.lifewithqmail.org and look for various aliasing option if that is a consideration.

It is often better to have a mail server with a static IP when one relies on consistently and timely receipt of email.
0
 
LVL 20

Assisted Solution

by:Daniel McAllister
Daniel McAllister earned 250 total points
ID: 22854047
Indeed.... having a static IP on the server could allow one to eliminate problem entirely. For, with a static IP, one could request that the ISP create a PTR record for your QMail server. With that, those pesky ISPs that block your messages  if your forward & reverse IPs don't match could be duly satisfied. Problem solved.

However, when you read the original posting (and read a little in to it, I suppose), it seems to me that malatia most likely had already figured that out. However, for whatever reason (may they forever remain privately his/her own), they wanted to know how to make QMail forward outbound mail to a relay server.

I've said all this already... but there is something potentially important to add:

If you're sending your outbound messages to the relay host, one might assume that the relay host is going to want/need some kind of authorization to permit the relay (otherwise, it would likely be an OPEN relay, and quickly appear on an RBL list or dozen).

So, what I neglected to mention above is that QMail can accommodate that in the smtproutes file. Simply add the auth information on the same line.

For example:
:relay.verizon.net  myverizonname myverizonpassword

The ugly part of this is that the password is now listed in a clear-text file. As such, you may want to limit the access to that file (just make sure qmail-remote can access it!).

This should resolve malatia's issue completely.

Dan
IT4SOHO
0
 
LVL 13

Assisted Solution

by:Xyptilon2
Xyptilon2 earned 50 total points
ID: 22858121
Just a short note, in order for the remote authentication to work in the smtproutes file, you need to patch the original qmail 1.03 with the remote auth patch. Which you need to look for since i dont have the link available at the moment.
0
 
LVL 20

Assisted Solution

by:Daniel McAllister
Daniel McAllister earned 250 total points
ID: 22997667
Try the QMail Toaster -- one of several QMail "projects" that pre-builds & configures loads of popular patches and applications. http://www.qmailtoaster.com.

Note: QMail Toaster uses vpopmail -- meaning that users can be given personal control over their mail routing (even creating server-based vacation messages!).

Good luck!

Dan
IT4SOHO
0

Featured Post

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nearly six years ago I was hired by a company to be their senior server engineer. One of my first projects was to implement Exchange Server 2007 on a Windows Server 2008 Single Copy Cluster for high availability. That was the easy part; read on to l…
Marketers need statistics and metrics like everybody else needs oxygen. In this article we explain how to enable marketing campaign statistics for Microsoft Exchange mail.
In this video we show how to create an email address policy in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.:  First we need to log into the Exchange Admin Center. Navigate to the Mail Flow…
In this video we show how to create a mailbox database in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Servers >> Data…

932 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now