使用 postfix、dovecot、mailman 和 ldap 设置邮件服务器

使用 postfix、dovecot、mailman 和 ldap 设置邮件服务器

我对邮件服务器确实没有太多经验,所以如果我的术语不正确,请原谅我。

首先,这是我正在尝试做的事情:

  1. 使用 ldap(postfix?)获取用户信息
    • 单独的用户帐户和 ml 帐户(ml 帐户可以预定义)
  2. 投递给 ML(Mailman)
    • 为主题添加序列号
    • 将 ML 假脱机文件保存在 /mnt/ml/{ml-name}/spool 中
    • 使用 ldap 扩展 ML
    • 传递给用户(步骤 3)[通过 postfix?]
  3. 交付给用户(dovecot-lda)
    • 将消息保存在 /mnt/mail/{user-name}/ 中

我的问题包括几个部分。

邮递员/ldap:

  1. 是否可以使用 Mailman 通过 ldap 获取 ML 的订阅者?
    • (从我研究的情况来看,我需要使用脚本来同步 Mailman 和 ldap,但我想确认一下)

邮递员

  1. 我认为可以将序列号添加到电子邮件主题中,但我找不到任何相关信息。有人能帮我吗,或者告诉我应该用谷歌搜索什么?

  2. 将 ML 电子邮件保存在自定义目录中。说实话,我还没有真正看过,但快速指示告诉我在哪里完成会很有帮助。

Postfix/dovecot/ldap:

  1. 我一直试图将所有用户的邮件(使用 ldap 获取)放入自定义挂载目录 /mnt/mail/{user-name}/。我想我需要使用虚拟邮箱,但没有成功。使用 dovecot-lda 是正确的方法吗?

我知道我问了很多,但是如果有人能回答这 4 个问题中的任何一个,或者告诉我我对每个组件所起的作用的理解是否有错误,那将会很有帮助。

谢谢!

艾伦

答案1

假设您尝试将邮件路由到邮递员列表,这里有一些您可以解决的问题。首先,一些 LDAP:

 # mailroute, system, mydomain.net
 dn: ou=mailroute,ou=system,dc=mydomain,dc=net
 objectClass: top
 objectClass: organizationalUnit
 ou: mailroute

 # forward0, mailroute, system, mydomain.net
 dn: cn=forward0,ou=mailroute,ou=system,dc=mydomain,dc=net
 objectClass: top
 objectClass: MailForwardOnly
 cn: forward0
 MailAlternateAddress: [email protected]
 MailAlternateAddress: [email protected]
 MailAlternateAddress: [email protected]
 MailForwardingAddress: [email protected]
 displayName: RFC emails to system administrator

然后,一些 Postfix 配置:

 /etc/postfix/main.cf:   
 relay_domains = lists.mydomain.net
 virtual_mailbox_domains = mydomain.net
 virtual_mailbox_maps = proxy:ldap:/etc/postfix/ldap/virtual_mailbox_maps.cf

 /etc/postfix/transport:  
 lists.mydomain.net mailman:

 /etc/postfix/ldap/virtual_mailbox_maps.cf:
 version = 3
 server_host = ldaps://a.mydomain.net:636
 search_base = ou=people,dc=mydomain,dc=net
 query_filter = (&(objectClass=*)(mail=%s))
 result_attribute = uid
 bind = yes
 bind_dn = cn=postfix,ou=applications,ou=system,dc=mydomain,dc=net
 bind_pw = czczczcz

相关内容