Im building a new email server using CentOS 6.4/postfix/dovecot. It needs to support clients that are mainly XP (Outlook Express, Thunderbird, etc).

How do I set the home_mailbox(postfix) and mail_location(dovecot) params to support these older IMAP clients? Where are they looking for new mail to display?

I have home_mailbox = mbox at the moment and it's putting emails in the mbox file (or so it seems). How do I setup dovecot to find the new emails?


You should configure Postfix to deliver e-mails using Dovecot LMTP or Dovecot LDA - so dovecot does the storing of the e-mail, postfix should only validate SMTP incoming traffic and hand the e-mail to Dovecot for it to be stored.

mail_location in dovecot can have many different values, depending on what type of mailbox (mdbox, sdbox, maildir etc.) you prefer. I would suggest dbox (mdbox/sdbox) but it's up to you to find the best to suite your needs.

Everything is pretty well explained on Dovecot's wiki. See http://wiki2.dovecot.org/LDA/Postfix and http://wiki2.dovecot.org/MailboxFormat/.


1) you need to have postfix configured to accept e-mail with SMTP, check it for SPAM etc. an eventually to decide what transport (defer, reject, another SMTP server, local delivery etc.) to use for given incoming e-mail

2) configure dovecot to listen for LMTP connections, on Gentoo it is in file conf.d/10-master.conf:

service lmtp {
    unix_listener /var/spool/postfix/private/dovecot-lmtp {
        mode = 0600
        user = postfix
        group = postfix

(in conf.d/20-lmtp.conf you can modify dovecot's LMTP protocol, e.g. enable sieve filtering)

3) whatever configuration you use, the Postfix's transport for e-mails, that should be stored to dovecot, would be something like:

virtual_transport = lmtp:unix:$queue_directory/private/dovecot-lmtp

This would transport the e-mail to Dovecot's LMTP and Dovecot would validate the recipient against passdb / userdb and finally store it.

This is LMTP approach, older LDA is almost the same in Dovecot's configuration and slightly different on Postfix's side.

Regarding mail_location:

Dovecot works with userdb / passdb - databases of local clients; it can have many sources, plain text files, system files or users from SQL.

Both userdb / passwd can indicate per-user mail_location, or you can have global settings for all users, for example:

mail_location = mdbox:~/mdbox

meaning that all users' e-mails should be stored in mdbox format to directory "mdbox" inside user's home.

User's home is defined with mail_home, e.g.

mail_home = /var/spool/mail/%d/%n (translates to /var/spool/mail/example.com/user)


mail_home = /var/mail/%u (translates to /var/mail/user@example.com)
  • The email users already have 'mbox' files so that's what I need to support. I'm just puzzled as to how to get either postfix or dovecot to populate the 'inbox' files. – ethrbunny Sep 24 '13 at 20:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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