您好,我是Hellos AI,一个10年+互联网从业者,现在专注于自媒体。希望我的文章能够为您带来更多精彩。如果您觉得我的文章对您有帮助,可以关注、点赞,谢谢!
往期有关教育邮件服务器搭建手把手教程如下:
教育邮件服务器搭建手把手教程:nginx、php、mysql安装部署
今天我们继续后续搭建过程:
在前面我们已经把centOS服务器上nginx、php、mysql都安装好之后,我们还要安装和配置postfix和dovecot。

简介
因为在CentOS/RHEL发行版中,Postfix和Dovecot是不默认安装到服务器中的,不过它们的安装包是包含在软件仓库中,可以很方便的通过rpm命令、yum命令来进行安装。
一、功能特点
1、Postfix
邮件传输代理:负责邮件的接受、路由和发送;
安全性高:采用模块化设计,各组件以最低权限运行;
配置简单:主配置文件清晰易懂;
高性能:采用队列机制处理邮件,支持高并发;
兼容性强:支持SMTP、SMTPS协议,能与多种MDA配合;
2、Dovecot
邮件投递代理(MDA):提供IMAP/POP3服务
高效存储:支持mbox和Maildir格式,推荐使用Maildir
安全性强:默认支持SSL/TLS加密
资源占用低:优化良好,适合高负载环境
扩展性好:支持插件系统,可添加反病毒、全文搜索等功能
二、工作原理

1. 发送邮件(SMTP + 鉴权)
a.客户端连接 Postfix
i.客户端通过 SMTP(端口 25 或 587)连接到 Postfix。
ii.若使用加密,客户端会发起 STARTTLS 命令。
b.Postfix 请求鉴权
i.客户端发送 AUTH LOGIN 或 AUTH PLAIN 命令。
ii.Postfix 根据 /etc/postfix/main.cf 中的配置,将认证请求转发给Dovecot:
smtpd_sasl_type=dovecotc.Dovecot 处理认证
i.Dovecot 通过 Unix 套接字 /var/spool/postfix/private/auth 接收请求。
根据 /etc/dovecot/conf.d/10-auth.conf 配置的认证后端(如系统用户、ii.SQL、LDAP)验证密码。
iii.返回认证结果给 Postfix。
d.邮件投递
i.认证成功后,Postfix 接收邮件并存入队列。
ii.Postfix 调用 Dovecot 的 LDA(本地投递代理)将邮件写入用户 ~/Maildir 目录。
2. 接收邮件流程(IMAP/POP3)
a.客户端连接 Dovecot
客户端通过IMAP(端口143/993)或POP3(端口110/995)链接到Dovecot
加密将连接会直接使用SSL(如993端口)
b.Dovecot独立鉴权
dovecot直接验证用户身份(与SMTP认证共享同一套密码源) 认证成功后,从用户~/Maildir目录读取邮件列表或内容
c.返回邮件数据
dovecot将邮件内容通过IMAP/POP3协议返回给客户端
Postfix安装配置
一、安装
## 更新系统二、配置
main.cf:配置如下(/etc/postfix/main.cf)
[root@mydomain postfix]# cat main.cfmaster.cf:配置如下(/etc/postfix/master.cnf)
[root@mydomain postfix]# cat master.cf邮箱中继代理配置如下:
[root@mydomain postfix]# more sasl_passwd至此postfix的配置基本结束,接下来,我们来配置dovecot
Dovecot安装配置
一、安装
## 安装Dovecot及依赖二、配置
1.主配置文件/etc/dovecot/dovecot.conf
[root@mydomain dovecot]# cat dovecot.conf2.ssl证书配置/etc/dovecot/conf.d/10-ssl.conf
[root@mydomain conf.d]# cat 10-ssl.conf3.邮件存储配置/etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir4.认证配置/etc/dovecot/conf.d/10-auth.conf
auth_mechanisms = plain login5.禁用dovecot的明文端口/etc/dovecot/conf.d/10-master.conf
[root@mydomain conf.d]# cat 10-master.conf上面这些内容配置好之后,我们可以实现在不同服务器之间的邮件收发服务了!
最后
测试效果如下:1.接收邮件:这里我们可以使用gmail向该邮箱发送一封邮件:


2.发送邮件

