0

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?

ethrbunny
  • 2,369
  • 4
  • 41
  • 75

1 Answers1

3

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/.

Edit:

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)

or

mail_home = /var/mail/%u (translates to /var/mail/user@example.com)
Aleš Krajník
  • 2,531
  • 1
  • 16
  • 11
  • 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