用Dos命令连接smtp邮件服务器

时间:2021-04-30 18:08:16

转自:【http://blog.163.com/alan_zheng/blog/static/2048661192012430102650960/】

telnet smtp.126.com 25                     //登陆126.com邮件服务器

220 126.com Anti-spam GT for Coremail System (126com[20090903])

                                                                 //登陆服务器后的显示......

HELO Hi                                                //打个招呼

250 OK

auth login                                               //使用身份认证登陆指令

334 dXNlcm5hbWU6                          //服务器返回要求输入用户名

                                                                 //dXNlcm5hbWU6其实是username:

                                                                  //经过64位编码过后的表现形式
d2VpeHVuNDVAMTI2LmNvbQ==   //输入已经base64_encode()过的用户名

334 UGFzc3dvcmQ6                          //服务器返回要求输入密码

                                                               //UGFzc3dvcmQ6就是 Password:

abcdefg=                                              //输入已经base64_encode()过的密码

235 Authentication successful      //服务器表明身份认证成功,下面就可以发送邮件了

                                                          //如果认证错误 需要重新输入auth login进行上面的认证

mail from:<weixun45@126.com>    //告诉服务器发信人的地址

250 Mail OK

rcpt to:<simple_best@126.com>       //告诉服务器收信人的地址

250 Mail OK

data                                                            //输入发送数据的命令

354 End data with <CR><LF>.<CR><LF>

subject: hello my first smtp test    //输入邮件的主题

                                                         //注意格式:主题过后一定要换一行, 不然会被当成内容发送

good good study day day up     //发送的内容

.                                                         //以一点结束       开始传输邮件


250 Mail OK queued as smtp7,DsmowKDrf5vP9alMeNmtAw--.45722S2 1286207115

                                                   // 服务器返回, 表明邮件以成功的放到发送队列里 进行发送了
quit                                           //断开连接

221 Bye

---------------------------------------------------------------------------------------------------------------------

附:

SMTP的基本命令集:
HELO    向服务器标识用户身份
MAIL      初始化邮件传输mail from: <xxx>
RCPT    标识单个的邮件接收人;常在MAIL命令后面可有多个rcpt to: <xxx>
DATA     在单个或多个RCPT命令后,表示所有的邮件接收人已标识,初始化数据传 输,以.结束
NOOP  无操作,服务器应响应OK
RSET    重置会话,当前传输被取消
QUIT      结束会话

---------------------------------------------------------------------------------------------------------------------

状态码说明:

220 : 服务就绪

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

235 :认证通过

221 :正在处理

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

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

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

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