最近,我一直在试验一个简单的脚本,它可以监听端口25,接收并记录任何收到的电子邮件。
这是一个非常原始的脚本,它根本不实现SMTP协议。它只是简单地吐出罐装回复,它的工作方式如下:
(example.com取代了我的实际域的FQDN。)
这是一个非常粗糙的脚本;然而,在过去的几个月里,它对我需要收到的每一封电子邮件都非常有效。我可以收到罚款从Gmail,质子邮件,验证电子邮件等。我也捕捉到一些互联网范围的扫描,所以这也是一个有趣的蜜罐。
今天,我尝试收到一封Microsoft帐户验证电子邮件来注册一个Microsoft帐户。远程客户端似乎根本没有响应220!
# nc -l -v -p 25
Listening on [0.0.0.0] (family 0, port 25)
Connection from mail-co1nam03on0003.outbound.protection.outlook.com 56725 received!
220 example.com ESMTP Postfix
不管我做了什么,客户都不会送任何东西。我做错了什么?任何想法都欢迎。
发布于 2018-10-03 22:16:12
tripleee在评论中解决了这个问题,所以我把它作为每个人都能看到的答案。问题是我只是给LF作为换线,而不是CRLF。所以我用代码中的‘\r’替换了所有的'\n‘,并修复了它。我猜其他的邮件服务器只是对我很宽容。
https://stackoverflow.com/questions/52639312
复制相似问题