邮件服务器

概述

邮件收、发服务器是分开的,也就是我们需要搭建一个邮件发送服务器和一个邮件收取服务器。

本文会搭建收、发两个服务器,并用邮件客户端(Foxmail)做测试。

协议

协议就是定义规则,这里是邮件协议,定义邮件收发的规则,了解规则有助于理解软件的配置文件。

邮件发送协议 SMTP(Simple Mail Transfer Protocol),打开端口 25。

邮件收取协议 POP,打开端口 110;还有个常用邮件收取协议 IMOP,打开端口 143。

服务软件

Postfix

Postfix 是实现 SMTP 协议的软件,也叫做邮件发送服务器。

上面说的邮件客户端将邮件扔给它,由它对邮件进行转发,至于怎么转发,SMTP 协议制定了规则,而 Postfix 负责具体事情,我们只需要修改 Postfix 配置文件要求它按照我们的想法去做。

Dovecot

Dovecot 实现了 POP 和 IMOP 协议,也叫做邮件收取服务器。如果只搭建了 Postfix 而没有它,不好意思,你是收不到邮件的。

Sasl

Sasl登陆验证服务,在下面的介绍可以看到 Postfix 作为邮件发送服务器,不能无限制的转发任意邮件,应当只转发它信任的发件人发送的邮件,这一点体现在 Postfix 的配置文件要配置它认为安全的主机(mynetworks 参数)。但这样会显得很麻烦,Sasl 通过其它方式也可以帮助 Postfix 完成信任邮件的认证。

设置域名

mail.52zt.info用A记录解析到邮件服务器IP(后面的各个客户端配置的域名都写这个A记录的),再把52zt.info用MX记录解析到mail.52zt.info([email protected])。

测试端口telnet命令也要用mail.52zt.info,不能用mx记录的52zt.info(用这个会解析到A记录解析的52zt.info)。

安装软件

安装软件postfix、dovecot、cyrus-sasl

yum -y install postfix dovecot cyrus-sasl

配置软件

配置postfix

vi /etc/postfix/main.cf

#修改以下配置,注意下面的变量不要重复,如果发现与原来的变量重名,那就将原来的变量给注释掉

#邮件服务器的主机名

myhostname = mail.52zt.info

#邮件域

mydomain = mail.52zt.info

#往外发邮件的邮件域

myorigin = $mydomain

#监听的网卡

inet_interfaces = all

inet_protocols = all

#服务的对象

mydestination = $myhostname,localhost.$myhostname, localhost.$mydomain,$mydomain

#邮件存放的目录

home_mailbox = Maildir/

#新添加以下配置

#--------自定义(下面可以复制粘贴到文件最后面,用于设置服务器验为主,第一行设置发送附件大小)

#message_size_limit = 100000

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

mynetworks = 127.0.0.0/8

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

smtpd_sasl_auth_enable = yes //开启认证

smtpd_sasl_security_options = noanonymous //不允许匿名发信

mynetworks = 127.0.0.0/8//允许的网段,如果增加本机所在网段就会出现允许不验证也能向外域发信

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

允许本地域以及认证成功的发信,拒绝认证失败的发信

检查并启动postfix

postfix check #修改保存后检查配置文件是否有错

systemctl start postfix #开启postfix服务,CentOS6用service postfix start

systemctl enable postfix #设置postfix服务开机启动,CentOS6用chkconfig postfix on

配置dovecot

vi /etc/dovecot/dovecot.conf

#修改以下配置

protocols = imap pop3 lmtp

listen = *, ::

#新添加以下配置

#-----------自定义------------

!include conf.d/10-auth.conf

ssl = no

disable_plaintext_auth = no

mail_location = maildir:~/Maildir

启动dovecot

systemctl start dovecot #CentOS6用service dovecot start

systemctl enable dovecot #CentOS6用chkconfig dovecot on

配置cyrus-sasl

vi /etc/sasl2/smtpd.conf #如果是空文件,需要自己添加

pwcheck_method: saslauthd

mech_list: plain login

log_level:3

vi /etc/sysconfig/saslauthd #修改下面配置项(本地用户认证)

MECH=shadow

启动

systemctl start saslauthd #CentOS6用service saslauthd start

systemctl enable saslauthd #CentOS6用chkconfig saslauthd on

测试

yum -y install telnet-server telnet #安装telnet客户端

测试发送

[[email protected] ~]# telnet localhost 25

Trying 127.0.0.1...

Connected to localhost.

Escape character is ‘^]‘.

220 mail.52zt.info ESMTP Postfix

mail from:[email protected]

250 2.1.0 Ok

rcpt to:[email protected]

250 2.1.5 Ok

data

354 End data with .

subject:这是主题

this is test mail

.

250 2.0.0 Ok: queued as 6224C10263A

登录邮箱

[[email protected] ~]# telnet localhost 110

Trying 127.0.0.1...

Connected to localhost.

Escape character is ‘^]‘.

+OK Dovecot ready.

user autumn

+OK

pass 密码

+OK Logged in.

list #列表查看邮件

retr 1 #读取编号为1的邮件

quit #退出邮箱

用mailx测试

