Linux:发送电子邮件到另一个地址而不是/ var / spool / mail / root

我pipe理Amazon EC2上的微型Linux服务器。 偶尔我会收到电子邮件发送到帐户,如果我login,我会得到通知:

You have new mail in /var/spool/mail/root 

如何将这些电子邮件发送到另一个电子邮件地址(如[email protected])?

 sed s/^root.*/root:\ [email protected]/ -i /etc/aliases && newaliases 

以root身份运行。 将别名的传递地址别名到您select的电子邮件地址。 否则,请手动编辑/ etc / aliases,然后修改根目录的别名:root:[email protected],让root的电子邮件自动转发到该地址。 有关/ etc / aliases文件的更多信息,请使用别名

在.forward和/ etc / aliases中使用邮件地址的区别在于,如果使用.forward,邮件将首先login到本地邮箱(可能是/ var / spool / mail / root默认情况下),然后是副本将被转发给您。 然而,在/ etc / aliases方式中,它将直接发送给您,而无需本地交付。 在select方法时,您可能需要考虑这一点,无论您是希望将本地副本保留在服务器上还是不在服务器上。

另一种方法是转发root的邮件。

echo "[email protected]" > /root/.forward

您需要确保已安装并运行sendmail / postfix,并且您的主机可以连接到接收域的SMTP服务器。 否则,您需要将某个主机configuration为“智能主机”来中继所有的邮件。

获取SMTP服务器: nslookup -type=mx domain.com

testing连通性: telnet <hostname> 25nc -z <hostname> 25