SMTP 是一种电子邮件协议,用于通过互联网从一个电子邮件帐户向另一个电子邮件帐户发送电子邮件。它是TCP/IP协议应用层的一部分。作为一种电子邮件协议,它建立了不同电子邮件客户端和帐户之间轻松信息交换的规则。这样,简单邮件传输协议就可以实现广泛的电子邮件传送。
文章目录
- 什么是 SMTP 服务器?
- SMTP工作原理
- SMTP 命令
- SMTP 协议端口
- 比较 SMTP、IMAP 和 POP
- SMTP协议优点
需要注意的是,SMTP 不是邮件检索协议,收件人仍然需要检索邮件。这意味着它将电子邮件发送到电子邮件提供商的邮件服务器,但使用不同的协议从邮件服务器检索该电子邮件,以便收件人可以阅读它。
SMTP 与IMAP(互联网消息访问协议)和 POP(邮局协议)一样,是最流行的电子邮件协议之一。许多知名的电子邮件客户端(例如 Gmail、Outlook 和 Apple Mail)都支持 SMTP 电子邮件协议来发送消息。
什么是 SMTP 服务器?
SMTP服务器是能够利用SMTP协议发送电子邮件的邮件服务器。电子邮件客户端直接与电子邮件提供商的 SMTP 服务器连接以启动发送电子邮件。
有两种不同的 SMTP 服务器类型:
- 常规 SMTP 服务器
此类型通常用于发送标准个人电子邮件。此外,此类服务器由电子邮件提供商(例如 Gmail)提供。需要了解的重要一点是,此类服务器通常有严格的每日发送限制。 - 专用 SMTP 服务器
这种类型的 SMTP 服务器非常有用,因为它可以处理批量电子邮件。许多公司也依赖此类服务器来处理交易电子邮件,例如确认购买、确认新闻通讯订阅或重置忘记密码的消息。
SMTP工作原理
简单邮件传输协议创建了在电子邮件客户端和邮件服务器之间交换数据的过程。以下是它如何帮助电子邮件传输:
- 打开 SMTP 连接
由于 SMTP 使用TCP(传输控制协议)作为传输协议,因此需要在客户端和服务器之间建立连接。然后电子邮件客户端可以使用 SMTP 命令(HELO 或 EHLO)启动电子邮件发送过程。 - 传输电子邮件数据
客户端发送多个带有电子邮件内容的命令,例如电子邮件标题和电子邮件正文。 - 邮件传输代理 (MTA)
服务器运行邮件传输代理 (MTA) 程序来检查收件人电子邮件地址的域名。如果与发件人的 IP 地址不同,它将查询域名系统 (DNS)以查找收件人的 IP 地址。 - 关闭连接
一旦数据传输完成,客户端通知服务器。然后最后一步是服务器关闭连接。这样,在客户端打开新的 SMTP 连接之前,服务器不会收到任何其他电子邮件信息。
SMTP 命令
SMTP 命令是文本指令,告诉客户端或服务器如何操作数据以及如何处理数据。此外,它们还通过正确地将传输的数据提供给服务器来帮助客户端。
- HELO/EHLO:这些命令用于“Hello”并在客户端和服务器之间创建 SMTP 连接。
EHLO example.com
- MAIL FROM:这提供了有关发送电子邮件的人的详细信息。
MAIL FROM: <sender@example.com>
- RCPT TO:此命令用于指定电子邮件的收件人。如果有多个接收者,则客户端可以多次发送此命令。
RCPT TO: <recipient@example.com>
- DATA:准备并启动客户端和服务器之间的信息传输。
- RSET:此命令重置连接并清除所有先前传输的数据,而不关闭 SMTP 连接。当客户端错误地发送他们想要发送的信息时,通常会使用 RSET。
- QUIT:使用此命令,连接结束。
SMTP 协议端口
可以使用多个 SMTP 端口作为通信端点来发送电子邮件。在以前,简单邮件传输协议仅使用一个端口:25。现在,它可以使用其他端口,即 465、587 和 2525。
- 端口 25:它是 SMTP 服务器之间连接的主要使用端口。然而,它经常被云服务提供商和 ISP 阻止,因为犯罪分子不断滥用它发送大量垃圾邮件。
- 端口 465: 它供带有安全套接字层 (SSL) 的 SMTP 使用。但是,现代电子邮件系统不再使用此端口。
- 端口 587:它现在恰好是现代应用程序用于电子邮件提交的最佳选择。通过此端口的 SMTP 连接实施 TLS 加密。
- 端口 2525:它并未与简单邮件传输协议正式关联,但如果常用端口不可用,它可以作为替代方案。
比较 SMTP、IMAP 和 POP
SMTP(简单邮件传输协议)、IMAP(互联网消息访问协议)和 POP(邮局协议)是电子邮件通信中使用的三种基本协议。
SMTP 负责发送电子邮件。它将传出消息从客户端传输到电子邮件服务器,然后电子邮件服务器将消息转发到目的地。这对于可靠的电子邮件传递至关重要。
另一方面,IMAP 和 POP 是接收电子邮件的协议。IMAP(互联网消息访问协议)允许用户直接在电子邮件服务器上访问和管理他们的电子邮件。它可以跨多个设备同步电子邮件,确保一台设备上所做的更改反映在所有其他设备上。
相比之下,POP(邮局协议)将电子邮件从服务器下载到客户端设备,并且通常将其从服务器中删除。它适合想要在本地存储电子邮件的用户。
本质上,SMTP 发送电子邮件,而 IMAP 和 POP 接收电子邮件。IMAP 提供从多个设备的同步和访问,而 POP 主要侧重于将电子邮件下载到单个设备。
SMTP协议优点
以下是 SMTP(简单邮件传输协议)的一些主要优点:
- 简单
它提供了在特定网络中的不同设备之间通过电子邮件进行通信的最直接的方法。最终用户只需输入电子邮件并将其发送到收件人的电子邮件地址。然后,邮件将进行从 SMTP 服务器到收件人设备的交换服务器的简单过程。
- 快速电子邮件发送
由于简单邮件传输协议是基于简单的平台设计的,因此电子邮件的发送速度非常快。此外,使用一台 SMTP 邮件服务器,您可以确保将邮件快速发送给多个收件人。
- 可靠性
该协议还为您发出的电子邮件提供可靠性。如果邮件未成功发送,SMTP 服务器将重新发送确切的电子邮件,直到传输完成。使用其他发送电子邮件的方式,您可能需要尝试多次才能传输电子邮件。
- 专用服务器
通过 SMTP(简单邮件传输协议),企业有机会实施和使用负责处理外发电子邮件的专用服务器。网络邮件提供商和ISP无法真正提供排他性,这可能会导致电子邮件传输问题。专用 SMTP 服务器在本地维护,可以选择配置以处理任何类型的重要和敏感电子邮件。
SMTP(简单邮件传输协议)仍然是最常用标准协议之一。需要发送大量电子邮件的大型企业往往都会自建自己专有的SMTP服务器。
但是电子邮件也面临巨大的安全风险,如何避免各类垃圾邮件预计钓鱼欺诈。可以参考如下博文:
- 安全知识普及:什么是垃圾邮件和网络钓鱼欺诈
- 在 Exchange Server 的边缘传输服务器上配置垃圾邮件过滤
- 善用exchange server自带的反垃圾邮件功能过滤垃圾邮件