rpm -ivh http://download4.fedora.redhat.com/pub/epel/5/`uname -i`/dkim-milter-2.8.3-8.el5.`uname -i`.rpm --nodeps
下载安装dkim-milter或使用http://share.weiyun.com/6d2451b18db946e6eb85a8f80c346f79下载
使用dkim-genkey生成公钥、私钥:
dkim-genkey -s usa1 -d usa1.sample.com
-s参数为selector默认为default
-d参数后为你的域名
执行成功后将会生成两个文件:
usa1.txt
usa1.private
private为私钥
txt为公钥,内容格式为:
usa1._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDaCbPKY7eG4jaCT8fg9lvuFwv9cHWgzMpoQwr7STP7gG0sUbYwyuKxP3N7ufMuVf92UW3ysK/yYQsk6A+8//t0GxF7RsELb6guCNpSRGhlQ7d13e29SIoPOagOvRWRIDpi74eDiuvCXZdMhjKJFtIRaxByfYTsOGb/uEOPDX0tiQIDAQAB" ; ----- DKIM usa1 for usa1.sample.com
你需要在你的sample.com域添加一条txt解析,主机为usa1._domainkey,内容为以上内容引号内的内容(不含引号)
接下来配置dkim,编辑/etc/mail/dkim-milter/dkim-filter.conf:
Domain sample.com
Selector usa1
KeyFile /etc/postfix/dkim/usa1.private
Socket inet:12222
启动dkim:
/usr/sbin/dkim-filter -x /etc/mail/dkim/dkim-filter.conf
如果出现报错:
/usr/sbin/dkim-filter: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory
你需要执行:
64位:
ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6
ln -sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6
32位:
ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so.6
ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.6
dkim-filter: /etc/mail/dkim-milter/dkim-filter.conf: no keys loaded from /etc/mail/dkim-milter/keys/keylist
编辑/etc/mail/dkim-milter/dkim-filter.conf,将Keylist注释即可:
#KeyList /etc/mail/dkim-milter/keys/keylist
编辑/etc/postfix/mail.cf,增加一下两条配置以启用dkim验证:
smtpd_milters = inet:12222
non_smtpd_milters = $smtpd_milters
可参考文章:
http://hi.baidu.com/dongfangmn/item/75260e0285dbb6d972e67622