邮件服务器是什么linux下邮件系统的工作流程是什么linux邮件服务器有哪些




邮件服务器是什么linux下邮件系统的工作流程是什么linux邮件服务器有哪些

2022-07-20 19:31:04 网络知识 官方管理员

每天我们都会收到很多的邮件,但是从来没有了解过邮件是怎么实现收发的,也没有自己配置过一台邮件服务器

今天我们就来认识一下什么是邮件服务器

常见的邮件服务器软件介绍

Sendmail

sendmail是最古老的MTA(MailTransferAgent,电子邮件系统)之一,最早它诞生的时候,Internet还没有被标准化,当时主机之间使用的是UUCP技术来交换邮件。它被设计得比较灵活,便于配置和运行于各种类型的机器。


Qmail

qmail是新生一代的MTA代表,它以速度快、体积小、易配置安装等特性而著称。作者D.J.Bernstein是一个数学教授,富有传奇色彩。他于1995年开发qmail,1996年发布0.70版,并使用了多种当时比较先进的技术,包括Maildir,与sendmail单个binary不同的模块化设计,权限分离,以及使用了大量由他编写的配套工具,如daemontool,ucsip-tcp等。qmai迅速成为了Internet上最有名的MTA,使用者众。


postfix

postfix如今已经独树一帜,流水线、模块化的设计,兼顾了效率和功能。灵活的配置和扩展,使得配置postfix变得富有趣味。其主要的特点是速度快、稳定,而且配置/功能非常强大,并和sendmail类似,提供了与外部程序对接的API/protocol。尤其是配置部分,postfix另一个优势是至今依然保持活跃的开发工作,而且稳步发展,适合高流量大负载的系统,扩充能力较强。本实验也是基于postfix服务器软件来实现。

邮件服务器原理介绍

下面我们将会学习邮件服务器原理。

邮件服务器基本的工作原理

  • MUA(MailUserAgent):向外发送邮件,以及提供用户浏览与编写邮件的功能。
  • MTA(MailTransferAgent):(可以理解为smtpd服务器)帮忙将用户的邮件传递出去或接收进来。
  • MDA(MailDeliveryAgent):将接收下来的邮件存放到对应用户邮筒当中的程序。通过分析MTA
    所收到邮件的表头或内容,来判断此邮件是属于哪个用户,然后决定将此邮件投递给哪个用户的邮筒里。
  • MRA(MailRetrievalAgent):通过MRA服务器提供的邮政服务协议(POP)来接收自己的邮件。

邮件服务器是什么(linux下邮件系统的工作流程是什么)(1)

用户(MUA)通过SMTP协议将邮件发送到服务器(MTA),服务器分解发现如果是本地的邮件传输则通过lmtp来传送,如果是远程邮件将调用本地的客户端使用SMTP协议向对方服务器传送。

当对方的服务器接收到邮件之后,发现如果不是本机所负责的域,则将邮件交给本机的邮件客户端,根据邮件目标域请求DNS解析,将邮件发送到目标服务器,或者丢至下一跳此过程称为邮件中继,如果发现是本机负责区域内的用户,则SMTPD将邮件转交给MDA,由MDA把邮件传递到用户的邮筒。

用户通过MUA查看邮件的时候,会将邮件从邮筒拉到用户家目录,保存为mbox的文件。

邮件中继:

  • SMTPD要支持邮件路由功能,需要打开OpenRelay开放式中继。
  • SMTPD是根据收件人判断邮件是否需要中继,而且只给指定的客户端中继。

邮件服务器与DNS之间的关系

邮件服务器是什么(linux下邮件系统的工作流程是什么)(2)


关于DNS的介绍和DNS服务器的配置可以查看《Linux系统搭建及配置DNS服务器》(有需要可以评论区留言联系我~)。

  1. 当发件方需要发送邮件给对方邮件服务器,需要向DNS请求查询对方邮件服务器的MX记录。
  2. DNS通过查询MX表信息。
  3. 将查询到的MX信息返回给发送方。
  4. 发送方根据优先级,将邮件投递给对方优先级高的邮件服务器(mail1)。
  5. 如果主邮件服务器过于繁忙,或者不在线的时候,会将邮件投递给辅的邮件交换器(mail2)上。
  6. 待主邮件服交换器空闲下来后,mail2会将代替接收下来的邮件再转给主邮件交换器(mail1)。

注:

当DNS上存在多个MX记录的主机这时就是根据DNS的邮件级判断了。DNS上定义的值越小,其优先级越高。辅助交换器接收到邮件并不能保存邮件。而是这个辅助交换器会等到主邮件交换器空闲的时候把代替它接受下来的邮件再转给主邮件交换器。所以任何邮件处理都是主邮件交换器处理的。所以我们实际情况下,如果有2台服务器做邮件交换器,性能比较高的应该为主的。

发表评论:

最近发表
网站分类
标签列表