简单邮件传输协议 —SMTP

时间:2024-04-07
新悦网络

编辑:

什么是 SMTP(简单邮件传输协议)?

SMTP(简单邮件传输协议)是用于发送和接收电子邮件的TCP/IP协议。 SMTP 最常被电子邮件客户端使用,包括 Gmail、Outlook、Apple Mail 和 Yahoo Mail。
SMTP 可以发送和接收电子邮件,但电子邮件客户端通常使用带有 SMTP 的程序来发送电子邮件。由于 SMTP 在接收端对邮件进行排队的能力有限,因此它通常与邮局协议 3 ( POP3 ) 或 Internet 邮件访问协议 (IMAP) 一起使用,后者允许用户将邮件保存在服务器邮箱中并定期下载它们来自服务器。 SMTP 通常仅限于并依赖于将消息从发件人发送到收件人。

什么是 SMTP 服务器?

SMTP 服务器是发送、接收和中继电子邮件的应用程序或计算机。这些服务器通常在端口25 或 587 上使用 TCP。当互联网或网络消息转发到服务器时,端口号标识特定进程。所有网络连接设备都配备有指定编号的标准化端口。每个号码都是为某些协议及其相关功能保留的。

SMTP 服务器设置为始终在线侦听模式,一旦服务器检测到来自客户端的 TCP 连接,SMTP 进程就会启动到端口 25 的连接以发送电子邮件。

传出 SMTP 服务器为用户发送消息。用于阅读和发送电子邮件的电子邮件客户端还必须具有SMTP 服务器的Internet 协议 ( IP ) 地址。为了处理垃圾邮件等问题,服务器管理员必须控制哪些客户端可以使用该服务器。他们可以通过 IP 地址限制用户,或者更有可能的是,通过强制要求客户端身份验证的系统或命令来实现此目的。

SMTP 的工作原理

SMTP 使用客户端-服务器模型,如下所示:

  • 电子邮件服务器使用 SMTP 将消息从电子邮件客户端发送到另一个电子邮件服务器。
  • 电子邮件服务器使用 SMTP 作为中继服务将电子邮件发送到接收电子邮件服务器。
  • 例如,接收电子邮件服务器使用电子邮件客户端通过 IMAP 下载传入邮件,并将其放入收件人的收件箱中。

例如,当用户单击“发送”按钮时,就会建立一个链接到 SMTP 服务器的 TCP 连接。当 SMTP 服务器接收到来自客户端的 TCP 连接时,SMTP 进程会通过端口 25 启动连接来发送电子邮件。

从这里,SMTP 客户端告诉服务器如何处理发件人和收件人的电子邮件地址以及电子邮件内容等信息。然后,邮件传输代理 ( MTA ) 检查两个电子邮件地址是否来自同一电子邮件域。如果它们来自同一域,则会发送电子邮件;如果不是,服务器将使用域名系统 ( DNS ) 来识别收件人的域,然后将其发送到正确的服务器。

然后收件人使用 IMAP 或 POP3 协议接收电子邮件。

SMTP 中的命令会自动发出,无需最终用户输入。例如,HELO 命令是电子邮件客户端向服务器标识自己的身份。其他 SMTP 命令包括:

  • 邮件。该命令用于启动消息传输。这告诉 SMTP 服务器一个新的事务正在开始。
  • RCPT。该命令跟随 MAIL。它标识复制者的电子邮件地址。
  • 数据。该命令启动客户端和服务器之间的数据传输。邮件内容被移动到 SMTP 服务器。
  • 辞职。发送电子邮件后,客户端会向服务器发送此命令以停止连接。
  • RSET。该命令用于中止邮件事务。该命令被发送到服务器,其中有关电子邮件的所有数据都将被删除。

SMTP 与 IMAP 和 POP

SMTP 托管在 SMTP 服务器上,用于从邮件客户端发送、中继或转发消息,而不用于接收消息;而是使用 IMAP 和 POP。

