iRedMail是一个免费开源的邮件系统解决方案,它实际上就是一套shell程序将整个邮件系统需要的开源软件整合起来。它主要有以下几个组件:

Postfix      SMTP服务器

Dovecot      POP3/POP3S,IMAP/IMAPS服务器

Apache       Web服务器,0.9.0版本开始支持Nginx

MySQL       存储应用日志或者邮件账户

OpenLDAP     存储邮件账户

Cluebringer   Postfix策略服务器

Amavisd      用于Postfix与SpamAssassin和ClamAV交互的接口。

SpamAssassin  基于内容的垃圾邮件扫描工具

ClamAV      病毒扫描工具

Roundcube    Webmail

Awstats      Apache和Postfix日志分析工具

process.png

iRedMail最新版本是0.9.0。安装iRedMail最好是一台全新的服务器上安装,这台服务器上不能安装有相关组件例如MySQL,OpenLDAP,Apache等,因为安装脚本会覆盖这些配置。最低内存要求为1G。

1.设置FQDN主机名

$ hostname -fmx.xxxx.com

相关文件

/etc/sysconfig/networkHOSTNAME=mx.xxxx.com/etc/hosts127.0.0.1 mx.icongtou.com

2.关闭SELinux

/etc/selinux/config SELINUX=disabled

3.开始安装

cd iRedMail-0.9.0

iredmail.org域名被国内屏蔽掉了,将所有pkgs/get_all.sh脚本中的iredmail.org替换成106.187.51.47,然后再执行iRedMail.sh脚本

sh iRedMail.sh

welcome.png

location_to_store_mailboxes.png

安装完成后在iRedMail-0.9.0/iRedMail.tips文件里面记录了整个安装过程中的重要信息,妥善保管

4.设置DNS A记录和MX记录

通常一个邮件系统有多个MX记录,优先级数值越小,优先级越高。

5.设置SPF记录

SPF,Sender Policy Framework是一个用来防止垃圾邮件和钓鱼邮件的方法,通过设置DNS的SPF记录来实现运行哪些主机可以使用这个个邮件域来发送邮件,防止恶意冒充邮件域发送垃圾邮件。当其他邮件服务器接收来自这个邮件域的邮件时,可以通过查询SPF记录来确保发送邮件来源IP合法。

例如:

SPF指向MX记录,则MX记录中定义的所有邮件服务器运行发送这个邮件域的邮件,如果SPF记录直接指向IP地址,那么只允许特定的IP地址发送这个邮件域的邮件

mydomain.com.   3600    IN  TXT "v=spf1 mx mx:mydomain.com -all"
mydomain.com.   3600    IN  TXT "v=spf1 ip4:192.168.1.100 -all"

6.添加DKIM记录

DKIM,DomainKeys Identified Mail域名识别邮件。DKIM让企业可以把加密签名插入到发送的电子邮件中,然后把该签名与域名关联起来。签名随电子邮件一传送,而不管是沿着网络上的哪条路径传送,[1] 电子邮件收件人则可以使用签名来证实邮件确实来自该企业。

# amavisd -c /etc/amavisd/amavisd.conf showkeys; key#1, domain xxxx.com, /var/lib/dkim/xxxx.com.pemdkim._domainkey.xxxx.com.	3600 TXT (  "v=DKIM1; p="  "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC9LIXfOEstlECdL8qZpEMxcmAl"  "BfpTGJ6XMEt1TBYysYR6TIXdojGZcixFCGdyRZqTWFxAZGY716tkGYXOxXlDm49a"  "zBOxJ6/L/H2bC+EJu5YtpQPZjv6bFmqLh84C4RWuTFDxuzRq+PYuSvpTt9sYqpUD"  "CjlbDjZ1JoatmdTzCwIDAQAB")

# amavisd testkeysTESTING: dkim._domainkey.mydomain.com       => pass

参考文档