2.  基础知识
发邮件协议:smtp(Simple Mail Transfer Protocol) 端口25 
收邮件协议:pop3(Post Office Protocol 3 ) 端口110
收邮件协议:imap, 优于pop3,可以根据用户需求指定下载删除邮件,而不是下载全部,端口143

MTA: mail transfer agent 邮件传输代理,发邮件的(sendmail,postfix)
MRA: mail retravial agent 邮件检索代理,收邮件(dovecot)
MDA: mail delivery agent 邮件投递代理,帮助投递邮件(maildrop) 
MUA: mail user agent 邮件用户代理,个人主机上的收发代理软件(outlook,foxmail) 

3. iredmail
iRedMail 为一个开源项目,基于GPL(v2)协议发布。官网 www.iredmail.org (国内不能访问),可以通过www.iredmail.com访问。

iRedMail 核心组件及其对应的功能:
Postfix: SMTP 服务器
Dovecot: POP3/IMAP/Managesieve 服务器
Apache: Web 服务器
MySQL: 用于存储其它程序的数据,也可用于存储邮件帐号。
OpenLDAP: 用于存储邮件帐号。
Policyd: Postfix policy server
Amavisd: 提供 DKIM 签名及校验、SPF校验、为外发邮件添加“免责声明”内容,并调用 SpamAssassin 做基于邮件内容的发垃圾扫描,调用 ClamAV 做邮件病毒扫描。
Roundcube: Webmail
Awstats: 用于分析 Apache 和 Postfix 日志文件,并生成简单的图表。
Fail2ban: 扫描各种日志文件,发现多次密码错误等情况时可自动封禁对方 IP 一段时间。用于保证服务器安全。
iRedAdmin:基于 web 的邮件帐号管理程序。

iredmail安装

准备工作:
hostname  mail.lishiming.net 
vim /etc/hosts    //加入
127.0.0.1  mail.lishiming.net
106.187.51.47  www.iredmail.org  iredmail.org
配置DNS解析:
MX记录  mail.lishiming.net
A 记录  把mail.lishiming.net 指向一个IP,这个IP就是我们要做邮件服务器的ip

下载iRedMail
wget http://www.iredmail.com/iRedMail-0.9.2.tar.bz2  (当前最新版本为0.9.2,以后会变,请到http://www.iredmail.com/download.html 下载最新版本)

若你的服务器为国内服务器,那么在安装前需要做一些处理:
tar jxvf iRedMail-0.9.2.tar.bz2 
cd iRedMail-0.9.2/pkgs
vi  get_all.sh //  把   https://mirrors.fedoraproject.org 改为 http://mirrors.fedoraproject.org

sed -i 's/iredmail.org/106.187.51.47/g'  get_all.sh
cd ..; sh iRedMail.sh  //这个过程需要很久,耐心等待有一步骤是问我们是否打开防火墙,建议大家不要开启:
Would you like to use firewall rules provided by iRedMail now?
< Question > File: /etc/sysconfig/iptables, with SSHD port: 22. [Y|n]n

5. 使用邮箱系统
安装完后,看下这些服务是否启动: 使用命令pstree

for  s in  httpd   iredapd  amavisd  clamd  postfix  dovecot  cbpolicyd  spamassassin  clamd.amavisd  saslauthd   fail2ban; do /etc/init.d/$s restart; done

[Dovecot 启动失败:  vim /etc/dovecot/dovecot.conf    

listen= * [: :]改为listen= *   ---关闭ipv6] 

/etc/init.d/dovecot restart   ---重启

安装完后,登陆iredadmin 创建用户,并登录 Roundcube系统测试收发邮件。在该步骤中,你可能会遇到这样的问题:发邮件正常,收邮件非常慢,需要等十分钟之久,查看maillog发现这样的提示:Recipient address rejected: Greylisting in effect, please come back later。这是因为Policyd服务造成的,解决办法:
vim /etc/policyd/cluebringer.conf  //找到 Greylisting这个模块,在前面加#

然后重启dovecot/postfix/cbpolicyd服务 : service dovecot restart; service postfix restart; service cbpolicyd restart