Advertisement

SMTP协议解析

阅读量:

25端口

SMTP的连接和发送过程

(a)建立TCP连接

(b)客户端发出HELO命令以认证发件人的身份后, 执行MAIL操作;

服务器端正希望以OK作为响应,表明准备接收

(c)客户端提交相关命令用于标识该电子邮件的计划接收人,并允许多个RCPT行;

服务器端则表示是否愿意为收件人接收邮件

(d)协商结束,发送邮件,用命令DATA发送

(e)以.表示结束输入内容一起发送出去

(f)结束此次发送,用QUIT命令退出

SMTP常用的命令

SMTP命令不区分大小写,但参数区分大小写。常用命令如下:

HELO ——向服务器标识用户身份的发送者能够欺骗、说谎,在一般情况下服务器能够识别出

RCPT TO: 常用于指定邮件接收者的地址,在SMTP协议中通常允许有多个RCPT TO指令。

DATA ——将之后的数据作为数据发送,以.标志数据的结尾

REST ——重置会话,当前传输被取消

NOOP ——要求服务器返回OK应答,一般用作测试

QUIT ——结束会话

VRFY——用于检查指定的邮箱是否存在;由于安全考虑的原因,在大多数情况下该命令会被阻止。

EXPN用于检查给定的邮箱列表是否存在。出于安全考虑,服务器通常会禁止此操作.

HELP ——查询服务器支持什么命令

SMTP常用的响应

501——参数格式错误

502——命令不可实现

503——错误的命令序列

504——命令参数不可实现

211——系统状态或系统帮助响应

214——帮助信息

220——服务器就绪

221——服务关闭

421——服务器未就绪,关闭传输信道

250——要求的邮件操作完成

251——用户非本地,将转发向

450——要求的邮件操作未完成,邮箱不可用

550——要求的邮件操作未完成,邮箱不可用

451——放弃要求的操作,处理过程中出错

551——用户非本地,请尝试

452——系统存储不足,要求的操作未执行

552——过量的存储分配,要求的操作未执行

553——邮箱名不可用,要求的操作未执行

354——开始邮件输入,以“.”结束

554——操作失败

全部评论 (0)

还没有任何评论哟~