29.7.设置为仅发送

许多时候,可能只希望通过转发服务器来发送邮件。典型的情况包括:

  • 使用台式机,但希望通过类似 mail(1) 这样的程序发送邮件。这样就需要使用 ISP 的邮件转发服务器。
  • 不在本地处理邮件的服务器,但它需要把邮件交给转发服务器来进行处理。

几乎任何一个 MTA 都能够胜任这样的工作。然而不幸的是,要把一个全功能的 MTA 正确地配置为只把邮件交给其他服务器是一件很困难的事情。使用 sendmail 以及 postfix 这样的程序,多少有些杀鸡用牛刀的感觉。

此外,如果你使用典型的 Internet 访问服务,你的协议可能会包含禁止运行“邮件服务器”的条款。

满足这些需要最简单的办法是安装 mail/ssmtp port以 root 身份执行下面的命令:

  1. # cd /usr/ports/mail/ssmtp
  2. # make install replace clean

安装好后,就可以用 mail/ssmtp 来配置:/usr/local/etc/ssmtp/ssmtp.conf

  1. root=yourrealemail@example.com
  2. mailhub=mail.example.com
  3. rewriteDomain=example.com
  4. hostname=_HOSTNAME_

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

接下来需要确认禁用了 sendmail,包括邮件发出服务在内。请参见 禁用 sendmail 以了解进一步的细节。

mail/ssmtp 也提供了一些其他选项。请参见在 /usr/local/etc/ssmtp 中的示例配置,或者 ssmtp 的联机手册来得到一些例子和更多的其他信息。

以这种方式配置 ssmtp,能够让你计算机上的任何需要发送邮件的软件都正常运转,而不必冒违反 ISP 的使用政策,或使你的电脑被劫持用于发送垃圾邮件的风险。