利用telnet 发送qq邮件

qq邮箱使用了加密的smtp,并且第三方登录时只能使用授权码,而不能使用qq密码登录,这是为了安全,防止密码泄露。

首先qq邮箱要开启IMAP/SMTP服务,开启方法见官网,如下图.

然后登陆过程应该会遇到 530 Error: A secure connection is requiered(such as ssl). More information at http://service.mail.qq.com/cgi-bin/help?id=28

这时候只需要声明一下是加密的连接即可。 在auth login 前声明STARTTLS,即:STARTTLS auth login。

账号登录的时候,需要将邮箱地址和密码都经过base64编码后再输入,可以使用站长工具在线编码

测试如下(>开头部分是输入):

>telnet smtp.qq.com 25
Trying 14.18.245.164...  
Connected to smtp.qq.com.  
Escape character is '^]'.  
220 smtp.qq.com Esmtp QQ Mail Server  
>helo tangs

250 smtp.qq.com  
>STARTTLS auth login

220 Ready to start TLS  
>auth login

334 VXNlcm5hbWU6  
>NTk0Nzg4NjYyQHFxLmNvbQ==

334 UGFzc3dvcmQ6  
>5L2g54yc5oiR5a+G56CB5aSa5bCR

235 Authentication successful  
//此时已经登陆成功了。
>MAIL FROM: 594788662@qq.com

250 Ok  
>RCPT TO: receiverYouWanted@qq.com

250 Ok  
>DATA

354 End data with <CR><LF>.<CR><LF>  
>hhhhhhhha test <CR><LF>.<CR><LF>
>From: 594788662@qq.com
>Subject: honey test
>body
>.
250 Ok: queued as  

到此,一封邮件发送成功。 图片发送成功