gpt4 book ai didi

smtp - 通过命令行连接到 smtp.gmail.com

转载 作者:行者123 更新时间:2023-12-03 06:48:21 26 4
gpt4 key购买 nike

我正在编写一个通过有效的 GMail 用户 ID 和密码发送邮件的应用程序。

我只是想在 Windows XP 命令行上模拟 SMTP 连接,当我在 465 端口 telnet smtp.gmail.com 时,我看不到任何东西。将打开一个标题为 Telnet smtp.gmail.com 并带有光标的空白命令窗口。当我输入 EHLO 或通常的 SMTP 握手命令时,提示符就会关闭。

我无法弄清楚出了什么问题以及出在哪里。我尝试连接到 587,它根本无法在 telnet 中连接。谁能澄清我是否做错了什么?

最佳答案

使用 Linux 或 OSx,按照 Sorin 的建议进行操作,但使用端口 465。 25 是通用 SMTP 端口,但不是 GMail 使用的端口。另外,我不相信你想使用 -starttls smtp

openssl s_client -connect smtp.gmail.com:465

您应该获得有关 SSL session 和响应的大量信息:

220 mx.google.com ...

输入

HELO smtp.gmail.com 

您将收到:

250 mx.google.com at your service

从这里开始,它并不像发送 SMTP 邮件那么简单,因为 Gmail 具有适当的保护措施,可确保您只发送看似来自实际属于您的帐户的电子邮件。不要输入“Helo”,而使用“Ehlo”。我对 SMTP 不太了解,所以我无法解释其中的区别,也没有时间进行太多研究。也许有更多知识的人可以解释一下。

然后,输入“auth login”,您将收到以下内容:

334 VXNlcm5hbWU6

这本质上是用 Base 64 编码的“用户名”一词。使用 Base 64 编码器,例如 this one ,对您的用户名进行编码并输入。对接下来要求的密码执行相同的操作。您应该看到:

235 2.7.0 Accepted

就这样,您已登录。

如果您使用 OSx 或 Linux 终端,还有一个奇怪的问题需要克服。仅按“ENTER”键显然不会导致 SMTP 需要结束邮件所需的 CRLF。您必须使用“CTRL+V+ENTER”。因此,这应该如下所示:

^M
.^M
250 2.0.0 OK

关于smtp - 通过命令行连接到 smtp.gmail.com,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1516754/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com