邮件服务器添加SPF、DKIM、DMARC、PTR

邮件服务器添加SPF、DKIM、DMARC、PTR

之前写过CenOS6系统下邮件服务器的搭建(Postfix+Dovecot),但是这样还是不够的!想要发送出去的邮件不被当成垃圾邮件处理,我们还需要进行一些配置,来启用身份验证。

1.SPF

SPF 记录是一种域名服务 (DNS) 记录,可确定允许哪些邮件服务器代表您的域来发送电子邮件。

SPF的设置选项可以参考:http://www.openspf.org/SPFRecordSyntax

注:需要fan墙

这里说几个常用的:

a:所有该域名的A记录都为通过,a不指定的情况下为当前域名
ip4:指定通过的IP
mx:mx记录域名的A记录IP可以发邮件
all:结束标志,“-”表示只允许设置的记录为通过,“~”表示失败,通常用于测试,“+”表示忽略SPF
例如我的:v=spf1 a mx -all,则表示允许A记录和MX记录IP收发邮件。添加的方法是在域名DNS解析设置一个txt记录,主机记录为空或者@,记录值为v=spf1 a mx -all,其他可以忽略。

2.DKIM

DomainKeys Identified Mail的缩写,域名密钥识别邮件标准。

下载安装EPEL:

64 bit:

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
1
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
32 bit:

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
1
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
安装Opendkim:

yum install opendkim
1
yum install opendkim
生成DKIM key (修改红色部分域名)

请替换下面的域名

export domain=ramuel.com

mkdir /etc/opendkim/keys/$domain

cd /etc/opendkim/keys/$domain

opendkim-genkey -d $domain -s default

chown -R opendkim:opendkim /etc/opendkim/keys/$domain

echo “default._domainkey. domain d o m a i n domain:default:/etc/opendkim/keys/$domain/default.private” >> /etc/opendkim/KeyTable

echo “*@ domaindefault.domainkey. d o m a i n d e f a u l t . d o m a i n k e y . domain” >> /etc/opendkim/SigningTable
1
2
3
4
5
6
7
8
9
10
11
12
13
14

请替换下面的域名

export domain=ramuel.com

mkdir /etc/opendkim/keys/$domain

cd /etc/opendkim/keys/$domain

opendkim-genkey -d $domain -s default

chown -R opendkim:opendkim /etc/opendkim/keys/$domain

echo “default._domainkey. domain d o m a i n domain:default:/etc/opendkim/keys/$domain/default.private” >> /etc/opendkim/KeyTable

echo “*@ domaindefault.domainkey. d o m a i n d e f a u l t . d o m a i n k e y . domain” >> /etc/opendkim/SigningTable
生成之后打开/etc/opendkim/keys/domain.com/default.txt,里面就是DKIM key,需要添加到DNS,主机记录为default._domainkey,记录值为括号里面的(去掉引号)。

修改OpenDKIM设置

vi /etc/opendkim.conf
1
vi /etc/opendkim.conf
1. 将Mode 改为 Mode sv 2. 将Domain 改为 Domain ramuel.com(ramuel.com是之前设置的域名) 3. 将所有变量前面的#去掉,但是KeyFile、Statistics加上# 4. 再把SigningTable /etc/opendkim/SigningTable改成SigningTable refile:/etc/opendkim/SigningTable

设置Postfix

vi /etc/postfix/main.cf

加上下面几行

opendkim setup

smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = inet:127.0.0.1:8891
milter_default_action = accept
1
2
3
4
5
6
7
vi /etc/postfix/main.cf

加上下面几行

opendkim setup

smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = inet:127.0.0.1:8891
milter_default_action = accept
重启服务

service opendkim restart
service postfix restart
chkconfig opendkim on
1
2
3
service opendkim restart
service postfix restart
chkconfig opendkim on
PS: 第一次启动如果出现 Generating default DKIM keys: hostname: Unknown host 可以在 /etc/hosts 上面加上域名,例如:

127.0.0.1 lomu.me localhost localhost.localdomain localhost4 localhost4.localdomain4

3.DMARC

DMARC协议是有效解决信头From伪造而诞生的一种新的邮件来源验证手段,为邮件发件人地址提供强大保护,并在邮件收发双方之间建立起一个数据反馈机制。

具体信息可以看这里:http://dmarc.org/overview/

DMARC记录中常用的参数解释

p:用于告知收件方,当检测到某邮件存在伪造我(发件人)的情况,收件方要做出什么处理,处理方式从轻到重依次为:none为不作任何处理;quarantine为将邮件标记为垃圾邮件;reject为拒绝该邮件。初期建议设置为none。

rua:用于在收件方检测后,将一段时间的汇总报告,发送到哪个邮箱地址。

ruf:用于当检测到伪造邮件时,收件方须将该伪造信息的报告发送到哪个邮箱地址。

例如我设置的是v=DMARC1;p=reject;rua=admin@ramuel.com,意思是拒绝伪造邮件,并且将一段时间的汇总报告发送给我。

添加到DNS

添加TXT记录,主机名:_dmarc,记录值:v=DMARC1;p=reject;rua=admin@ramuel.com

4.PTR记录

PTR记录,是电子邮件系统中的邮件交换记录的一种;另一种邮件交换记录是A记录(在IPv4协议中)或AAAA记录(在IPv6协议中)。PTR记录常被用于反向地址解析。

PTR记录也就是IP反向解析,我们常见的解析都是将域名A记录解析到IP,PTR则是将IP反向解析到对应的域名,通过设置PTR可以提高发信方的信誉,从而提高到达率。

PTR设置

通过观察,一般国外的VPS都会直接将购买的时候的hostname设置为PTR记录值,但是我买的阿里云的并没有,所以这个需要提交售后工单要求客服帮你添加的,添加的值为安装postfix的时候设置的myhostname,例如我的是mail.ramuel.com。

添加好了以后可以通过以下命令查看

dig -x IP
1
dig -x IP
如果看到了PTR记录为你的域名那就说明成功了。

到这里,基本上只要不发垃圾邮件,邮件的到达率应该就没啥问题了。

这里给大家推荐一个测试工具:http://www.mail-tester.com/,只要给页面上的邮箱随便发一封邮件,然后点击按钮提交就可以看到测试结果,里面会有一些优化建议,非常好用。

本站所有关于邮件群发技术的文章均为未来邮件群发原创,转载请注明出处http://www.ramuel.com/linux-mail-spf-dkim-dmarc-ptr.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值