configurationsendmail将所有电子邮件redirect到单个用户

我正在安装Bugzilla,我想阻止它发送电子邮件,而不是发送到本地计算机上的用户。

我在/etc/mail/sendmail.mc中有这一行:

  FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db') 

我将以下行添加到/ etc / mail / virtusertable的顶部(其余部分是注释):

  @ mydomain.com myusername 

然后我运行了以下命令:

  $ makemap hash / etc / mail / virtusertable </ etc / mail / virtusertable
 $ m4 /etc/mail/sendmail.mc> /etc/mail/sendmail.cf 

然后我重新启动了sendmail服务器。 但是,当我通过邮件命令向[email protected]发送电子邮件时,我仍然收到它在我的基于Web的收件箱中,这不是我想要的。 我希望它只能在本地机器上传递给myusername。

请自己和世界,一个忙,取代Sendmail更容易configuration和维护,如Exim或Postfix的。 我通常会回答说“使用不同的产品”,但在Sendmail的情况下,我认为这是值得的风险。 与现代MTA相比,Sendmail的configuration非常复杂,只有在您拥有复杂的Sendmail基础架构并且拥有相当多的Sendmail体验的情况下才能使用。

此外,我不知道这是否是一个错字,但你有

m4 /etc/mail/sendmail.mc > /etc/mail/endmail.cf 

注意endmail.cf,而不是sendmail.cf。

我采取了David的build议并安装了Postfix。 这是非常容易build立。 我遵循这些说明来configurationmain.cf,然后我所要做的就是将以下行添加到/ etc / postfix / virtual:

  @ mydomain.com myusername 

然后执行以下命令:

  $ postmap / etc / postfix / virtual
 $ postfix重新加载 

瞧! 所有从本地机器发送到任何地址@ mydomain.com的邮件都被发送到本地用户myusername。