postfix&dovecot搭建邮件服务器

本篇参考

https://blog.51cto.com/5001660/2377785和小翔博客https://www.liuyixiang.com/post/113927.html

邮件发送和接受流程。

邮件服务器的搭建

 

centos7下使用postfix+dovecot搭建邮件服务器(防火墙关闭,SELinux关闭下)

DNS服务器搭建

yum install bind bind-utils

查看是否安装成功

[root@localhost ~]# rpm -qa|grep bind

postfix&dovecot搭建邮件服务器 Linux 第2张

编辑主配置文件

[root@localhost ~]# vim /etc/named.conf

postfix&dovecot搭建邮件服务器 Linux 第3张

postfix&dovecot搭建邮件服务器 Linux 第4张

新建区域配置文件,新建的文件名要与include包含的文件名一至,且权限一至

postfix&dovecot搭建邮件服务器 Linux 第5张

编辑配置文件

postfix&dovecot搭建邮件服务器 Linux 第6张

配置正向查找区域,配置文件/var/named/named.mail.com,复制后的权限必须一至

postfix&dovecot搭建邮件服务器 Linux 第7张

postfix&dovecot搭建邮件服务器 Linux 第8张

配置反向查询文件

postfix&dovecot搭建邮件服务器 Linux 第9张

开启服务

postfix&dovecot搭建邮件服务器 Linux 第10张

如果报错请检查配置文件及权限

测试DNS

设置域名解析服务器为自己

postfix&dovecot搭建邮件服务器 Linux 第11张

postfix&dovecot搭建邮件服务器 Linux 第12张

搭建邮件服务器

配置服务器主机名称,需要保证服务器主机名称与发信域名保持一致

postfix&dovecot搭建邮件服务器 Linux 第13张

重启生效,记得重启域名服务及关闭防火墙

postfix

介绍:postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件

安装

yum install postfix

配置配置文件

vim /etc/postfix/main.cf

第83行,修改保存邮件的域名称

postfix&dovecot搭建邮件服务器 Linux 第14张

第99行,修改寄出邮件的域名称

postfix&dovecot搭建邮件服务器 Linux 第15张

第116、119行,修改定义的网卡监听地址

postfix&dovecot搭建邮件服务器 Linux 第16张

第164行,修改定义的可接收邮件的主机名或域名列表

postfix&dovecot搭建邮件服务器 Linux 第17张

新建两个用户用于测试

postfix&dovecot搭建邮件服务器 Linux 第18张

dovecot

介绍:dovecot是一款能够为Linux系统提供IMAP和POP3电子邮件服务的开源软件程序

yum install dovecot

编辑配置文件

vim /etc/dovecot/dovecot.conf

设置dovecot服务程序支持的电子邮件协议

允许用户使用明文进行密码验证

postfix&dovecot搭建邮件服务器 Linux 第19张

设置允许登录的网段地址

postfix&dovecot搭建邮件服务器 Linux 第20张

配置邮件格式和储存路径

vim /etc/dovecot/conf.d/10-mail.conf

postfix&dovecot搭建邮件服务器 Linux 第21张

开启服务

[root@mail ~]# systemctl start postfix
[root@mail ~]# systemctl start dovecot

可以看到邮件的存放位置,这是未发邮件前

postfix&dovecot搭建邮件服务器 Linux 第22张

发件测试

postfix&dovecot搭建邮件服务器 Linux 第23张

[root@mail mail]# telnet mail.com 25
Trying 127.0.0.1...
Connected to mail.com.
Escape character is '^]'.
220 mail.com ESMTP Postfix
helo mail.com             声名本机
250 mail.com
mail from:user1@mail.com  声明发件人
250 2.1.0 Ok
rcpt to:user2@mail.com     声明收件人
250 2.1.5 Ok
data                       写正文
354 End data with <CR><LF>.<CR><LF>
user1
.                           正文结束标记
250 2.0.0 Ok: queued as 12A27206C86E
quit                        退出
221 2.0.0 Bye
Connection closed by foreign host.

发件后,可以看到user2已经收到邮件

postfix&dovecot搭建邮件服务器 Linux 第24张

看一下内容

postfix&dovecot搭建邮件服务器 Linux 第25张

也可以登录查看邮件

postfix&dovecot搭建邮件服务器 Linux 第26张

[root@mail mail]# telnet mail.com 110
Trying 127.0.0.1...
Connected to mail.com.
Escape character is '^]'.
+OK Dovecot ready.
user user2             用户
+OK
pass 54321             密码
+OK Logged in.
list                   列表查看邮件
+OK 1 messages:
1 380
.
retr 1                  读取编号为1的邮件

遇到的问题

1、账号密码正确因权限问题被拒绝

报错

-ERR [SYS/PERM] Permission denied
Connection closed by foreign host.

postfix&dovecot搭建邮件服务器 Linux 第27张

解决

[root@mail mail]# chmod 0600 /var/spool/mail/*

端口介绍

SMTP 简单邮件传输协议 TCP 25端口 ,加密时使用TCP 456端口
POP3 第三版邮局协议  TCP  110端口 ,加密时使用955端口
IMAP4 第四版互联网消息访问协议 TCP 143端口  加密时使用993端口

防火墙开启情况下允许端口通过

firewall-cmd  -add-port 25/tcp --permanent
firewall-cmd  -add-port 465/tcp --permanent
firewall-cmd  -add-port 110/tcp --permanen
firewall-cmd  -add-port 995/tcp --permanent
firewall-cmd  -add-port 143/tcp --permanent
firewall-cmd  -add-port 993/tcp --permanent
firewall-cmd  --reload 重启防火墙

SMTP相关命令

helo
客户端为标识自己的身份而发送的命令(通常带域名)
mail from
标识邮件的发件人;以 mail from: 的形式使用
rcpt to 
标识邮件的收件人;以 rcpt to: 的形式使用
data
客户端发送的,用于启动邮件内容传输的命令
turn
允许客户端和服务器交换角色,并在相反的方向发送邮件,而不必建立新的连接
posted @ 2020-08-13 16:55  存钱罐儿  阅读(454)  评论(0)    收藏  举报