配置标准 sendmail 安装以接受外部连接并将邮件转发到 gmail 帐户

配置标准 sendmail 安装以接受外部连接并将邮件转发到 gmail 帐户

我想将我的域中的某些邮件帐户(联系人、网站管理员)重定向到我的 gmail 帐户。

为了做到这一点,我安装了 sendmail。

默认安装(apt-get install sendmail在 ubuntu 服务器 10.04 上)有本地守护进程,并且只接受传送到本地帐户。

为了转发,我在 sendmail.mc 上激活了 virtusertable,添加了以下行FEATURE(virtusertable)dnl,编辑了文件 /etc/mail/virtusertable 并添加了以下行:

[email protected]   [email protected]
[email protected]    [email protected]

最后,我执行了m4 sendmail.mc > sendmail.cfmake virtusertable.db,并编辑了 sendmail.cf 以将守护进程监听的外部 IP 接口更改为 127.0.0.1。

因此我可以发送电子邮件给,比如说[电子邮件保护]从任何主机,它都会到达我服务器的根本地邮件帐户,但在转发帐户(网站管理员、联系人)上,我没有收到任何递送错误消息,但我的 gmail 帐户上没有任何转发的邮件,服务器上的本地邮件也是如此[电子邮件保护]不使用 virtusertable 转发。

我想我想知道发生了什么(我甚至不知道日志文件在哪里),以及如何修复它。还有,我如何才能更改 sendmail.mc 上的守护进程配置以允许外部连接而不仅仅是本地连接,而无需编辑 sendmail.cf 文件。

答案1

我只是忘记了 virtusertable 并编辑了/etc/mail/aliases文件,添加了以下行:

webmaster:    [email protected]
contact:      [email protected]

然后我执行了newaliases,一切顺利。

现在,关于正确配置守护进程以监听 127.0.0.1 以及在任何其他界面上编辑 sendmail.mc 而不是 sendmail.cf,我发现了这一点:http://lists.samba.org/archive/linux/2002-August/004310.html

它基本上告诉将 dnl 放在指定守护进程选项的行的最前面,这将使 sendmail 监听所有可用的网络接口。例如:

dnl DAEMON_OPTIONS('Port=smtp,Addr=127.0.0.1, Name=MTA')

当然,完成后需要重建配置文件(m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf)并重新启动 sendmail。

相关内容