为您的iRedMail服务器设置DNS记录(A,PTR,MX,SPF,DKIM)

重要提示AMX记录是必需的,Reverse PTRSPF和 DKIM是可选的,但强烈建议。总之,请把它们全部放好。

服务器主机名的记录

什么是A记录

A记录将FQDN(完全限定的域名)映射到IP地址。这通常是任何DNS系统中最常用的记录类型。如果您想将域名指向Web服务器,则这是您应该添加的DNS记录。

如何设置A记录

  • Name:这将成为您域名的主机,而您的域名实际上是一台计算机。您的域名将自动附加到您的姓名。如果您正在尝试为系统创建记录www.mydomain.com然后,您输入的文本框中的名称值是www

    注意:如果您将名称字段留空,它将默认为您的基本域的记录mydomain.com您的基本域的记录称为根记录或顶点记录。

  • IP:您的FQDN的IP地址。IP地址可以被认为是电脑的电话号码。这是一台计算机如何知道如何到达另一台计算机。与国家代码,地区代码和电话号码类似,它用于呼叫某人。

  • TTL:TTL(生存时间)是您的记录在请求记录的系统(解析名称服务器,浏览器等)中保留在缓存中的时间量。TTL设置在几秒钟内,所以60分钟是一分钟,1800分钟是30分钟等。

具有静态IP的系统通常应具有1800或更高的TTL。具有动态IP的系统通常应该具有1800以下的TTL。

TTL越低,客户需要查询主机(记录)IP地址的名称服务器越频繁,这将导致您的域名的查询流量更高。当需要快速切换IP时,TTL非常高可能导致停机。

样本记录:

NAME                TTL     TYPE    DATA

www.mydomain.com.   1800    A       192.168.1.2
mail.mydomain.com.  1800    A       192.168.1.5

这条记录的最终结果是www.mydomain.com指向 192.168.1.2mail.mydomain.com指向192.168.1.5

反向服务器IP地址的PTR记录

什么是反向PTR记录

PTR记录或更适当的反向PTR记录是将IP地址解析为与其关联的主机名的过程。这与将主机名解析为IP地址(A记录)的过程完全相反例如,当你ping一个名字时,mail.mydomain.com它会使用DNS来解析到IP地址192.168.1.5反向PTR记录则相反; 它会查找给定IP地址的主机名。在上面的例子中,IP地址的PTR记录192.168.1.5将被解析为mail.mydomain.com

为什么你需要一个反向PTR记录

查找PTR记录最常见的用途是垃圾邮件过滤器。这个想法背后的概念是,通过使用虚假域发送电子邮件的夜间垃圾邮件发送者通常不会在ISP DNS区域具有适当的反向PTR设置。垃圾邮件过滤器使用此标准检测垃圾邮件。如果您的域名没有一个适当的反向PTR记录设置然后有机会的垃圾邮件过滤软件MIGHT从您的邮件服务器阻止电子邮件。

如何设置反向PTR记录

您很可能需要联系您的ISP,并请求为您的邮件服务器IP地址创建反向PTR记录。例如,如果您的邮件服务器主机名mail.mydomain.com然后要求您的ISP 192.168.1.5在其revesre DNS区域中设置反向PTR记录(您的互联网公共IP地址)。即使您可能拥有自己的正向查找DNS区域,您的ISP也会处理反向DNS区域。

邮件域名的MX记录

什么是MX记录

邮件交换记录或更一般称为MX记录是您的域的DNS服务器中的一个条目,用于告知其他邮件服务器您的邮件服务器位于何处。当有人通过互联网向邮件服务器上存在的用户发送电子邮件时,MX会提供发送该电子邮件的位置或IP地址。MX记录是您通过DNS提供给外部世界的邮件服务器的位置。

大多数邮件服务器通常具有多个MX记录,这意味着您可以有多个邮件服务器设置来接收电子邮件。每个MX记录都有一个在DNS中分配给它的优先级号码。具有最低号码的MX记录具有最高的优先级,并被认为是您的主要MX记录或主邮件服务器。下一个最低的mx号码具有次最高的主号码,依此类推。您通常拥有多台邮件服务器,其中一台是主服务器,另一台是备份服务器,但只有一台邮件服务器也可以。

如何设置MX记录

如果您的ISP或域名注册商提供DNS服务,您可以要求他们为您设置一个。如果您管理自己的DNS服务器,那么您需要自己在DNS区域中创建MX记录。

示例MX记录:

NAME            PRIORITY    TYPE    DATA

mydomain.com.   10          mx      mail.mydomain.com

该记录的最终结果是,发送给的电子邮件[user]@mydomain.com将被传送到服务器mail.mydomain.com

SPF记录您的邮件域名

什么是SPF记录

SPF是一种垃圾邮件和网络钓鱼诈骗方法,它使用DNS SPF记录来定义允许哪些主机为某个域发送电子邮件。有关SPF的详细信息,请参阅http://www.openspf.org/

