极简设计

postfix

postfix

简介

IBM荷兰研究完Wietse Venema设计替代sendmail 邮件系统其实相当复杂,涉及不下数十个 RFC,收/发信就有不同的两个 RFC(SMTP, POP3) 掌握配置管理的困难在于理解它的设计和工作原理,单靠看 Postfix 本身命令集或者文档不能满足

  • 更快

比sendmail快N倍

  • 兼容sendmail

  • 健壮

负载过重时自动减少进程等

  • 灵活

一打小程序组成,各自完成特定功能

  • 安全

邮件队列(mail queues)

  1. maildrop
  2. incoming
  3. active
  4. deferred

故障处理

  • 邮件风暴

初始接受2个并发连接,发送成功后增加至可配置的值,出错后开始降低

  • 无法投递

打上未来时间标签,队列管理程序忽略此标签,再失败时间翻倍,数次后返回错误

  • 不可达

内存存有不可达列表长度限制

DKIM(DomainKeys Identified Mail)

发邮件时候通过私钥在邮件头写一段加密信息,公钥放到 DNS 服务器上,邮件接收方通过邮件头的加密信息来和 DNS 上的公钥比对来判定邮件来源是否合法 sudo apt-get install opendkim opendkim-tools

邮件服务器添加 SPF、DKIM、DMARC、PTR 提高送达率 http://lomu.me/post/SPF-DKIM-DMARC-PTR

http://lomu.me/post/linux-email-server

Postfix 配置 SPF DKIM http://xtu2.com/812.html

在 CentOS 上搭建 带有 DKIM 签名的 满分邮件服务器 https://www.v2ex.com/t/161912

邮件优化技巧 教你搭建满分的邮件服务器 (DKIM) http://blog.eqoe.cn/posts/build-perfect-mail-server.html

SPF

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

这里说几个常用的:

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

v=DKIM1; k=rsa; p=xxxx

http://blog.51yip.com/server/1382.html

with :