首页 > 其他分享 >邮件接收流程梳理与扩展

邮件接收流程梳理与扩展

时间:2024-04-04 13:32:46浏览次数:22  
标签:lzz 流程 用户 服务器 MTA 梳理 邮件 客户端

一.介绍

       邮件服务器是一种用来负责电子邮件收发管理的设备。也可以实现自主构建邮件服务器比网络上的免费邮箱 更安全和高效。

       邮件服务器构成了电子邮件系统的核心,每个收信人都有一个位于某个邮件服务器上的邮箱(mailbox),一个邮件消息的典型旅程是从发信人的用户代理开始,邮件发信人的邮件服务器,中转到收信人的邮件服务器,然后投递到收信人的邮箱中。

       简单邮件传送协议(Simple Mail Transfer Protocol,SMTP)是因特网电子邮件系统首要的应用层协议。它使用由 TCP 提供的可靠的数据传输服务把邮件消息从发信人的邮件服务器传送到收信人的邮件服务器。
       为使用户的系统域名能被正确解析为相应服务器地址,邮件服务器需要能够在互联网络上被识别和查找到。这样邮件系统才能实现邮件的投递和接收。因此邮件服务器需要对此做 DNS 设置,包括 MX 记录和 A 记录的设置。

       整个邮件系统包括:服务器端和客户端,服务器需要基于 SMTP 协议,客户端基于 POP3、IMAP 等协议。SMTP 监听端口为 TCP 25端口,POP3 监听端口为 110,IMAP 监听端口为143。
       例如当发送一封电子邮件信息时,信息会一台服务器、一台服务器地的被传递,直到发送到收件人的电子邮件服务器。
        更准确地说,信息被发送到负责传输邮件的服务器(被称为邮件传输代理 (Mail Transport Agent,MTA),经过若干 MTA 后,最终到达收件人的 MTA。在互联网上,MTA 之间使用SMTP协议进行通信,也称为SMTP 服务器。

       收件人的 MTA 会将电子邮件投递给邮件接收服务器(被称为邮件投递代理(Mail Delivery Agent,MDA),MDA 会保存邮件并等待用户收取。MDA 主要有两种协议:POP(Post Office Protocol)

        最简单比喻就是:MTA类似邮局,而 MDA 类似信箱,MDA 存储邮件并等待收件人检查信箱。收件人不需要让发件人与收件人建立连接。为避免人们的邮件被其他人看到,MDA要验证用户名和密码才能访问。收取邮件的工作由一个叫做邮件用户代(MailUserAgent,MUA)的程序来完成。如果 MUA 是用户电脑或其他设备上的一个程序,则称它为邮件客户端(如 Mozilla Thunderbird,网易邮箱大师,foxmail,微软的 Outlook)。

POP3:

协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的 3 封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的,所以有很多同学反馈使用 foxmail 客户端配置 pop3 收取邮件的时候,有时候非常快,而使用IMAP方式,收取打开邮件非常慢。
IMAP:

协议提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。

二.名称概念

       Linux 平台开源免费的邮件服务器包括:Sendmail、Postfix、Qmail;
而Windows 平台主要为 Exchange 服务器 (正版需要收费)。
邮件相关名称概念理解,汇总如下:

MUA: 用户代理端,即用户使用的写信、收信客户端软件;

MTA:邮件传送端,即常说的邮件服务器,用于转发、收取用户邮件。

MDA:邮件代理端,相当于 MUA 和 MTA 的中间人,可用于过滤垃圾邮件。
POP:邮局协议,用于 MUA 连接服务器收取用户邮件,通信端口 110。

IMAP:互联网应用协议,功能较 POP 多,通信端口 143。

SMTP:简单邮件传送协议,MUA连接MTA 或MTA连接MTA 发送邮件使用此协议,通信端口 25。

Sendmail:

Sendmail 是一种通用的内网电子邮件路由设施,支持许多种邮件传输和投递方法,包括用于网络邮箱传输的简单邮件传输协议(SMTP)。运行方式是接受来自本地用户或其他邮件服务器的传入邮件,然后对其进行处理并将其传送到适当的目的地。它还可以处理诸如排队等待传递的消息、管理邮件别名以及实现垃圾邮件过滤和身份验证等安全功能等任务。

Postfix:

Postfix 是一个免费和开源的邮件传输代理(MTA),它负责路由和传递电子邮件.它的设计考虑到了安全性和易于管理性,使其成为 Sendmail 等旧式 MTA 的流行替代品。 Postfix 实现了高性能并行化的邮件传递引擎。通常与邮件列表软件(如 Mailman)结合使用。Postfix 的设计考虑了安全性,实现了各种功能来防止常见的电子邮件相关安全问题,例如垃圾邮件、网络钓鱼和拒绝服务攻击。

邮件发送过程包括以下步骤(root发送给lzz用户):

  1. 邮件客户端(发送邮件的源):在这种情况下,root用户将会使用邮件客户端来发送邮件。常见的邮件客户端包括命令行工具如mail或者sendmail,也可以使用图形化客户端如Thunderbird或Evolution。

  2. 邮件传输代理(MTA):邮件客户端将邮件发送到本地或远程的邮件传输代理,MTA负责将邮件从发送者传递到接收者。在大多数Linux系统中,常用的MTA包括Sendmail、Postfix、Exim等。

  3. 本地邮件传递:如果lzz用户在同一台服务器上,邮件传输代理将直接将邮件投递到lzz用户的邮箱中。这可能涉及到系统中的本地邮件传递服务或者邮件投递代理。

  4. 远程邮件传递:如果lzz用户不在同一台服务器上,邮件传输代理将把邮件发送到lzz用户所在的远程服务器上。这个过程可能涉及到DNS解析、SMTP协议和目标服务器的MTA。

  5. 邮件接收代理(MRA):lzz用户的邮件接收代理负责接收邮件并将其投递到lzz用户的邮箱中。常见的MRA包括Dovecot、Courier等。

  6. 用户邮箱:最终,邮件将被投递到lzz用户的邮箱中,lzz用户可以使用邮件客户端来查看和处理收到的邮件。

标签:lzz,流程,用户,服务器,MTA,梳理,邮件,客户端
From: https://blog.csdn.net/Lzcsfg/article/details/137369741

相关文章

  • 2024福建三支一扶报名流程,超全超详细!
    2024年福建三支一扶报名已经开始,请注意时间!⚠2024年福建省省级“三支一扶”计划招募岗位1070个报名时间:4月1日8:00至4月17日17:00审查考核:4月18日至5月10日确定派遣人员:5月11日至5月31日报名入口:福建省公告就业服务网报名材料‼️上传PDF格式材料每项不超过10M,其他文件......
  • 2024合肥教师招聘保姆级教程,流程超详细
    2024年合肥教师招聘报名即将开始,请做好准备1、报名时间:4月2日8:00-4月8日16:002、资格初审:4月2日8:00-4月9日11:003、缴费时间:4月24日8:00-4月9日16:004、打印准考证:4月24日8:00-4月27日18:005、笔试时间:2024年4月27日9:00-11:30《学科专业知识》14:00-16:00《教育综......
  • |行业洞察·AIGC|《AIGC行业深度:发展情况、商业模式、产业链及相关公司深度梳理》
    报告主要内容的解读:1.行业概述概念:AIGC是一种内容生产方式,通过深度学习技术,输入数据后由AI生成内容。它代表了从PGC(ProfessionallyGeneratedContent)和UGC(UserGeneratedContent)到AIUGC的演变。AI与AIGC的演进历程:AI的发展经历了从决策式AI到生成式AI的过程。生成式AI......
  • SpringSecurity认证和授权流程详解
    什么是SpringSecuritySpringSecurity是一个Java框架,用于保护应用程序的安全性。它提供了一套全面的安全解决方案,包括身份验证、授权、防止攻击等功能。SpringSecurity基于过滤器链的概念,可以轻松地集成到任何基于Spring的应用程序中。它支持多种身份验证选项和授权策略,开发人员......
  • 【保姆级教程附代码】Pytorch (.pth) 到 TensorRT (.plan) 模型转化全流程
    整体流程为:.pth->.onnx->.plan(或.trt,二者等价)需要的工具和包:Docker,Pytorch,ONNX,onnxruntime,TensorRT(trtexec和polygraphy).pth到.onnx这里以SwinIR(https://github.com/JingyunLiang/SwinIR)预训练模型为例init_torch_model()函数主要是对模型初始化,这里是......
  • C++ While 和 For 循环:流程控制全解析
    C++Switch语句使用switch语句选择要执行的多个代码块之一。语法switch(expression){casex://代码块break;casey://代码块break;default://代码块}它的工作原理如下:switch表达式被评估一次表达式的值与每个case的值进行比......
  • 提升办公效率,一起了解流程自定义表单优势
    提高办公效率,可以一起了解低代码技术平台。对于很多中小型企业而言,低代码技术平台及流程自定义表单优势突出,是助力企业实现流程化办公,实现数字化转型的得力助手。流辰信息是专业研发开发平台、数据治理、数据分析等产品的服务商,是众多客户理想的合作伙伴。一起来了解低代码技术平......
  • Python免费下载安装全流程(Python 最新版本),新手小白必看!
    前言今天换了新的电脑,需要重新安装python和PyCharm,就简单的写个教程吧~一、Python下载1、进入Python官网官网地址:https://www.python.org2、点击【Downloads】展开后点击【Windows】跳转到下载python版本页面,选择"StableReleases"稳定版本,我下载的是Python3.10.10版......
  • 北京2024年注册技术咨询公司新材料与流程全攻略
    ​      您好,我是胡云帅,随着科技的不断进步和创新,技术咨询服务在市场中扮演着越来越重要的角色。对于计划在2024年在北京注册技术咨询公司的创业者来说,了解蕞新的注册材料和流程是至关重要的。本文将为您详细介绍北京2024年注册技术咨询公司所需的新材料和流程,助您轻松......
  • python发邮件(文件内容在邮件中展现)
     python3.6#!/usr/bin/envpython#coding=utf-8importsmtplibfromemail.mime.textimportMIMETextfromemail.mime.multipartimportMIMEMultipartfromemail.headerimportHeaderimportdatetimeimporttimemail_host="mail.test.com:465"ma......