这通过为电子邮件域名定义DNS SPF记录来指定哪些主机(电子邮件服务器)被允许从域名发送电子邮件。

其他电子邮件服务器在收到来自此域名的电子邮件时可以查找此记录,以验证发送电子邮件服务器是否从允许的IP地址进行连接。

如何设置SPF记录

最近在DNS协议中增加了一种新的SPF记录类型来支持这一点(RFC4408)。

然而,并非所有DNS和电子邮件服务器都支持这种新的记录类型,因此也可以使用TXT记录类型在DNS中配置SPF。

例子:

  • SPF记录参考MX记录。这意味着mydomain.com发件人组织允许从MX记录中定义的所有服务器发送的电子邮件
mydomain.com.   3600    IN  TXT "v=spf1 mx mx:mydomain.com -all"
  • 或SPF记录直接参考IP地址。这意味着发件人组织允许从指定IP地址发送的电子邮件。
mydomain.com.   3600    IN  TXT "v=spf1 ip4:192.168.1.100 -all"

-all 意味着禁止所有其他人。

有更多有效的机制可用,请查看 OpenSPF网站了解更多详情。

DKIM记录您的邮件域名

什么是DKIM记录

DKIM允许组织以可以由收件人验证的方式对消息负责。该组织可以是消息的直接处理程序,例如作者,原始发送站点或沿途的中介。但是,它也可以是间接处理程序,例如为直接处理程序提供帮助的独立服务。DKIM通过使用公共密钥密码术并使用域名服务作为其关键服务器技术(RFC4871)为电子邮件定义了一个域级数字签名认证框架)。它允许验证消息的签名者以及其内容的完整性。DKIM还将提供一种机制,允许潜在的电子邮件签名者发布有关其电子邮件签名做法的信息; 这将允许电子邮件接收方对未签名的消息进行额外的评估。DKIM对电子邮件身份的认证有助于全球控制“垃圾邮件”和“网络钓鱼”。

一个人或组织有一个“身份” - 也就是说,有一组特征可以区别于任何其他身份。与此抽象相关联的可以是用作参考的标签,或“标识符”。这是事物与事物名称之间的区别。DKIM使用域名作为标识符来引用负责人或组织的身份。在DKIM中,该标识符称为签名域标识符(SDID),并包含在DKIM签名标头字段d= 标签中。请注意,相同的身份可以有多个标识符。

如何设置DKIM记录

  • 在终端中运行命令以显示您的DKIM密钥:
# amavisd showkeys
dkim._domainkey.mydomain.com.   3600 TXT (
  "v=DKIM1; p="
  "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYArsr2BKbdhv9efugByf7LhaK"
  "txFUt0ec5+1dWmcDv0WH0qZLFK711sibNN5LutvnaiuH+w3Kr8Ylbw8gq2j0UBok"
  "FcMycUvOBd7nsYn/TUrOua3Nns+qKSJBy88IWSh2zHaGbjRYujyWSTjlPELJ0H+5"
  "EV711qseo/omquskkwIDAQAB")

注意:在某些Linux / BSD发行版中,您应该使用命令amavisd-new 而不是amavisd如果它抱怨/etc/amavisd.conf not found,你应该告诉amavisd其配置文件的正确路径。例如:

# amavisd -c /etc/amavisd/amavisd.conf showkeys
  • 将上面的命令输出复制到下面的一行中,删除所有引号,但保留;我们只需要()内的字符串,这是DKIM DNS记录的值。
v=DKIM1; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYArsr2BKbdhv9efugBy...

注意:BIND(使用最广泛的名称服务器软件)可以处理这种多行格式,因此您可以直接将其粘贴到域区域文件中。

  • TXT为域名添加DNS记录类型dkim._domainkey.mydomain.com,将值设置为上面复制的行:v=DKIM1; p=...

    警告:通常的错误是将此DKIM记录添加到域名 mydomain.com,这是错误的。请确保您已添加到域名dkim._domainkey.mydomain.com

  • 在DNS中添加此内容后,请使用dig或进行验证nslookup

$ dig -t txt dkim._domainkey.mydomain.com

$ nslookup -type=txt dkim._domainkey.foodmall.com

示例输出:

dkim._domainkey.mydomain.com. 600 IN TXT    "v=DKIM1\;p=..."

并用Amavisd验证它:

# amavisd testkeys
TESTING: dkim._domainkey.mydomain.com       => pass

如果它显示pass,它的工作。

注意:如果您使用ISP提供的DNS服务,新的DNS记录可能需要几个小时才能使用。

如果您想重新生成DKIM密钥,或者需要为新的邮件域生成一个,请检查我们的另一个教程: 在传出电子邮件上签署DKIM签名以获取新的邮件域

posted @ 2018-04-04 11:57  Snow-Wolf  阅读(2768)  评论(0编辑  收藏  举报