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

I'm working on setting up a mail server to send the company I work for's newsletter. The idea is to give us more options and not have to pay another company hundreds of dollars a month to send all our mails. All of our incoming mail is already handles by Google Apps, but I want to be able to send mail from our domain, and am setting up a dedicated VPS to handle this task. The server will also likely contain our list management software and databases.

My Question: What is a relatively easy to configure, extremely efficient mail server that runs on debian or ubuntu?

Criteria

  • Should be able to send 30,000+ emails an hour on a Linode node.
  • Possible for a person with moderate linux experience to install/configure
  • Easy to setup for mail output only.

My Experience:

  • Intermediate-Advanced Arch Linux snob
  • LAMP
  • LNMP (nginx)
  • bind
  • ubuntu servers centos
share|improve this question
    
I'd be very careful about sending 30k emails in an hour. You blast 100s of emails to a well-known webmail host like hotmail, gmail, aol, or yahoo in a short span of time and you'll be gray/blacklisted for sure. –  gravyface May 21 '11 at 21:03

4 Answers 4

up vote 2 down vote accepted

This is not an endeavor to be taken lightly. 30,000 emails an hour requires some serious thought and planning: you're talking like 8 emails a second, say with an average size of 25k (this is a newsletter right?), 200KB/s (or roughly 1.5Mbps).

Now add in latency, DNS lookups (caching is obviously needed), and the reliance on how quickly each recipient MTA (or several MTAs) can converse with your (multiple) MTAs, throttling (so you don't get black or graylisted), bounce handling (my God, the bounces), etc. and a couple hundred bucks a month sounds like a pretty good deal to me.

I'd wager you're going to be spending alot more than that for a cluster of VPSs or dedicated colo hardware.

Couple that with your time: unless you're a dedicated mail administrator, you likely cannot afford to dedicate as much time to this as you think.

share|improve this answer
    
Sorry for accepting this a year late. This was the correct answer in this case. The correct solution for us, and probably anyone in a similar position is to host your list, but use a smtp relay to actually send the mail. –  Kin Aug 24 '12 at 1:21

You might use PHPlist. It's pretty easy to install. Sending out 30,000+ emails/hour is not a feature of PHPlist but a combination of the performance of the underlying MTA, the effectiveness of your DNS lookup mechanism (caching on the server might come in handy) and the speed of your server's internet connection.

About the mail output only thing : you might want to configure incoming mail as well to have bounces handled automatically by PHPlist. You need a POP server or a POP account somewhere (not necessarily on the same server).

share|improve this answer
    
Good point about DNS caching. What's PHPlist using as MTA? –  the-wabbit May 21 '11 at 18:55
    
I think that out-of-the-box it wants to use php-mail (so no MTA, but the php library), but you can configure it to use exim or postfix. I use exim. I guess it can use any sendmail-like MTA. –  Jasper May 21 '11 at 19:53

PowerMTA is my goto for high volume email sending. It isn't free, but it is powerful, fast and easy to setup.

share|improve this answer

You would need to define 'relatively easy to configure' to get that one answered. Further, I never tried to feed that amount of mail to MTAs, but Postfix and Exim are used by larger sites as well and might fall into the "easy to configure" category. As Jasper stated already, a DNS caching server would probably be a good thing. dnsmasq is pretty lightweight and can cache a number of records, but as you already have configured bind and it is doubtless a good fit for larger sites, I'd stick with that.

All of these packages are part of major distributions, with Ubuntu you can just apt-get install any of them.

share|improve this answer

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.