Php 如何检测域是否具有接受电子邮件的“捕获所有”策略?

Php 如何检测域是否具有接受电子邮件的“捕获所有”策略?,php,email,smtp,catch-all,Php,Email,Smtp,Catch All,我几乎完成了一个工具来检测电子邮件是否有效。我被困在一个很小的点上,我必须检测邮件服务器或域是否启用了“捕获所有”策略 全部捕获:邮件服务器将接受所有电子邮件,即使电子邮件地址不存在 谢谢。没有100%可靠的方法来检测您无法控制的邮件服务器。 最有希望的方法是在目标域中生成一个随机地址,该地址肯定不会用作实际帐户,并发送一条测试消息 如果您在发送脚本时没有收到拒绝,并且在几分钟内没有跳转到脚本的信封发送者地址,那么可能会涉及到一个包罗万象的问题。但这也可能仅仅意味着目标服务器隔离或丢弃了您的邮件

我几乎完成了一个工具来检测电子邮件是否有效。我被困在一个很小的点上,我必须检测邮件服务器或域是否启用了“捕获所有”策略

全部捕获:邮件服务器将接受所有电子邮件,即使电子邮件地址不存在


谢谢。

没有100%可靠的方法来检测您无法控制的邮件服务器。 最有希望的方法是在目标域中生成一个随机地址,该地址肯定不会用作实际帐户,并发送一条测试消息

如果您在发送脚本时没有收到拒绝,并且在几分钟内没有跳转到脚本的信封发送者地址,那么可能会涉及到一个包罗万象的问题。但这也可能仅仅意味着目标服务器隔离或丢弃了您的邮件,或者邮件没有返回给您

如果你沿着这条路走下去,确保你的工具生成有效的消息,包含所有必要的标题,有正确的dns/helo设置,不使用任何非rfc smtp快捷方式,等等,以免被过滤


另请注意:如果此工具将公开,请确保其受到适当保护。自动发送邮件的工具是常见的滥用目标。

您可以通过使用Telnet识别域是否为catchall。 针对该域创建无效的电子邮件地址

e.g.
domain : example.com
Email Adddress : dummyemail@example.com, invalid.email@example.com
如何远程登录:

步骤1-查找example.com的邮件交换器或邮件服务器

Commmand : 
nslookup -q=mx example.com

Response:
Non-authoritative answer:
example.com mail exchanger = 10 aspmx.l.google.com.
example.com mail exchanger = 20 alt1.aspmx.l.google.com.
example.com mail exchanger = 30 alt2.aspmx.l.google.com.
example.com mail exchanger = 40 aspmx2.googlemail.com.
example.com mail exchanger = 50 aspmx3.googlemail.com.
步骤2-现在我们知道了邮件服务器,让我们连接到它

Command:
telnet aspmx.l.google.com 25

Response:
Trying 74.125.24.27...
Connected to aspmx.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP z79si2772641pfi.381 - gsmtp
步骤3-输入helo hi

Command:
helo hi

Response:
250 mx.google.com at your service
第4步-您从中远程登录到目标电子邮件地址的电子邮件地址

Command:
mail from: <emailaddress@gmail.com>

Response:
250 2.1.0 OK z79si2772641pfi.381 - gsmtp
命令:
邮寄地址:
答复:
250 2.1.0正常z79si2772641pfi.381-gsmtp
步骤5-要验证的目标电子邮件地址

Command:
rcpt to: <targetemailid@example.com>

Response:
250 2.1.5 OK z79si2772641pfi.381 - gsmtp
命令:
rcpt至:
答复:
250 2.1.5正常z79si2772641pfi.381-gsmtp
如果您对无效的电子邮件地址获得“确定”,则该域为catchall域。


简单来说,catch-all域意味着,该公司的服务器将捕获发送到该域的任何电子邮件,即使是不存在的地址,并将其存储在一个名为catch-all的部分中。发生这种情况时,您不知道它是否是合法的电子邮件地址。

发送一封邮件,看看它是否会反弹。我认为没有办法找到答案。就像你不知道它是否会把你的邮件当作垃圾邮件扔掉一样。唯一的办法就是问管理员!见此: