|
|
1:按照BLFS-6.1文档安装fetchmail/procmail/mutt
2:安装libesmtp/esmtp : 地址 http://www.stafford.uklinux.net/libesmtp/libesmtp-1.0.4.tar.bz2
http://prdownloads.sourceforge.net/esmtp
3: 按照BLFS-6.1文档安装openssl
4:取得gmail的cert文件:
运行:
$ openssl s_client -connect smtp.gmail.com:995 -showcerts
输出:
CONNECTED(00000003)
depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc./CN=pop.gmail.com
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc./CN=pop.gmail.com
verify error:num=27:certificate not trusted
verify return:1
depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc./CN=pop.gmail.com
verify error:num=21:unable to verify the first certificate
verify return:1
---
Certificate chain
0 s:/C=US/ST=California/L=Mountain View/O=Google Inc./CN=pop.gmail.com
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
-----BEGIN CERTIFICATE-----
MIIC3TCCAkagAwIBAgIDBZIAMA0GCSqGSIb3DQEBBQUAME4xCzAJBgNVBAYTAlVT
MRAwDgYDVQQKEwdFcXVpZmF4MS0wKwYDVQQLEyRFcXVpZmF4IFNlY3VyZSBDZXJ0
aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDUxMTE1MjEyMjQ0WhcNMDcxMTE2MjEyMjQ0
WjBoMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN
TW91bnRhaW4gVmlldzEUMBIGA1UEChMLR29vZ2xlIEluYy4xFjAUBgNVBAMTDXBv
cC5nbWFpbC5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMP8LCYiLGJ/
RihwcOi1V/zHVTw0Gfu+mI141Vjuuj2DtQoav8emwlXbu8gZoKP9GeMWpX1Vo9qN
4gkslIToHmDnIwGjcaEAfpdhSR9g54Kf5Y7BEXVyco6mTIlpe9vsbV0dmB1FvLP2
1N09dkUJfi7V0fjb8mcn3QYu6+6QNoxPAgMBAAGjga4wgaswDgYDVR0PAQH/BAQD
AgTwMB0GA1UdDgQWBBTdASsopgao1m8hcEg0cDZhucltljA6BgNVHR8EMzAxMC+g
LaArhilodHRwOi8vY3JsLmdlb3RydXN0LmNvbS9jcmxzL3NlY3VyZWNhLmNybDAf
BgNVHSMEGDAWgBRI5mj5K9KylddH2CMgEE8zmJCf1DAdBgNVHSUEFjAUBggrBgEF
BQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADgYEAln3/pVqYnUXA1TVGzOqX
LFhohGxpuNkr1UJnQmYxmZeB07uPBYRX8c0JXEKs29TmAHRsLhmp8kF36F11Dxgi
Xm/Y8I9zgWHoMj7SL3Ve/u8K8K7XcUyUuaWmldLQAREafpFy+f+KYHGuAVh8hjy6
XyPlMCqj+PNp8QXjgOcgO68=
-----END CERTIFICATE-----
---
Server certificate
subject=/C=US/ST=California/L=Mountain View/O=Google Inc./CN=pop.gmail.com
issuer=/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
---
No client certificate CA names sent
---
SSL handshake has read 891 bytes and written 338 bytes
---
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 1024 bit
SSL-Session:
Protocol : TLSv1
Cipher : DES-CBC3-SHA
Session-ID: CFCAB44667A90184C8ABCC6F4D2D1C8EC29A9DBDAD11D815E7E22DC5E34213F6
Session-ID-ctx:
Master-Key: 1AFCF4EC31DF0A5930B527BDC55B86D69285DD044E939BDDF18884F61F1E8340EFE7BF85CC50F98F657FB0579CF612F7
Key-Arg : None
Start Time: 1134601370
Timeout : 300 (sec)
Verify return code: 21 (unable to verify the first certificate)
---
+OK Gpop m2pf1356431nzf ready.
将中间的:
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
拷贝到~/.cert/gmail.pem
5: 生成CA文件
将上面的gmail.pem前面加上Fingerprint, 生成~/.cert/cert.pem
MD5 Fingerprint: 67:CB:9D:C0:13:24:8A:82:9B:B2:17:1E 1:1B:EC 4
PEM Data:
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
6: rehash 4和5产生的文件:cert.pem和gmail.pem
运行:
$ c_rehash .certs
7: 检查CA文件:
运行:
openssl s_client -connect pop.gmail.com:995 -CApath .certs/
如果输出中有:
Verify return code: 0 (ok)
则CA文件是好的.
8: 编辑~/.fechmailrc
# begin of ~/.fetchmailrc
defaults
mda "/usr/bin/esmtp -f %F %T"
poll pop.gmail.com proto POP3 and options no dns
user "XXX" there with pass 'XXXXXX' is 'XXX' here options ssl sslcertck sslcertpath '/home/XXX/.certs'
# end of ~/.fetchmailrc
运行
$ chmod 0600 .fetchmailrc
9: 编辑~/.esmtprc
# begin of ~./esmtprc
hostname = smtp.gmail.com
username = "XXX@gmail.com"
password = "XXXXXX"
starttls = enabled
mda = "/usr/bin/procmail -d %T"
# end of ~/.esmtprc
运行
$ chmod 0710 .esmtprc
10: 编辑~/.muttrc
# begin of ~/.muttrc
set envelope_from
set sendmail="/usr/bin/esmtp -v -X ~/.esmtplog"
my_hdr From: "XXX@gmail.com"
my_hdr Reply-To: "XXX@gmail.com"
set sendmail_wait=0
# end of ~/.muttrc
11: 用fetchmail收信
运行:
$ fetchmail -avk
12: 用mutt测试发信.
运行:
$ mutt
按"m"写信, 按"y"寄信
我在自己的机器上测试发送信件到yahoo的邮箱成功. |
|