Quoting /dev/rob0 30/08/2013 17:11,
You posted today that it must not be possible to serve both virtual and system users on a single Dovecot instance. This is wrong.

I don't say it is impossible, I'm just saying it isn't as trivial as you supposed in your first answer. In fact, I got it _almost_ working, the only quirk is about mail_location parameter being shared among all kinds of users, local and virtual, which causes the troubles I try to explain hereby.

When I use,
    mail_location = mbox:~/
* YES this is the best way, afaict, to get the mboxes within the userdb defined home= variable *
the problems are:
1) local users' home dir is served, which is not appropriate as I want them to have other files, not only emails, especially the ~/.forward file, 2) I need to setup the smtp daemon or its LDA to write to local users' ~/inbox or make a link to /var/(spool/)mail/%u. Otherwise the local users don't get any INBOX as the :INBOX= part is missing in the mail_location declaration.
(everything is fine for virtual users)

When I use,
    mail_location = mbox:~/mail/
the problems are:
1) I have to create the 'mail/' folder in virtual users' imap folder and move the content to it for every virtual user, 2) I need to setup the smtp daemon or its LDA to write to local users' ~/mail/inbox or make a link to /var/(spool/)mail/%u. Otherwise the local users don't get any INBOX either as the :INBOX= part is missing in the mail_location declaration.

When I use,
    mail_location = mbox:~/mail/:INBOX=/var/mail/%u
it just won't work as the virtual and local users don't share the same locations for inboxes and this cannot be set with the userdb home= trick.

So here is it, finally (still got the ssl part to fix). I am probably going to use the second mail_location possibility, it just bothers me to add a useless folder to virtual users' mail path (/var/spool/virtual/domain/username.folder/*mail/*).

# dovecot -n
# 1.2.17: /usr/local/etc/dovecot.conf
# OS: FreeBSD 8.3-RELEASE amd64
protocols: imap
ssl: no
disable_plaintext_auth: no
login_dir: /var/run/dovecot/login
login_executable: /usr/local/libexec/dovecot/imap-login
first_valid_uid: 6
first_valid_gid: 6
mail_privileged_group: mail
mail_location: mbox:~/mail/
imap_client_workarounds: delay-newmail netscape-eoh tb-extra-mailbox-sep
auth default:
  username_format: %Lu
  passdb:
    driver: pam
    args: *
  passdb:
    driver: passwd-file
    args: username_format=%n /etc/virtual/%d/passwd
  userdb:
    driver: passwd
    args: blocking=yes
  userdb:
    driver: static
    args: uid=mail gid=mail home=/var/spool/virtual/%d/%n.imap


option as I didn't couldn't find

Pierre-Philipp

Reply via email to