Slashdot Mirror


Recommendations for the Right IMAP Server?

eugene ts wong asks: "Our company is planning on taking care of its own email, by setting up our own server. I've been given the task of researching what is out there. So far, I've got my heart set on an IMAP server that we can install on Gentoo. Unfortunately, email isn't our forte, and I really have no idea of where to start. I've made some google searches, browsed around on the IMAP site, and also found this email. According to the mutt documentation, Cyrus and Courier are the best choices." What IMAP servers have you used, and which ones would you recommend?

"I'm still at a loss for what to do. The documentation of all but uw-imap seem to be a bit complex for me. If it helps, I'd like to point out that I have Mutt and nbsmtp installed, which work fine for connecting to our SMTP and POP servers. How do I know what will serve our needs the best? Also, is there an IMAP server that I could install easily for testing and learning purposes? I'd like to be able to get something installed without much configuration. Security shouldn't be an issue for testing purposes, because it will only be on the local network, and the computer will be turned off when I'm not actively testing it. We're also willing to purchase products as well. We're willing to hire a professional to do it for us, but the boss wanted some research done so that we know what we're getting. Any comments are welcome. Thanks in advance."

20 of 223 comments (clear)

  1. Gentoo + Mail Servers by abartlett_219 · · Score: 5, Informative
    It looks as if Gentoo recommends the Courier-IMAP server, but an emerge search IMAP returns cyrus, courier, and uw-imap (plus a patched version of uw-imap for virtual domains).

    Gentoo has a HOWTO using various packages here.

  2. Cyrus IMAP for sure.. by T-Ranger · · Score: 5, Informative
    But first, do you realy want to use gentoo in a production machine? It may be fun to recompile everything, but for a production server, especially with something as important as email, gentoo isnt even a contender.

    Anyway.. Cyrus IMAP seems to be the best of breed IMAP server. Its desigined to work in a 'black box' enviroment, where the users dont need 'real' accounts on the machine - and if they did would have to use IMAP to access their mail anyway.

    Its ACL features might be of significant use for a work enviroment (Im planning on deplying it in an ISP enviroment, so its not much help to me). Its heavy reliance on SASL is a bit tricky to get working, but recent IETF decisions seem to mean that SASL is a necessity for just about anything.

    http://asg.web.cmu.edu/cyrus/cyrus-overview-TOC.ht ml

  3. Courier is Great by JLester · · Score: 3, Informative

    We've been using Courier for a couple of years now. We run several thousand users through it using Courier's POP3 and IMAP servers, Squirrelmail, and LDAP integration for all the user accounts. We've never had a single problem with it.

    Jason

    --
    "FORMAT C:" - Kills bugs dead!
  4. QMail + Courier + Maildir by demmegod · · Score: 4, Informative

    The real issue is the mailbox format. It is possible to run more than one imap daemon. Your choices are Maildir, Maildir and Maildir. There are others, but Maildir is really the best. Most IMAP, servers, however, require a patch to use Maildir. Courier was built with Maildir natively. I've now been running Courier for 6months and it's the best IMAP daemon I've ever ran.

    You'll also need an SMTP server, which you didn't mention. Qmail, in my humble opinion, is the only solution out there. I found setup to be a little more complex than I felt necessary, but since I set it up, there hasn't been a hiccup. It easily allows you to instert ANYTHING into the chain the mail follows, so it extremely configurable.

    Don't even bother looking at anything but QMail and Courier-IMAP.

    1. Re:QMail + Courier + Maildir by Ringlord · · Score: 2, Informative

      Postfix works great with Courier and Maildir. I use both with virtual maps, and user/password authentication in MySQL.

      It was pretty easy to set up and there has never been a problem with it. I run Cyrus on another server, but the installation with SASL can really be a pain in the ass!

      Cyrus has got one great thing, and that is it's integration with the Sieve filtering language. Once you start using server side filters with IMAP, you will wonder however you managed without!

  5. Re:Administration tools by T-Ranger · · Score: 3, Informative

    Cyrus dosent bother its self with either accounts or passwords: there the job of something else. Specificly whatever you configure the SASL library to use. The only thing special you need to do to allow mail access for you existing user database is to create them a mailbox.

  6. From someone actually using Gentoo in production by Sevn · · Score: 4, Informative

    Don't listen to the people that assume it's a bear in production. It makes life so much easier. First of all, here is everything you will need to get a courier-imap server up and running with SSL and Postfix and MySQL and Mailmail and Squirrelmail.

    Virtual Mailhosting System Guide

    I can vouch for this system because I did it and use it. Works wonderfully. The client had no use for Mailman, so I didn't install it. The client also only had 4 company domains he was concerned with, so he isn't taking full advantage of the virtual hosting aspect of the system. Smart choice going with Gentoo. Keeping the machine up to date is so easy, the client is doing it. Just a small bombshell to avoid, don't use Reiserfs unless you don't want to support quotas. This customer had a need for quota on the same server and I had to go through hell tracking down the patches for Reiser quota and getting them installed. Chris Mason was VERY helpful when I had problems. THANKS CHRIS!

    --
    For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
  7. When stability is a must by Curien · · Score: 2, Informative

    Nothing, and I mean nothing beats Debian where Linux is concerned. Or you could go the BSD route.

    Gentoo isn't a contender because it is meant as a bleeding-edge desktop platform. It focuses on features and speed, not security and stability.

    --
    It's always a long day... 86400 doesn't fit into a short.
  8. Managing Imap by newfoundry · · Score: 4, Informative

    Needing answers to the same question, yesterday i bought a copy of this book: Managing Imap Perhaps you should get hold of it too. It covers the whole IMAP thing and Cyrus and UW in detail. If you are not worried about using proprietary s/w, and want something easy to set up for testing, have a look at Communigate. This is a complete mailserver solution, very quick to install set up configure, has an IMAP module and lots more. A licence costs $$ but the free version is identical save for a 1-line- text advert appended to outgoing emails. (Linux versions available, don't know how it would fit with Gentoo though)

  9. Re:Avoid Apache by Sevn · · Score: 2, Informative

    Hmmm. Sounds like you need to type:

    man ulimit

    You could also perhaps look at some of your resource settings in your httpd.conf. Try reading a book about apache. There are a few good ones.

    --
    For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
  10. Not quite by Sevn · · Score: 4, Informative

    Gentoo's focus seems to be doing everything better. Speed, security, and stability. You HAVE the option of installing bleeding edge crap or stable crap with one setting in your make.conf. I'm now up to 20 Gentoo machines I support and I'm truly starting to consider it the equal of the FreeBSD machines I have in place. Most recently I had to pick an OS for new hardware. The hardware is dual processors ServerWorks chipset 1U's with a gig of ram. I could not get DMA working with FreeBSD using the Serverworks IDE controller on drives. Gentoo worked fine and supported DMA just fine with the latest kernel. In fact, I have had zero problems to date with any of the Gentoo boxes I have set up and they are pretty much running close to the redline 24/7. Of course, that's actual real world experience and not speculation.

    --
    For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
  11. UW-IMAPD by blate · · Score: 4, Informative

    I've been running uw-imapd on a FreeBSD 5.0 system, along with sendmail (latest and greatest) for about the last 1.5 years with zero problems. Depending on the size of your company, this may or may not be a good solution. Please bear in mind that this is my personal mail server -- it serves exactly one account.

    Plusses:

    o Absolutely dirty simple to set up -- no config files, no settings, just dump the port on, add a line to /etc/inetd.conf, and you're good to go
    o Resonably secure; supports SSL
    o Also supports POP3 and POP3 over SSL

    Minuses:

    o Each account needs a corresponding user on the system (you can, however, block login, I believe, to those users, such that they can not actually log into the system
    o Administration requires adding accounts on the system and FS-level quotas (if you care)
    o No fancy options or web/GUI's -- for me this is a plus, but it depends on how fancy your setup needs to be.

    I've heard very good things about both Courier and Cyrrus but decided against them for my own use for a variety of reasons (mostly complexity).

    Depending on your group size, uw-imapd may or may not be the right choice for you. Personally, however, I'd recommend running your mail server on an honest-to-god production-grade OS, like Free/Open BSD or a good Linux distro. And put it behind a good firewall. Gentoo is pretty cool, but mail MUST ALWAYS work, and to me that means running a production-quality, bullet-proof OS.

  12. Other factors to consider by ChaseTec · · Score: 5, Informative
    What other properties are you looking for in your email server? For my domains(osdev.org and variants) here's the combination I use:
    • Courier IMAP - Supports Maildir, works well with most IMAP webmail setups, easy to setup, support Secure IMAP
    • Postfix for SMTP - Can offload mail delivery to another program like Procmail, replaces Sendmail
    • Procmail for Delivery - The Great thing about IMAP is that you have message folders on the server, procmail will allow you to sort incoming mail as it arrives.
    • Spamassassin - Integrates with Procmail to sort spam into a folder or /dev/null
    • SquirrelMail - Seems to be one of the best web based IMAP clients around, done in PHP
    The reasons I picked the above: Free, Wanted IMAP for server-side folders, needed Maildir support because I didn't want to use mbox because of performance and locking issues, and I needed webmail and an IMAP server known to work well with webmail.

    --
    My Hello World is 512 bytes. But it's also a valid Fat12 boot sector, Fat12 file reader, and Pmode routine.
  13. BSD-based solution with a big support community by gregwbrooks · · Score: 3, Informative
    I've been using Matt Simerson's free "mail toaster" for a few years and it gets better with every update:

    • Rock-solid FreeBSD base
    • qmail + CourierIMAP + qmailadmin (for easy web-based admin of e-mail accounts) + tie-ins to tarpitting, SpamAssassin or other anti-UCE measures
    • Very secure -- Matt has set the whole thing up to be more secure than what most users would configure on their own. E-mail accounts don't have corresponding system accounts, POP-before-SMTP is enabled and a host of other lock-down measures are in place.
    • Works with both IMAP and traditional POP services
    • Comes with either SquirrelMail or SqWebMail as a default webmail client, although I've gotten it to work with Horde's Imp project as well.

    I know you spec'd Gentoo, but this is a great solution backed by an active user community/e-mail list. It's worth a look.

    --


    "It was a summer's tale: Just a boy, his Linux, and a head full of dreams..."
  14. Want flashy? Gentoo. Want reliability? OpenBSD. by Telent · · Score: 5, Informative
    For that volume, if you want "set it and forget it reliability"...

    OpenBSD, hardened Sendmail from the default install, and Dovecot. Can't beat it. It just keeps going and going and going... </energizer-bunny>

    One good thing, too, about OpenBSD is that it's very, very light on your hardware. I did mail for more users than you're talking about on a P166. Make sure to use SMTP auth with Sendmail, though. And, yeah, I do consulting too. Send me an email if you're interested and we can talk.

  15. Re:Cyrus or Dovecot by gid · · Score: 2, Informative

    I've tried quite a few imaps server, and I'd recommend dovecot handsdown. It's the best that I've used, and I've tried about every one that in Debian/unstable. :)

    It's solid, quite a few security options, integrates pretty darn well, etc. And you don't have to mess around with maildir format or anything which is nice. It actually indexes your mbox files so performance is pretty good. It also supports SSL quite nicely, probably the easiest to setup, although I'm running debian, not gentoo... It seems to be one of the fresher ones out there, only started in June 2002, but it's quite stable/mature. Probably written by people who hate Cyrus, UW, etc.

  16. UW-IMAP by autarkeia · · Score: 3, Informative

    I have tried over and over again to switch to Cyrus from UW-IMAP and have finally decided that I have no need to do so. UW-IMAP is written by the guy who wrote the IMAP protocol, Mark Crispin. For all means and purposes it is the definitive IMAP server. It is extremely simple to setup, can scale up to tens of thousand of users, and supports every mailbox type you can think of. It also supports SSL with very little configuration. The O'Reilly IMAP book is a good guide to it (and to IMAP in general).

    The one thing you really must keep in mind with UW-IMAP is not to use MBOX. The MBX format, on the other hand, is high-performance and very powerful. The maintainers of UW-IMAP have kept MBOX as the default for years now, but once you get past about 50MB of mail in a given folder you end up with problems.

    My advice is to look through ALL of the docs to learn how to modify the source code. The docs are scattered in random places but they do contain most of the info you need to become a relative expert in UW-IMAP.

    All in all I am very happy with UW-IMAP. I have been running it on Gentoo forever now (though I don't emerge it, I compile it myself) alongside Sendmail and Procmail and have never, ever, ever had a problem with it. Months of uptime, broken only my physical server moves...

  17. not quite what you asked for but, by Alex · · Score: 2, Informative

    Have you considered Suse Open Exchange?

    I'd keep all of the exchange zealots happy, and is significantly cheaper than exchange.

    (I don't work for Suse)

    Alex

  18. large and stable imap installation... by riley · · Score: 2, Informative

    I work for a major university with seven campuses and email supported centrally.

    We currently support 180,000 users across 6 four way sparcs. We are somewhere close to 2 TB of mail data. We've been running with an average of 1 unscheduled downtime per year over the past five years.

    We use sendmail + cyrus, with a few minor modications. We have no plans to move away from the cyrus imap server.

    Cyrus (once set up) is a dream to take care of. Writing scripts to handle mailbox administration is done in perl (previosly in tcl) and you can set PAM up (or pwcheck if you are old school) to handle any authentication you need. There are web tools to do manual administration (check freshmeat.net) but in our environment, we accept account requests from a different department, and simply use a script to generate the account.

    We run a modified Horde IMP with the UP imapproxy to handle webmail connections.

    We currently average about 4 thousand concurrent logins to the IMAP servers themselves, across all clients (web, desktop, some pine, etc).

    The current cyrus release will support a murder of IMAP servers, allowing you to use one namespace for multiple imap servers (you can spread your userbase across 15 imap servers -- imap1.domain.com to imap15.domain.com but only tell the clients to connect imap.domain.com) allowing you to add or remove machines from your pool by just moving the users from one machien to the next.

    Over the years, we've tested UW, Courier, and various commercial IMAP implementations, and none has touched cyrus in terms of speed, reliability, and ease of administration. UW, even with the better mailbox drivers, is still slower, and generally (unless dealing with the MH driver which has its own limitations) still deals with everything as a single file, leading to some memory issues if you have several thousand users with political pull in your organization that don't want to delete anything.

    Courier's maildir implementation also has problems with large mailboxes, as header indexes are generated from the mail data rather than cached, causing all files to be touched.

    I understand that dovecot has taken a hybrid approach, caching header information while still using a maildir store. If header information is cached on local disk, the store can still be mounted via NFS. It is a good model, but we've found that IO is the bootleg in large email installations. NFS mailstores would give us flexibility with regards to redundant imap protocol servers, but the resource we are most trying to conserve (IO bandwidth) is still bottlenecked (theorectically at a single server IO throughput, realistically at NFS throughput speeds).

    There is another project, dbmail (www.dbmail.org) that uses mysql as a mailstore. There are many gains possible using a database backend, but drawbacks as well...recovery of small amounts of data from backups is one. In any case, dbmail is not as mature as either UW or cyrus.

    Mark Crispin (author of the IMAP protocol and the UW IMAP server) has said that cyrus is the race car of the IMAP world. Built for high performance -- the ease of administration is just something you get from free.

  19. IAAEA... by jimmydigital · · Score: 2, Informative

    (I am an email administrator)

    Here is the mix you want... though you didn't say how your user info is stored.. so I'll assume ldap.

    - Postfix with ldap lookup tables for mail routing

    - amavis-new with spamassin + sql (or ldap) for
    per user white/black lists and scoring

    - cyrus imap taking delivery via lmtp from postfix
    and running saslauthd against whatever sort of
    backend you have to authenticate users (flat
    file,ldap,sql)

    - Squirrelmail for webmail

    - up-imapproxy to soften the blow caused by any
    webmail system

    In my setup I have a pair of failover LVS load balancers out in front of a pool of postfix systems.. they handle antispam measures and mail routing and I can adujust the volume to each as I need to. Cyrus may not be the easiest thing to setup... but it's worth the effort. I'd suggest hiring someone who does this all the time to implement it and show you how to maintain it.. if you don't have the time and resources to learn on your own. I took the extra time to do a distributed network stress test on this setup before putting it in production and it's never had any serious issues.

    --
    Every normal man must be tempted, at times, to spit on his hands, hoist the black flag, and begin slitting throats. -HLM