我正在安装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。