IMAP 是一种标准电子邮件检索协议,用于管理和检索电子邮件。它将电子邮件保存在服务器上,然后在不同设备之间同步。 IMAP 使用户能够将邮件组织到文件夹中、标记邮件并将草稿邮件保存在服务器上。用户还可以拥有多个与电子邮件服务器同步的电子邮件客户端应用程序,以一致地显示哪些邮件已读或未读。

IMAP 充当电子邮件服务器和电子邮件客户端之间的中介。当用户使用 IMAP 阅读电子邮件时,他们会从服务器上读取邮件。他们不会在本地设备上下载或存储电子邮件。

大多数电子邮件服务器和客户端都支持 POP,并使用它从远程服务器接收电子邮件并将其发送到本地客户端。 POP 是一种单向客户端-服务器协议,其中电子邮件被接收并保存在电子邮件服务器上。 POP 还允许用户将电子邮件从服务器下载到客户端,以便收件人可以离线查看电子邮件。

当一起使用时,SMTP 和 IMAP 或 POP 传输电子邮件。

POP 被视为存储转发服务,而 IMAP 被视为远程文件服务器,因为用户可以将电子邮件存储在服务器上,并根据需要从任何设备或位置访问它。

现代电子邮件客户端和 Web 服务器支持 POP 和 IMAP 。但与 POP 不同的是,IMAP 还可以跨多个设备或客户端同步电子邮件。

SMTP 与 ESMT

扩展简单邮件传输协议(ESMTP)是对原始 SMTP 的扩展,用于发送支持图形、音频和视频文件以及各种语言文本的电子邮件。 ESMTP 于 1995 年发布,面向想要将多媒体文件附加到电子邮件的用户。更新后的协议启用了新功能,例如在节省带宽的同时保护服务器。大多数商业电子邮件服务器和客户端都支持 ESMTP。

与 ESMTP 不同,如果没有多用途 Internet 邮件扩展 ( MIME )的帮助,多媒体文件无法直接附加到 SMTP 中的电子邮件。同样,ESMTP 使用户能够减小电子邮件的大小,而 SMTP 则不能。

SMTP 与 HTTP API

SMTP 自 1982 年开始使用,至今仍然是发送电子邮件的最常用电子邮件协议。然而,使用基于云的超文本传输​​协议 ( HTTP ) 应用程序编程接口 ( API ) 来发送和接收电子邮件已成为一种趋势。

HTTP API 有两个优点:首先,电子邮件客户端和服务器之间的通信(例如,使用移动应用程序时)比 SMTP 更快,因为 HTTP API 需要更少的来回命令来验证发件人和收件人。其次,API 提供了使用 SMTP 无法提供的功能。

SMTP 和基于 Unix 的系统

在基于Unix的系统上,Sendmail 仍然是使用最广泛的电子邮件 SMTP 邮件服务器。 Sendmail 提供幕后电子邮件传输,通常与单独的用户友好界面一起使用。

SMTP 通常是通过互联网端口 25 实现的。欧洲广泛使用的 SMTP 替代方案是 X.400/X.500。 X.400 创建时的目的是作为主要的国际协议。在大多数用户中,X.400/X.500 已经被 SMTP 黯然失色,但它在国防和电信行业仍然很受欢迎。

内部 SMTP 服务器与第三方服务

SMTP 服务器可以在内部设置或作为第三方服务设置。内部 SMTP 服务器独立运行,而提供商则运行第三方 SMTP 服务器。

第三方 SMTP 供应商负责从电子邮件服务器的维护和监控到安全的所有事务。这意味着用户不需要专业知识或预算来运行和维护自己的内部服务器。但是,用户仍然必须担心由于中断或任何附加条款和条件而导致的停机。

内部 SMTP 服务器并不像某些第三方提供商那样仅限于每天发送特定数量的电子邮件。然而,用户必须具备技术知识和资金来维护、运行和监控服务器。此外,用户有责任实现自己的安全。这可能包括选择安全电子邮件协议、保持服务器固件最新或使用电子邮件服务器防火墙。

最新内容

知识库