关于邮件服务器中的端口和加密



在邮件客户端上配置传出邮件服务器时,您会看到3个用于加密的选项-不加密,SMTPS和STARTTLS,以及3个可能的端口-25、465、587。选择什么和做什么-让我们理解。

视频


上一个< 邮件服务器操作模式
下一个> 邮件服务器的DNS记录


当您向某人发送一条消息时,您的邮件客户端使用ESMTP来发送此消息,然后,如果您的邮件服务器需要将该消息发送到另一台服务器,则使用相同的协议。服务器。尽管每个人都在说和写SMTP,但通常都是关于ESMTP的-相同的SMTP,但是具有一组扩展名,例如授权和加密。是的,一旦SMTP甚至不支持授权。



现在介绍一下SMTPS。一旦互联网变得如此简单,以至于其中的所有内容都以明文形式传输。然后是密码加密协议,即相同的SSL。以前以开放形式传输信息的服务开始使用SSL封装流量。



但是,要在相同的标准端口上执行此操作并不容易-客户端和服务器必须就加密方法达成一致,并且要使一个端口上的服务能够同时工作以进行某些加密操作,而对于其他一些不进行加密的操作则需要更改协议。为了不使所有内容复杂化,他们开始为加密连接雕刻单独的端口-这就是HTTPS 443和SMTPS 465出现的方式。但是我们现在意识到了这一点-专用端口很少,服务的数量正在增长,并且如果每个端口都将使用多个具有加密功能且未加密的端口来实现其目的-麻烦。



最后,他们决定对协议进行一些修改。在某些情况下,这对于HTTP来说效果不佳,例如对于SMTP,事实证明这是一个非常合适的选择。为此,STARTTLS扩展已添加到SMTP。通常,STARTTLS扩展不仅用于SMTP,而且通常是启动加密协商的命令。与使用专用端口465并立即加密连接的SMTPS不同,STARTTLS只是SMTP的扩展,这意味着该会话作为常规SMTP会话启动。邮件服务器互相打招呼,然后提出开始加密并选择可用的加密协议。



结果,随着标准中STARTTLS的出现,他们决定删除端口465上的SMTPS作为一项单独的服务。他们将其从标准中删除,但该服务仍然存在,并且仍在使用中。至于加密,我仍将单独讨论一个话题,但现在让我们谈谈STARTTLS。



我之前说过,使用STARTTLS,邮件服务器或客户端/服务器打开不加密的连接,然后同意加密。他们使用相同的SSL / TLS进行加密。但是,如果他们不同意该怎么办?事实证明他们将以未加密形式进行通信吗?在网上?同时,他们同意不进行任何加密,从而由于缺乏可用的加密方法而容易欺骗服务器或客户端。一次,他们在这种攻击中抓住了其中一个提供商。然后,您需要进行这样的加密。并非所有事物都如此绝望。实际上,如果无法就加密达成一致,则管理员可以禁用发送邮件的功能,并且要求邮件客户端警告服务器不支持加密。



因此,我们发现在端口25上有SMTP,在465上有SMTPS,但还有另一个端口587,邮件服务器也使用该端口。



如您所见,电子邮件客户端通过SMTP连接到服务器。邮件服务器也通过SMTP相互连接。我在最后一部分还说过,有这样的服务器-转发邮件的中继主机。由于某些原因(大多数是人为原因),Internet上存在中继主机,这些中继主机允许未经授权的用户从任何地址重定向邮件。每当管理员疏忽举起邮件服务器时,这些主机就会出现,并且这种情况经常发生。结果,网络犯罪分子会饲养临时服务器或感染未经授权通过这些中继主机发送垃圾邮件的用户的计算机。



因此,某些Internet提供商会阻止任何用户连接到端口25。



该端口在Internet上的服务器之间开放,但是它们为用户提供了一项单独的服务-MSA(消息提交代理-发送代理),从而将用户连接与仍通过MTA进行通信的服务器连接分开。通常,MSA甚至可以在端口25上工作,但是它的官方端口是587。那么,什么阻止垃圾邮件发送者使用此端口?通常,MSA需要用户授权。这不是存在MSA的唯一原因-由于它可与电子邮件客户端一起使用,因此可以为客户端的工作进行更好的优化-它会立即警告邮件中的任何错误,例如,缺少收件人的域地址。



最后,让我们按照发送电子邮件的过程进行操作。为此,请使用Wireshark,一个电子邮件客户端和一个Gmail帐户。这一切都始于标准的TCP握手,然后启动SMTP会话。在会话中,邮件客户端和服务器互相打招呼,之后邮件客户端提供加密会话的权限,服务器同意,之后交换密钥并开始TLSv1.3会话,之后客户端以加密方式登录并发送不可见的消息用于交通拦截器。

All Articles