调试 curl 请求/什么是 curl 请求,用于测试给定的用户名/密码是否适用于特定的 smtp 服务器

调试 curl 请求/什么是 curl 请求,用于测试给定的用户名/密码是否适用于特定的 smtp 服务器

我有一个客户使用一个特定的应用程序,该应用程序使用安全 smtp 连接外发电子邮件。我怀疑它以某种方式被更改了(无论是他们还是托管提供商都无关紧要)。我想通过 curl 验证他们的外发服务器身份验证是否正确。我在创建这个系统时没有任何经验。我试过这个:

at Apr 18$ curl smtps://outbound.att.net:465 -v --mail-from "[email protected]" --mail-rcpt "[email protected]" --ssl -u [email protected]:ourpassword

但收到这个神秘的错误信息:

* Rebuilt URL to: smtps://outbound.att.net:465/
* Hostname was NOT found in DNS cache
*   Trying 67.195.15.5...
* Connected to outbound.att.net (67.195.15.5) port 465 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
* Server certificate: smtp.mail.att.net
* Server certificate: Symantec Class 3 Secure Server CA - G4
* Server certificate: VeriSign Class 3 Public Primary Certification Authority - G5
< 220 smtp.mail.att.net ESMTP ready
> EHLO jonathans-MacBook-Air
< 250-smtp.mail.att.net
< 250-PIPELINING
< 250-SIZE 41697280
< 250-8 BITMIME
< 250 AUTH PLAIN LOGIN XOAUTH2 XYMCOOKIE
> AUTH LOGIN
< 334 VXNlcm5hbWU6
> dGhlbmV3YW9jQGF0dC5uZXQ=
< 334 UGFzc3dvcmQ6
> SWxvdmVjaGVlc2UwOQ==
< 535 5.7.0 (#MBR1212) Incorrect username or password.
* Authentication failed: 535
* Closing connection 0
curl: (67) Authentication failed: 535

谢谢您的帮助。

答案1

简短回答:

错误的身份验证方法

较长的答案:

线索是显示 的那行Authentication failed: 535。虽然这可能意味着用户名/密码错误,但情况并非如此。它基本上意味着用于加密/散列用户名和密码的方法产生的字符串与邮件服务器记录中的字符串不一致。如果用户名和密码正确,那么最常见的原因是没有考虑使用 SSL/TLS 或类似架构。

笔记:

出于某种原因,如果某个帐户因某种原因被暂停,则会使用相同的错误消息。我觉得很奇怪,他们没有为“帐户未激活”或类似情况提供不同的错误代码。您可能想先检查一下帐户的状态,以确保万无一失。

相关内容