江右东流

关于

在Mac OS X里使用Mutt和fetchmail收gmail的信

[ Mac  终端  命令行  mutt  fetchmail  Gmail  ]

11 Sep 2008

昨天在GR里看到了《完全用命令行工作》这篇文章,心里很是痒痒。今天便先从Mutt开始尝试了。

我先用ports搜索了把:

 sudo port search fetchmail
 sudo port search mutt

mutt虽然自带了收信功能,但是有更好的fetchmail可以选择,为啥不用。而且fetchmail可以做一个转发过滤,这样可以针对特定的邮件做特定响应。

然后发现mutt有一个开发版本mutt-devel,于是装之:

 sudo port install fetchamail
 sudo port install mutt-devel

安装完毕后开始配置fetchmail收gmail,将下面的命令保存为~/.fetchmailrc

 set daemon 60
 poll pop.gmail.com with proto POP3 and options no dns
 user 'GMAIL_USERNAME@gmail.com' there with password 'GMAIL_PASSWORD' \
           is 'LOCAL_USERNAME' here and wants mda "/usr/bin/procmail -d %T"  \
           options ssl keep sslcertck sslcertpath "/Users/LOCAL_USERNAME/.ssl/certs"

将上面命令里的GMAIL_USERNAME、GMAIL_PASSWORD、LOCAL_USERNAME替换为你自己的

然后设置好.fetchmailrc的权限

 chmod 710 ~/.fetchmailrc

接下来从gmail的pop服务器获取SSL证书:

 openssl s_client -connect pop.gmail.com:995 -showcerts

这个命令会有一大段的输出,复制这一段:

 -----BEGIN CERTIFICATE-----
 (a big bunch of characters here)
 -----END CERTIFICATE----

然后保存到 ~/.ssl/certs/gmailpop.pem

然后从这里下载certificate authority (Equifax) root certificate并保存到 ~/.ssl/certs/equifax.pem

在终端里输入:

 c_rehash ~/.ssl/certs/

到此就大功告成!在终端输入 fetchmail 开始收信,然后在mutt里便会看到所有的信。