我有一个生产邮件系统。 最初的设置是由系统用户完成的。 每个域都有一个系统用户,最后到同一个域的所有邮件都会转到同一个帐户(之后移到基于该系统用户的procmailconfiguration的特定文件夹)。 Dovecot的职责是处理邮件的imap。 Sendmail SMTP。
系统用户在他们的homedir以及Maildir本身都有一个procmailconfiguration。 所以系统用户的邮件在/ home / {user} / Maildir中。 Procmailconfiguration在/ home / {user} /中。
我现在正在考虑切换到虚拟用户,以便使其更容易扩展。
我已经修改了dovecotconfiguration以使用基于passwd文件的虚拟用户。 passwd文件(包括userdb和passdb,以及每个虚拟用户的一个单独的id)path是/ home / {domain} / passwd(我实际上首先想要所有的域都有一个passwd文件,但是我没有得到它去工作,但也许我可以稍后再看一遍)。 passwd文件中的条目指向/ home / {domain} /,为此, {user}部分是系统用户homedir的符号链接(例如/ home / {user}(如果他有这样的条目)。 它使我能够首先迁移Dovecot部分,然后再迁移Sendmail / procmail部分。
鸽舍设置工作正常。 Sendmail仍然提供到/ home / {user}位置,但是由于符号链接,Dovecot可以到达Maildirs。
我现在正在考虑修改我的sendmail安装程序,通过Dovecot的LDAfunction将邮件传递给这些虚拟用户的家庭,但是我担心在那个时候,我的procmail安装程序将被打破。
什么是使Sendmail使用Dovecot LDA仍然处理procmailconfiguration(或者这仍然是sendmail设置)的正确方法? Sendmail现在使用virtusertable将电子邮件发送到特定用户帐户(所以[email protected] domain1user; [email protected] domain1user,…)。 不确定这是否相关。
欢迎任何其他评论,我宁愿有一个完整的画面,不要打破设置。 在稍后的阶段,Sendmail可能会被postfix取代,但现在它正在做它应该做的事情,所以这是低优先级。