Postfix 与 Dovecot:本地用户和虚拟用户

Postfix 与 Dovecot:本地用户和虚拟用户

我刚刚完成了 Postfix SMTP 和 Dovecot IMAP/POP3 服务器的设置。

对于虚拟用户来说,无论是发送还是接收,它都可以很好地工作,但我需要执行以下操作:

除了虚拟用户能够检索邮件之外,我还希望能够检索本地用户的邮件。

因此,这将接收来自/home/[user]/Maildir

目前 Dovecot 用户存储在以下格式的文件中[user@domain]:[pass]:[uid]:[gid]

我是否可以以某种方式将本地用户添加到该文件中?(我已经尝试过了,但是设置主目录并不能阻止 Dovecot 解析为虚拟目录,而不是/home/[user]/Maildir。)

我如何检索 Dovecot 用户和本地用户的邮件?

答案1

是的,你可以混合搭配本地和虚拟用户。我有。以下是本地用户的设置auth-system.conf.ext

passdb {
  driver = pam
  args = failure_show_msg=yes
}

userdb {
  driver = passwd
}

http://wiki2.dovecot.org/SystemUsers

您可以将某一类用户的邮件目录放入用户数据库部分。这是我在本地用户文件mail_location中的内容:10-mail.conf

mail_location = mbox:~/mail/:INBOX=/var/mail/%u

我将其更改为虚拟用户auth-passwdfile.conf.ext

passdb {
  driver = passwd-file
  args = /etc/dovecot/passwd
}
userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n mail=maildir:/var/mail/vhosts/%d/%n
}

请参阅不同类型的各种教程:http://wiki2.dovecot.org/HowTo

您还可以将这些设置为是,dovecot.conftail /var/log/dovecot*查看它认为它是哪种类型的用户。

#auth_verbose = yes
#auth_debug = yes

我还想补充一点,阅读文档时可能不太明显,Postfix 会将所有邮件发送到每个用户的单个文件中。但是,Dovecot 需要多个文件和目录来存放已发送邮件、已删除邮件、草稿等。这些文件和目录可以位于相同或完全不同的位置。有时邮件会发送到 /var/mail,有时则发送到 ~/mail。对于系统用户,Dovecot (IMAP) 文件夹可以位于用户主目录中,但对于虚拟用户呢?他们要么共享一个主目录,要么所有文件夹都放在 /var/vmail 中。

相关内容