Working around Google Apps limits or simplest send only MTA?

Google Apps limits you to sending 500 emails per day, or 2000 if you pay for it. Google recommends getting around this by using multiple accounts and essentially upping your limit to 25,000 or 100,000.

We send out about 500 emails a day, or 5500 if the maillist is going out so I need to work around these limits. Emails are generally sent from three locations; general system stuff from cron etc, Django and PHP.

The cron style stuff is easily supported by giving it its own account. No way it will top 500 a day. So sorted.

The Django stuff can be solved with a custom email backend that will use multiple accounts. Sorted. (But does anyone know what Google responds with when the limit has been reached, so I know when to switch?)

The trouble is with PHP. It's only vbulletin so it's not too many emails a day but I'd still like a proper solution. Can something like msmtp be setup to try multiple SMTP accounts?

The only reason I want to use Google Apps is for their spam filter and I'm starting to think that also sending through them is too much effort. So what is the simplest lighest MTA I could install on my Linode only for sending mail from localhost?

6 Replies

@KyleMac:

The only reason I want to use Google Apps is for their spam filter and I'm starting to think that also sending through them is too much effort. So what is the simplest lighest MTA I could install on my Linode only for sending mail from localhost?
I like Postfix, but exim4 is another popular alternative. Either should easily handle any of your needs.

Depending on the target of your messages, the more complicated piece may be getting an appropriate configuration set up (such as SPF, but perhaps also matching mail host name and items such as MX records) so that you don't get rejected by various destinations. And that's largely independent of MTA. There have been several threads here about the hassles of getting that working in all cases (Yahoo seems a particularly troublesome destination domain for folks judging by past posts) that also provide some input on what you might need to configure.

But you could always start slowly and see if your user base happens to have a problem getting delivery before worrying too much.

– David

As it's the "default" in Ubuntu, I tend to use exim for most simple situations where I just need to send outgoing mail. But, if things are going to get fun, I use postfix. Six of one, half dozen of the other.

It's pretty easy to get going with exim:

http://library.linode.com/email/exim/se … 0.04-lucid">http://library.linode.com/email/exim/send-only-mta-ubuntu-10.04-lucid

Something you can do with postfix (and probably exim, too) is configure it to route mail destined to Yahoo or other troublesome providers through Google Apps, but deliver everything else directly. So, it's not entirely an either/or situation.

I've setup Postfix before and already have a VPS that came with Exim running. I've found both pretty simple and it's usually something like Dovecot that causes the problems.

It seems that to get any MTA (postfix, exim, sendmail) running as send only only requires two things. 1) Bind it to 127.0.0.1, and 2) make sure my domain isn't in somewhere like "mydestination".

One thing Exim does is that if a message is stuck in the queue it sends out warnings to the return-path. These are important to ignore for bounce purposes. Does Postfix send out anything similar?

Perhaps I should start slowly and just use GA to begin with. I really doubt that PHP is sending out more than 100 emails a day, and if it is they're nothing important.

Installing exim should, theoretically, be significantly simpler than figuring out how to get some mechanism going to relay through a server that requires username/password authentication.

The bounce notifications can be turned off in most MTAs, but bounces often alert you to problems.

There's also a paid service for sending large numbers of legitimate emails, such as http://postmarkapp.com/ if you don't want to deal with all those complicated spam filters, SPF records, "Yahoo ate my mail", etc. They also give you a nice way to monitor bounces.

Their pricing is $1.50 per 1,000 emails (first 1,000 is free), you can use your own e-mail address in the From: field, and they also have a nice API with well-supported client libraries. Just thought I'd mention them as a third alternative to Google Apps and local mailserver.

I installed Postfix, ran through the conf and changed the following settings to make it local only:

myhostname = host.mydomain.com
mynetworks_style = host
mydestination = localhost.$mydomain, localhost

and all seems good. Port 25 is still open but only on 127.0.0.1. Only took about two minutes.

> The bounce notifications can be turned off in most MTAs, but bounces often alert you to problems.
It's not bounces that I want to turn off, but things like Exim's warnmsg_file which actually makes it harder to detect real bounces. I'll have to turn off bounce processing for a week and look through the VERP inbox to see if Postfix is sending out any extra noise.

> There's also a paid service for sending large numbers of legitimate emails, such as http://postmarkapp.com/ if you don't want to deal with all those complicated spam filters, SPF records, "Yahoo ate my mail", etc. They also give you a nice way to monitor bounces.
I've looked at http://critsend.com before but it can quickly get pretty expensive considering I've never had problems with emails arriving and my interest in these types of services is more out of laziness. I've found that once you have rDNS and SPF setup you have to wait a week or so for Hotmail and Yahoo to notice the changes and then everything will be fine. I hope I don't start getting problems by sending from a Linode IP (currently these bulk messages go out from a Knownhost VPS).

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct