使用telnet登陆smtp服务发邮件(带身份验证)

时间: 2023-07-10 admin IT培训

使用telnet登陆smtp服务发邮件(带身份验证)

使用telnet登陆smtp服务发邮件(带身份验证)

这几天做邮件发送的小程序,顺便查了一下为什么126、gmail等smtp邮件服务器,都不能使用实验课上的smtp指令发送邮件,当时根据返回信息,只知道服务器需要身份认证。

今天终于找出了telnet 登陆带身份认证的SMTP服务器的方法。

提供一个Base64编码的网址.asp

具体过程如下:
Microsoft Telnet/> open smtp.126.com 25
220 126.com Anti-spam GT Coremail System (126com[071018])
HELO mail.126.com
250 OK 
AUTH LOGIN     //使用身份认证登陆指令
334 dXNlcm5hbWU6
kjihgfedcba==  //输入已经base64_encode()过的用户名.
334 UGFzc3dvcmQ6
abcdefghijk==  //输入已经base64_encode()过的密码
235 Authentication successful
MAIL FROM:<yaochengxiang@126.com>  //告诉服务器发信人的地址
250 Mail OK
RCPT TO:<yaochengxiang@gmail.com>  //告诉服务器收信人的地址
250 Mail OK
DATA  

354 End data with <CR><LF>.<CR><LF>
To:yourframe@162.com               //在邮件中显示的收件人地址
From:Iamahacker@gmails.com         //在邮件中显示的发件人地址
Subject:test mail                 
//邮件主题,然后两次回车


Hello Yaos


.                                  //结束传输信件
250 Mail OK queued as smtp14,F0CPBFsuzUOvoDwE.41582S2
QUIT                               //断开连接
221 Bye
Connection closed by foreign host.

 

状态码说明:

220 : 服务就绪

250 :请求邮件动作正确,完成(HELO,MAIL FROM,RCPT TO,QUIT 指令执行成功会返回此信息)

235 :认证通过

221 :正在处理

354 :开始发送数据,结束以 .(DATA指令执行成功会返回此信息)

500 :语法错误,命令不能识别

550 :命令不能执行,邮箱无效

552 :中断处理:用户超出文件空间