本篇参考

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

编辑主配置文件

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

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

编辑配置文件

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

配置反向查询文件

开启服务

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

测试DNS

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

搭建邮件服务器

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

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

postfix

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

安装

yum install postfix

配置配置文件

vim /etc/postfix/main.cf

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

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

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

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

新建两个用户用于测试

dovecot

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

yum install dovecot

编辑配置文件

vim /etc/dovecot/dovecot.conf

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

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

设置允许登录的网段地址

配置邮件格式和储存路径

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

开启服务

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

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

发件测试

[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已经收到邮件

看一下内容

也可以登录查看邮件

[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.

解决

[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
允许客户端和服务器交换角色,并在相反的方向发送邮件,而不必建立新的连接

postfix&dovecot搭建邮件服务器的更多相关文章

  1. RHEL6.4 postfix+dovecot搭建邮件服务器

    实验需求:为公司搭建一台能够收信和发信的邮件服务器(192.168.100.1),为员工提供服务,公司域名为jinjianjun.com. 一.修改DNS服务器(192.168.100.2)上mx邮件 ...

  2. 搭建邮件服务器,使用Postfix与Dovecot收发电子邮件

    小知识: 我们为什么要搭建邮件服务器呢?有时候我们处于一个局域网内,不能及时的分享各自的研究成果,迫切的需要一种能够借助于网络且建立在计算机之间的传输数据的方法.所以我们需要搭建邮件服务器,这样的话既 ...

  3. Postfix+Dovecot+MySQL搭建邮件服务器

    网上有很多使用Postfix搭建邮件服务器的文章,但目前貌似没有看到较为完整的一篇.本例将尝试在Ubuntu系统中使用Postfix+Dovecot+MySQL搭建邮件服务器. 说到邮件服务器,网上有 ...

  4. CentOS利用postfix搭建邮件服务器

    之前我用nodemailer通过163邮箱来发送邮件,不过没过几天就一直ETIMEDOUT,不知道什么原因,想着还是自己搭一个来发邮件可能靠谱点(flag?) 安装postfix CentOS 7 自 ...

  5. CentOS 使用PostFix搭建邮件服务器

    搭建环境: 关于PostFix是什么以及邮件服务器接受发送邮件流程网上有很多文章,这里就不再写了,这里只记录如何搭建邮件服务器,使用PostFix接受发送邮件 CentOS6.8 32位,postfi ...

  6. Linux中用postfix搭建邮件服务器实战详解

    Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...

  7. 阿里云CentOS Linux服务器上搭建邮件服务器遇到的问题

    参考文章: 阿里云CentOS Linux服务器上用postfix搭建邮件服务器 Linux系统下邮件服务器的搭建(Postfix+Dovecot) 本来想自己搭建邮件服务器,但是看到一篇资料表示阿里 ...

  8. [RHEL] RHEL7.0 下 Postfix + Dovecot 实现邮件发送

    RHEL7.0 下 Postfix + Dovecot 实现邮件发送 一.前言 大家都对邮件服务(mail service)很感兴趣嘛.我在自己 博客站 预言了自己会实战一次,访问量一天到十几(毕竟平 ...

  9. Windows Server 2003搭建邮件服务器

    Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...

  10. 使用hMailServer搭建邮件服务器

    本文没有什么高深的技术内容,只是使用hMailServer,介绍搭建邮件服务器的全过程,供参考. 一.安装邮件服务器组件 打开软件,点下一步 选择存储数据的数据库,这里有两种选择, 一种是使用嵌入型数 ...

随机推荐

  1. WNS 后台Push服务调试脚本

    一.API说明 https://cloud.tencent.com/document/product/276/3212   二.推送脚本 #!/usr/local/bin/python3 # -*- ...

  2. Dijkstra(迪杰斯特拉)算法

    Dijkstra是什么算法 Dijkstra是典型最短路径算法,用于计算一个节点到其他节点的最短路径.该算法使用的是贪心策略:每次都找出剩余顶点中与源点距离最近的一个顶点. 什么是最短路径问题  给定 ...

  3. webpack externals忽略不打入的包

    例如项目中使用从 CDN 引入 jQuery,而不是把它打包进来使用 import $ from 'jquery' webpack.config.js externals: { jquery: 'jQ ...

  4. vue组件间传值 父组件向子组件传值

    ² 父组件以属性的形式绑定值到子组件身上 ² 子组件通过使用属性props接收(props是单向绑定的(只读属性):当父组件的属性变化时,将传导给子组件,但是反过来不会) 第1步,父组件以动态属性的方 ...

  5. ASP.NET MVC 查询加分页

    使用了LinqKit.PagedList.Mvc.EntityFramework 等DLL 直接使用nuget安装即可. 1.表模型: using System.ComponentModel.Data ...

  6. 使用 ClickHouse 做日志分析

    原作:Monika Singh & Pradeep Chhetri 这是我们在 Monitorama 2022 上发表的演讲的改编稿.您可以在此处找到包含演讲者笔记的幻灯片和此处的视频. 当 ...

  7. PMP 变更专题

    在浏览器Console中输入下列对应命令 document.getElementsByTagName('video')[0].requestPictureInPicture()--进入画中画 docu ...

  8. 函数式表达式基本类型及固定类型 demo

    1.常见类型及使用 import java.util.function.BiConsumer; import java.util.function.BiFunction; import java.ut ...

  9. shell 编程简记

    1. 环境变量 环境变量是指操作系统中记录一些配置信息的变量,这些变量在不同的程序之间共享,可以被操作系统或者 shell 脚本读取和修改. 环境变量也可以类比为各个语言中的全局变量,其作用域是全局的 ...

  10. 在WPF中使用WriteableBitmap对接工业相机及常用操作

    写作背景 写这篇文章主要是因为工业相机(海康.大恒等)提供的.NET开发文档和示例程序都是用WinForm项目来说明举例的,而在WPF项目中对图像的使用和处理与在WinForm项目中有很大不同.在Wi ...