我有几个服务器在 Debian 上运行应用程序。每个服务器都包含应用程序所需的软件包,仅此而已。
目前,没有一个工具具有邮件发送功能。但是,我希望将 cron 等工具的输出通过邮件发送给我。
服务器托管在 ISP 站点,该站点提供了“智能中继”服务器,我应该使用该服务器来处理所有外发邮件。
我应该如何配置我的 Debian 服务器:
- 要允许 cron 等本地工具发送邮件,请执行以下操作:[电子邮件保护](我特别不想要“root@machinename”)
- 不提供任何入站邮件服务
- 使用 ISP 提供的“智能中继”发送外发邮件
什么样的包裹适合这种“最低限度”的邮件服务?
答案1
与此类似回答,但我更喜欢将 exim 设置为使用智能主机,并且当该框实际上不充当邮件服务器时,没有本地邮件。
- apt-get 安装 exim4
- 运行 dpkg-reconfigure exim4-config
- 是的,拆分配置
- 验证系统名称是否正确
- 监听地址应为“127.0.0.1”
- 其他目的地应为系统 fqdn
- 中继域应留空
- 接力机器应留空
- smarthost 应该是你的 smtp 服务器的主机名
- 更新 /etc/aliases 并将根目录指向我希望服务消息传递的电子邮件地址。
答案2
你要邮件传输协议,一个超级简单、配置出站邮件中继的工具。它也非常小巧,因此非常适合嵌入式系统。
答案3
此类配置称为“nullclient”配置。以下是一些可用的指南:
- 后缀:http://www.postfix.org/STANDARD_CONFIGURATION_README.html#null_client
- 发送邮件:http://www.sendmail.org/m4/features.html
对于 sendmail,您需要做的就是:
FEATURE(`nullclient', `mailhub.domain.notused')dnl
一些发行版(openSuSE)为此目的提供了单独的“nullclient.mc”配置文件。
答案4
我喜欢使用 exim,它在 Debian 上设置起来非常容易。运行以下命令,当提示使用 exim4-config 时,选择“互联网站点”作为主要配置。所有其他选项都相当不言自明,请确保正确设置域名以匹配正向和优先反向 DNS。
sudo aptitude install exim4
sudo dpkg-reconfigure exim4-config
然后,编辑 /etc/aliases 如下:
root: [email protected]
最后运行newaliases
以使邮件发送工作正常(用于 cron 等)
sudo newaliases
现在你应该可以做类似的事情
$mail root
Subject: Hello
What a fine day!
.
Cc:
更新:我在已配置的安装上使用 etch(而不是 lenny)测试了此操作,我已更正了上述错误。不知道 lenny 会做什么。这也适用于 ubuntu 8.04。我还更新了此操作以反映您确实需要正确设置域