31.11.使用 fetchmail ==================== fetchmail 是一个全功能的 IMAP 和 POP 客户端。它允许用户自动从远程 IMAP 和 POP 服务器下载邮件,并将其保存到本地邮箱中,以便更容易地访问。fetchmail 可以通过 port `mail/fetchmail `__ 安装,并提供各种功能,包括: - 支持 POP3、APOP、KPOP、IMAP、ETRN 和 ODMR 协议。 - 能够使用 SMTP 转发邮件,这使得过滤、转发和别名能够正常运行。 - 可在守护模式下运行,定期检查新邮件。 - 可以检索多个邮箱,并根据配置将其转发给不同的本地用户。 本节解释了 fetchmail 的一些基本功能。这个工具需要在用户的主目录下有一个 **.fetchmailrc** 配置,以便正确运行。这个文件包括服务器信息以及登录凭据。由于该文件内容的敏感性,建议使用以下命令使其只能由用户阅读: .. raw:: latex \diilbookstyleinputcell .. code:: shell-session % chmod 600 .fetchmailrc 下面的 **.fetchmailrc** 是一个使用 POP 下载单个用户邮箱的例子。它告诉 fetchmail 使用用户名 ``joesoap`` 和密码 ``XXX`` 连接到 ``example.com``\ 。这个例子假设在本地系统中存在 ``joesoap`` 这个用户。 .. raw:: latex \diilbookstyleinputcell .. code:: shell-session poll example.com protocol pop3 username "joesoap" password "XXX" 下一个例子连接到多个 POP 和 IMAP 服务器,并在适用时重定向到不同的本地用户名: .. raw:: latex \diilbookstyleinputcell .. code:: shell-session poll example.com proto pop3: user "joesoap", with password "XXX", is "jsoap" here; user "andrea", with password "XXXX"; poll example2.net proto imap: user "john", with password "XXXXX", is "myth" here; fetchmail 可以在守护模式下运行,方法是用 ``-d`` 运行,然后是 fetchmail 应该轮询 **.fetchmailrc** 中列出的服务器的时间间隔(秒)。下面的例子将 fetchmail 配置为每 600 秒轮询一次: .. raw:: latex \diilbookstyleinputcell .. code:: shell-session % fetchmail -d 600 关于 fetchmail 的更多信息可以在 http://www.fetchmail.info/ 查看。