在 CentOS 上搭建 带有 DKIM 签名的 满分邮件服务器 (亲测可用)
kevin.Zhu 发布于:2013-11-4 17:09 分类:邮件 有 41 人浏览,获得评论 0 条
你可以到 http://www.mail-tester.com/ 检测你的邮件分数
SPF 记录的设置
反向解析
DKIM 签名
本文使用的是 CentOS + Postfix 其他软件自行变通
首先,向你的 CentOS 添加 EPEL 库
我的服务器使用的是 CentOS 6.5 所以下载 EPEL 6 ( 由于 EPEL 所提供的镜像是 IPV6 地址,请确保你的服务器已经开启 IPV6 )
添加成功后,安装 opendkim
创建 opendkim 配置文件
填入以下内容
创建完毕后,将其添加到 /etc/opendkim/KeyTable 中
然后添加 /etc/opendkim/SigningTable
设置允许进行签名的主机 到 /etc/opendkim/TrustedHosts 中,一般情况下都是本机发信,我们将 127.0.0.1 加入即可。
到 /etc/opendkim/keys/YourDomain.com/default.txt 可以找到你的 key 。
wget http://ftp6.sjtu.edu.cn/fedora/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
rm -f epel-release-6-8.noarch.rpm
yum install opendkim
vi /etc/opendkim.conf
Canonicalization relaxed/relaxed
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
LogWhy Yes
MinimumKeyBits 1024
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SigningTable refile:/etc/opendkim/SigningTable
Socket inet:8891@127.0.0.1
Syslog Yes
SyslogSuccess Yes
TemporaryDirectory /var/tmp
UMask 022
UserID opendkim:opendkim
创建密钥
mkdir /etc/opendkim/keys/YourDomain.com
opendkim-genkey -D /etc/opendkim/keys/YourDomain.com/ -d YourDomain.com -s default
default._domainkey.YourDomain.com YourDomain.com:default:/etc/opendkim/keys/YourDomain.com/default.private
*@YourDomain.com default._domainkey.YourDomain.com
设置 DNS 记录
此时 DKIM 签名软件已经可以正常工作了,接下来就要让 Postfix 所发的邮件经过其处理
打开 Postfix 的 main.cf 配置文件,到达底部,添加如下内容
如果没有错误的话,现在应该可以开始发送了
编辑 Postfix 配置
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = inet:127.0.0.1:8891
milter_protocol = 2
milter_default_action = accept
启动邮件服务器
service opendkim start
#正常返回应为 Starting OpenDKIM Milter: [ OK ]
postfix reload