29.7.设置为仅发送

在很多情况下,人们可能只想通过中转来发送邮件。一些例子是:

  • 计算机是一台台式机,需要使用诸如 mail(1)open in new window 等程序,使用 ISP 的邮件中继。

  • 这台计算机是一台服务器,它不在本地处理邮件,而是需要将所有的邮件传递给中继站进行处理。

虽然任何 MTA 都能够填补这个特殊的空缺,但要正确配置一个全功能的 MTA 只是为了处理卸载邮件是很困难的。像 Sendmail 和 Postfix 这样的程序对于这种用途来说是过剩的。

此外,典型的互联网接入服务协议可能禁止一个人运行一个“邮件服务器”。

满足这些需求的最简单方法是通过 ports 安装 mail/ssmtpopen in new window

# cd /usr/ports/mail/ssmtp
# make install replace clean

安装完毕之后,mail/ssmtpopen in new window 可以用 /usr/local/etc/ssmtp/ssmtp.conf 来配置:

[email protected]
mailhub=mail.example.com
rewriteDomain=example.com
hostname=_HOSTNAME_

使用真实的电子邮件地址作为 root目录。在 mail.example.com 的位置输入 ISP 的外发邮件中继站。有些 ISP 称其为“外发邮件服务器”或“SMTP 服务器”。

请确保禁用 Sendmail,包括外发邮件服务。详情见禁用 Sendmailopen in new window

mail/ssmtpopen in new window 还有一些其他可用的选项。请参考 /usr/local/etc/ssmtp 中的例子或 ssmtp 的手册页以获得更多信息。

以这种方式设置 ssmtp 允许计算机上任何需要发送邮件的软件正常运行,同时不违反 ISP 的使用规则,也不允许计算机被劫持用于发送垃圾邮件。