linux-运维进阶-20 Postfix与Dovecot部署邮件系统
实验环境配置,Centos7虚拟机两台:
Test(192.168.141.12):提供DNS服务
client2(192.168.141.53):提供postfix和dovecot服务
测试用的是咱们的物理机
概念解析
电子邮件
电子邮件系统基于邮件协议来完成电子邮件的传输,常见的邮件协议有下面这些。
• 简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)
用于发送和中转发出 的电子邮件,占用服务器的25/TCP端口。
• 邮局协议版本3(Post Office Protocol 3)
用于将电子邮件存储到本地主机,占用服 务器的110/TCP端口。
• Internet消息访问协议版本4(Internet Message Access Protocol 4)
用于在本地 主机上访问邮件,占用服务器的143/TCP端口。
Postfix
Postfix是一种电子邮件服务器,它是由任职于IBM华生研究中心(T.J. Watson Research Center)的荷兰籍研究员Wietse Venema为了改良sendmail邮件服务器而产生的。最早在1990年代晚期出现,是一个开放源代码的软件。
dovecot
Dovecot 是一个开源的 IMAP 和 POP3 邮件服务器,支持 Linux/Unix 系统。Dovecot 是一个比较新的软件,由 Timo Sirainen 开发,最初发布于 2002年7月。作者将安全性考虑在第一,所以 Dovecot 在安全性方面比较出众。另外,Dovecot 支持多种认证方式,所以在功能方面也比较符合一般的应用。
Test(192.168.141.12):提供DNS服务
这里几乎和上篇文章中所做一模一样,但是毕竟是新的一片文章,所以我们重新做一遍,也好顺便复习上篇文章中敲过的命令。
Test安装DNS服务软件包
1 | [root@localhost ~]# yum install bind bind-chroot bind-utils -y |
修改主配置文件
1 | [root@localhost ~]# vim /etc/named.conf |
正向区域解析区域配置文件
1 | [root@localhost ~]# vim /etc/named.rfc1912.zones |
配置正向解析数据文件
1 | [root@localhost ~]# cd /var/named/ |
防火墙放行服务
1 | [root@localhost named]# firewall-cmd --add-service=dns --permanent |
修改反向解析区域配置文件
1 | [root@localhost named]# vim /etc/named.rfc1912.zones |
反向区域解析数据文件
1 | [root@localhost named]# cp feng.io.zone 192.168.141.arpa |
client2(192.168.141.53):提供postfix和dovecot服务
配置主机域名,需要保证服务器主机名称与发信域名保持一致:
1 | [root@localhost ~]# hostnamectl set-hostname mail.feng.io |
修改dns配置
1 | [root@localhost ~]# vi /etc/resolv.conf |
检查dns服务
1 | [root@localhost ~]# nslookup |
可以看出,dns服务正常,正反向解析都成功了。
安装邮件服务器需要的软件包
1 | [root@localhost ~]# yum install postfix dovecot -y |
配置postfix服务
参数 | 作用 |
---|---|
myhostname | 邮局系统的主机名 |
mydomain | 邮局系统的域名 |
myorigin | 从本机发出邮件的域名名称 |
inet_interfaces | 监听的网卡接口 |
mydestination | 可接收邮件的主机名或域名 |
mynetworks | 设置可转发哪些主机的邮件 |
relay_domains | 设置可转发哪些网域的邮件 |
1 | [root@localhost ~]# vi /etc/postfix/main.cf |
Postfix与vsftpd服务程序一样,都可以调用本地系统的账户和密码,因此在本地系统创建常规账户即可。最后重启配置妥当的postfix服务程序,并将其添加到开机启动项中
1 | [root@localhost ~]# useradd aaa |
配置dovecot服务
修改配置文件
1 | [root@localhost ~]# vi /etc/dovecot/dovecot.conf |
允许明文传输内容
1 | [root@localhost ~]# vi /etc/dovecot/conf.d/10-auth.conf |
取消SSL
1 | [root@localhost ~]# vi /etc/dovecot/conf.d/10-ssl.conf |
设置收件箱
1 | [root@localhost ~]# vi /etc/dovecot/conf.d/10-mail.conf |
然后切换到配置Postfix服务程序时创建的eagle账户,并在家目录中建立用于保存邮件的目录。记得要重启Dovecot服务并将其添加到开机启动项中。至此,对Dovecot服务程序的配置部署步骤全部结束。
1 | [root@localhost ~]# su - aaa |
设置邮件服务的防火墙放行
1 | [root@localhost ~]# firewall-cmd --add-port={25,110,143}/tcp --permanent |
在本篇文章开始那里,常见的邮件协议介绍的三种协议的端口号分别便是25,110,143,均放行。
在windows上用foxmail客户端测试邮件服务
1、修改window上的dns地址
2、使用foxmail测试邮件服务器是否成功
发送邮件给咱们的client2那台虚拟机的root用户,看看它能不能收到。
首先在client2上安装相关工具包
1 | [root@localhost ~]# yum install mailx sendmail -y |
之后可以看到,它的确收到了邮件了,说明配置成功。