【问题标题】:Telnet smtp.mail - must issue STARTTLS command firstTelnet smtp.mail - 必须先发出 STARTTLS 命令
【发布时间】:2015-12-16 07:07:05
【问题描述】:

在我的 Mac 终端上,我正在尝试将 telnet 输入到我的 smtp.gmail.comport 587

在 Google Apps(设置为管理 Dreamhost 域)上,我已配置中继,如下所示:

"Allowed senders: Only addresses in my domains" "Require SMTP Authentication: Yes"

当我HELO <me@domain.com> 时,我得到:

250 smtp.gmail.com at your service

然后我输入MAIL FROM: <me@example.com>

返回:

530 5.7.0 Must issue a STARTTLS command first.

我做错了什么?

【问题讨论】:

    标签: smtp telnet


    【解决方案1】:

    您需要先开始加密连接。这是使用 STARTTLS 命令完成的。

    您可以使用以下命令代替telnet

    openssl s_client -starttls smtp -ign_eof -crlf -connect smtp.gmail.com:587

    它的工作方式类似于 telnet 命令,但需要先启动加密。

    【讨论】:

    • 输入时会中断:RCPT TO: myuser@googlemail.comRENEGOTIATING<LF>139860672468096:error:1420410A:SSL routines:SSL_renegotiate:wrong ssl version:../ssl/ssl_lib.c:2127:
    • @rubo77,我遇到了同样的错误。你克服了吗?
    • 实际上正确的命令应该是:openssl s_client -starttls smtp -ign_eof -crlf -connect <your.server>:port。 s_client 的文档说,当在一行的开头输入一个大的R(这里是RCPT TO...)时,它会进行重新协商。由于 TLS1.3 不支持,您会收到这个奇怪的错误消息。
    • @dCSeven 感谢改进的openssl 命令行。我相应地更新了我的答案。
    猜你喜欢
    • 1970-01-01
    • 2015-04-24
    • 2017-01-13
    • 2017-01-13
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    • 2015-02-04
    • 1970-01-01
    相关资源
    最近更新 更多