安装

yum install mailx -y

使用mailx发送邮件

echo ‘测试邮件内容‘ | mail -s ‘测试主题!‘ [email protected]

Outlook配置

出现问题

在起好了服务,开放了防火墙端口,设置了安全组的情况下。telnet localhost 25端口通,telnet 域名 25不通,是因为服务监听ip的问题

vi /etc/postfix/main.cf

inet_interfaces=localhost 注释掉这段,上面写了all,没注意这里还有个localhost

原文:https://www.cnblogs.com/aeolian/p/13431404.html

centos7自带邮件服务器,CentOS7搭建简单的邮件服务器相关推荐

  1. python搭建web服务器_Python搭建简单的web服务器

    Python搭建简单的web服务器 1.win+R输入cmd打开命令行 2.通过 cd 进入到你保存 HTML 文件的目录.例如:H:\D3\d3 输入 cd\ 指令进入到C盘的根目录.(CD(更改目 ...

  2. java 搭建http服务器_搭建简单的HTTP服务器

    这是在<深入剖析Tomcat>一书中的一个小例子,通过这个例子让我基本了解了HTTP服务器的基本工作原理,特此分享给大家. package com.sun.test; import jav ...

  3. 新狼邮箱服务器,搭建简单的邮件服务器+动态域名在互联网中使用

    利用server2003搭建简单的邮件服务器,使用动态域名做mx记录可以在互联网中使用,开始之前我copy了一些资料让大家了解一下pop3和smtp. POP3(Post Office Protoco ...

  4. 开发板搭建简单的Web服务器

    开发板搭建简单的Web服务器 BOA服务器是一个小巧高效的web服务器,是一个运行于Linux或unix下的,支持CGI.适合于嵌入式的单任务的服务器,源代码开放,性能高 BOA是非常小巧的web服务 ...

  5. 使用VLC media player搭建简单的流媒体服务器

    作为程序员,很多时候需要测试流媒体服务功能,VLC media player就可以轻松的将视频.本机画面.笔记本摄像头的内容发布为流媒体服务,在其他网络联通的地方访问,下面只说主要过程. 首先安装VL ...

  6. Ubuntu 搭建简单的Web服务器

    Ubuntu 搭建简单的Web服务器 一.搭建工具 二.搭建步骤 2.1Apche工具安装 2.2打开火狐浏览器 三.实现文件浏览功能 一.搭建工具   在这个实验上我用的是apche搭建的web服务 ...

  7. PC上搭建简单的FTP服务器(仅用于局域网)

    PC上搭建简单的FTP服务器(仅用于局域网) 转载请附原文链接:http://blog.fandong.me/2017/07/16/PC-FTP/ 第一步:打开控制面板选择卸载程序(查看方式为类别) ...

  8. linux服务器怎么搭建简单的网站?linux搭建网站教程

    linux搭建网站教程 一.前言 二.服务器环境配置 三.Linux网站搭建步骤 1.jdk安装与配置 2.tomcat配置 3.数据库的配置 一.前言 很多学开发的同学都知道如何开发一个网站,但是到 ...

  9. 第七章 在Linux搭建简单的web服务器

    在linux上可以搭建很多的服务,最基础的服务是提供web相应的接口,让客户端获取网络的数据,实现客户端和服务器的交流.特别是在移动互联网时代下,手机客户端由于计算能力不强,主要是用来展示相应的信息, ...

最新文章

  1. Javascript社区是时候接受async/await语法了
  2. 向上取整的方法_PHP取整方法小总结
  3. OpenCV全向相机校准Omnidirectional Camera Calibration
  4. BetterAndBetter(BAB)的使用详解
  5. GCD6: 在GCD上异步执行非UI相关任务
  6. 无类域间路由CIDR
  7. linux关机_LINUX快速入门第二章:Linux 系统启动过程
  8. Java NIO - Buffer 基础 -1
  9. wlanconnect无法连接wifi_苹果iphone12无法连接wifi怎么回事 解决方法分享
  10. SM3算法对大文件做摘要
  11. jeecms 取附件
  12. RNN实现股票预测实战案例
  13. HTML与CSS3的知识整理
  14. 阿里云创建AccessKey 和 Access Key Secert
  15. android自定义滚动条(ScrollBar)样式
  16. 识别植物的软件有哪些?快把这些软件收好
  17. Idea 合并分支只选取部分文件的办法
  18. 【数据结构系列】单链表
  19. 【R】R语言指定包安装目录
  20. JS中几种绑定事件的方式

热门文章

  1. 云堡垒机的作用_三分钟了解什么是云堡垒机
  2. 你的思维方式真的比人工智能高级吗?
  3. 分布式架构关于数据分页问题
  4. 09-Figma-工具栏-预览以及分享设置
  5. 2022新OneTool多平台云助手源码下载+修复版
  6. tensorflow入门数据集:mnist详解
  7. android数据库导入读取.db文件内容
  8. @Import注解:导入配置类的四种方式源码解析
  9. php 数据库检索,PHP+MYSQL实现全文检索
  10. Echarts大数据可视化物流航向省份流向迁徙动态图,开发全解+完美参数注释