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

编辑主配置文件
[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搭建邮件服务器的更多相关文章
- RHEL6.4 postfix+dovecot搭建邮件服务器
实验需求:为公司搭建一台能够收信和发信的邮件服务器(192.168.100.1),为员工提供服务,公司域名为jinjianjun.com. 一.修改DNS服务器(192.168.100.2)上mx邮件 ...
- 搭建邮件服务器,使用Postfix与Dovecot收发电子邮件
小知识: 我们为什么要搭建邮件服务器呢?有时候我们处于一个局域网内,不能及时的分享各自的研究成果,迫切的需要一种能够借助于网络且建立在计算机之间的传输数据的方法.所以我们需要搭建邮件服务器,这样的话既 ...
- Postfix+Dovecot+MySQL搭建邮件服务器
网上有很多使用Postfix搭建邮件服务器的文章,但目前貌似没有看到较为完整的一篇.本例将尝试在Ubuntu系统中使用Postfix+Dovecot+MySQL搭建邮件服务器. 说到邮件服务器,网上有 ...
- CentOS利用postfix搭建邮件服务器
之前我用nodemailer通过163邮箱来发送邮件,不过没过几天就一直ETIMEDOUT,不知道什么原因,想着还是自己搭一个来发邮件可能靠谱点(flag?) 安装postfix CentOS 7 自 ...
- CentOS 使用PostFix搭建邮件服务器
搭建环境: 关于PostFix是什么以及邮件服务器接受发送邮件流程网上有很多文章,这里就不再写了,这里只记录如何搭建邮件服务器,使用PostFix接受发送邮件 CentOS6.8 32位,postfi ...
- Linux中用postfix搭建邮件服务器实战详解
Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...
- 阿里云CentOS Linux服务器上搭建邮件服务器遇到的问题
参考文章: 阿里云CentOS Linux服务器上用postfix搭建邮件服务器 Linux系统下邮件服务器的搭建(Postfix+Dovecot) 本来想自己搭建邮件服务器,但是看到一篇资料表示阿里 ...
- [RHEL] RHEL7.0 下 Postfix + Dovecot 实现邮件发送
RHEL7.0 下 Postfix + Dovecot 实现邮件发送 一.前言 大家都对邮件服务(mail service)很感兴趣嘛.我在自己 博客站 预言了自己会实战一次,访问量一天到十几(毕竟平 ...
- Windows Server 2003搭建邮件服务器
Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...
- 使用hMailServer搭建邮件服务器
本文没有什么高深的技术内容,只是使用hMailServer,介绍搭建邮件服务器的全过程,供参考. 一.安装邮件服务器组件 打开软件,点下一步 选择存储数据的数据库,这里有两种选择, 一种是使用嵌入型数 ...
随机推荐
- NOIP模拟70
T1 暴雨 解题思路 \(f_{i,j,k,0/1}\) 表示前 i 个铲平 j 个当前最高的是 k 并且当前是 奇数/偶数 的方案数. 由于只可以铲平 k 块,因此对于同一种 \(i,j\) 而言高 ...
- kettle从入门到精通 第十六课 kettle 映射 (子转换)02
1.上节讲的子映射里面只有一个转换(类似一个java类里面只有一个公共方法),本次讲解的有两个,实际上可以有任意多个(一个java类里面有多个公共方法).两个转换分别计算x+y和x*y. 2.命名参数 ...
- 图片jpg,png转为BASE64编码
-- using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; namespace aliy ...
- redis安全篇
redis被攻击,作为突破口,服务器惨遭毒手的事太常见了. 大多数云服务器被攻击,都是redis,mongodb等数据库被入侵. 因此修改端口,密码,以及注意bind运行地址,是必须. 思考是否要暴露 ...
- LLM应用实战:当图谱问答(KBQA)集成大模型(三)
1. 背景 最近比较忙(也有点茫),本qiang~想切入多模态大模型领域,所以一直在潜心研读中... 本次的更新内容主要是响应图谱问答集成LLM项目中反馈问题的优化总结,对KBQA集成LLM不熟悉的客 ...
- 贝壳找房: 为 AI 平台打造混合多云的存储加速底座
贝壳机器学习平台的计算资源,尤其是 GPU,主要依赖公有云服务,并分布在不同的地理区域.为了让存储可以灵活地跟随计算资源,存储系统需具备高度的灵活性,支持跨区域的数据访问和迁移,同时确保计算任务的连续 ...
- java8 API 函数式接口
简介 14年,Oracle公司如期发布了Java 8正式版,Java8提供了强大的流式处理及函数式接口编程 函数式接口编程,相信很多人在javascript中都使用过,比如回调函数,如今Java8也吸 ...
- Spring Boot入门实验
一. 实验目的和要求 1.掌握使用 IDEA 通过 Maven 和 Spring Initializr 的方式创建 Spring Boot 应用程序: 2.掌握 Maven 的工作原理: 3.了解 s ...
- Nuxt3 的生命周期和钩子函数(一)
title: Nuxt3 的生命周期和钩子函数(一) date: 2024/6/25 updated: 2024/6/25 author: cmdragon excerpt: 摘要:本文是关于Nuxt ...
- QT6设置应用程序图标
准备好一个ico格式的图标, 放到源码文件中, 比如放在 resources/logo.ico 在源码目录中新建一个icon.rc的文件, 内容如下: IDI_ICON1 ICON DISCARDAB ...