我正在尝试在全新的CentOS安装上安装Exim,以便它可以收到给定地址集合的邮件,并将邮件分别转发到另一个地址。 例如,从[email protected]接收邮件将被转发到[email protected]。
我认为这应该是相当直接的…我以前用Sendmail工作,使用virtusertable – 有什么类似的我可以用Exim做?
我也希望能够发送邮件,但只能用于从本地机器发送的邮件(即从运行在服务器上的应用程序) – 我不需要/不需要公开的SMTP服务器。
有没有其他的设置,我应该记住,以确保邮件服务器是安全的? (即阻止中继)我假设它将是安全的开箱即用。
谢谢。
您将需要使用redirect路由器。 阅读Exim Router规范,因为它可以做许多事情,因此可能会变得相当复杂。
基本上,你需要像这样设置(未经testing)
sender_redirect: driver = redirect data = ${lookup{$sender_address}lsearch{/etc/exim4/sender_redirects}}sender_redirect: driver = redirect data = ${lookup{$sender_address}lsearch{/etc/exim4/sender_redirects}}
然后在/etc/exim4/sender_redirects中创build一个文件,其中包含以行分隔的冒号分隔格式的redirect,如下所示:
[email protected]: [email protected]
乔·弗里曼说的一个变种,没有使用dsearch(这给了我未知的查找types“dsearch”错误):
在exim.conf的开头:
#Replace: domainlist local_domains = lsearch;/etc/virtual/domains #With: domainlist local_domains = lsearch;/etc/virtual/domains : lsearch;/etc/virtual/forwarding_domains
在“开始路由器”部分中添加:
sender_redirect: driver = redirect domains = lsearch;/etc/virtual/forwarding_domains data = ${lookup{$local_part}lsearch{/etc/virtual/forwarding/$domain}}
在lsearch中,/ etc / virtual / forwarding_domains每行添加一个域:
example.com
并创build/etc/virtual/forwarding/example.com包含:
me: [email protected]
Exim4还支持旧式的.forward文件,加上以# Exim filter开头的Exim风格的.forward文件。 例如,使用后者转发到我的备份帐户,同时将原始文件保留在我的假脱机程序中以便访问POP3:
# Exim filter <== do not edit or remove this line! unseen deliver [email protected]
远比在Eximconfiguration的肠道里瞎扯,远远更简单,更危险。 关于这方面的全部细节在这里 。