email - SMTP 协议(protocol)同步错误(输入未等待问候就发送)

标签 email ssl centos exim

我在centos上配置了exim邮件服务器。它没有加密类型。但不适用于 SSL 和 TLS。对于此类错误,我没有得到正确的解决方案。谁能告诉解决方案以及为什么在 exim main.log 文件中出现此错误消息?

exim main.log 文件中的错误信息如下所示。

2015-03-17 10:34:16 SMTP 协议(protocol)同步错误(不等待问候就发送输入):拒绝来自 H=acp-node [10.7.2.137] input="\026\003\001”

最佳答案

(input sent without waiting for greeting) ... input="\026\003\001"

简而言之:您正在尝试在需要显式 TLS 的端口上使用隐式 TLS。

详细说明:有两种方法可以通过 SMTP 使用 TLS:

  • 隐式 TLS,即从头开始的 TLS。这用于端口 465 (smtps)。此模式在某些 SMTP 堆栈中简称为“SSL”。
  • 显式 TLS,即从普通 SMTP 开始并使用 STARTTLS 命令升级到 TLS。这用于端口 25(smtp)和 587(提交)。这种模式在一些 SMTP 堆栈中简称为“TLS”。

如果您查看有关将 SMTP 与 TLS 一起使用的问题,您会发现很多关于如何在各种设置中使用这些模式的困惑。你会发现很多错误代码试图在需要显式 TLS 的地方使用隐式 TLS。

您看到的是客户端尝试在不适合此的端口上使用隐式 TLS 的结果。 \026\003\001(或十六进制 16 03 01)是 TLS 1.0 握手的开始,并且 input sent without waiting for greeting 是指事实上,客户端先发送数据,而无需等待服务器发送(纯文本)SMTP 问候语。

关于email - SMTP 协议(protocol)同步错误(输入未等待问候就发送),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29091778/

相关文章:

c# - 如何在使用 Interop 从 C# 发送电子邮件时从 Outlook 中的多个配置文件中进行选择

html - 电子邮件地址的超链接

php - cURL SSL 请求失败

centos - 我无法在 CentOS 上使用 yum 更新软件

python - 在收到的电子邮件上运行 linux 脚本

android - 如何通过邮件从数据库发送图像

Python:Windows 上的 Flask 服务器——如何通过 SSL 验证 Flask Web 服务器?

ssl - 读取 X.509 key 或证书文件时出错 : Error in parsing when sending certificate in Curl Request

linux - AWS EFS : How to browse file?

linux - 配置 rsyslog 以记录所有命令