电脑维修 笔记本维修 手机维修 打印机维修 IT外包
24小时服务电话:0731-84688748  18229718750
地址:长沙市天心区青园街道友谊社区友谊小区A3栋15号

服务区域:湖南省政府方圆5公里内(友谊社区 青园小区 阳光嘉园 天一康园 湘超景园 国际公寓 HOPSCA写字楼 豪布斯卡 天城·泰祥苑 国检园 梦网景园 石人村金石·蓉园安置小区 鑫隆家园 湘诚嘉园 童话里 七星车城 华铁佳苑 巢之恋 鑫远杰座 鑫远华城 满庭芳 宽域 鑫天山水洲城 星语林名园 青园街道进湾子社区 白沙世纪佳园 长沙欧洲城 长沙奥林匹克花园 高升安置小区 湘府名邸 嘉尚君远 富景园 鑫源公寓 岳泰理想城 等等...)

SMTP & POP命令详解 - 全文内容:

显示技术博客列表

SMTP & POP命令详解

超短链接

SMTP & POP命令详解
下面的例子是用qq的smtp服务器。

set localecho
本地回显启用
telnet smtp.qq.com 25
220 smtp.qq.com Esmtp QQ Mail Server
helo sis
250 smtp.qq.com//服务器返回250 smtp.qq.com
STARTTLS
220 Ready to start TLS//服务器返回 220 准备开启TLS通讯
auth login
334 VXNlcm5hbWU6//服务器返回334 VXNlcm5hbWU6(即Username:)
***/*此处输入base64编码后的qq邮箱名 https://tool.oschina.net/encrypt?type=3  */
334 UGFzc3dvcmQ6
***/*此处输入base64编码后的授权码,需要到qq邮箱申请,自己百度一下*/
235 Authentication successful
mail from: <[email protected]>//发件邮箱
250 Ok
rcpt to: <[email protected]>//发件邮箱
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
to: hello//
from: nian//
subject: this is a test telnet smtp mail
hello,telnet//消息内容

.
250 Ok: queued as


==============================================================
SMTP的相关命令
http://www.cnblogs.com/cocowool/archive/2012/03/14/2395390.html
SMTP是Simple Mail Transfer Protocol的简写。
邮件是日常工作、生活中不能缺少的一个工具,下面是邮件收发的流程。
邮件的发送,主要是通过SMTP协议来实现的。SMTP协议最早在RFC 821(1982年)中定义,最后更新是在RFC 5321(2008年)中,更新中包含了扩展SMTP(ESMTP)。
在平时的程序开发中经常会有发送邮件的这种需求,所以免不了要对邮件发送服务器的可用性进行测试。下面是整理的命令,用来在命令行下测试SMTP服务器,进行邮件发送等操作,相信对于加深SMTP的理解可以起到促进作用。
SMTP默认使用25端口,我们可以使用telnet工具进行测试。
1、连接SMTP服务器,查看是否存活。
>telnet smtp.sina.com 25
>Connected to mail.sina.com.
>Escape character is '^]'.
>220 smtp ready
在telnet下转义符是Ctrol+],如果想退出,按转义符后输入quit,就可以退回到命令行了。
2、用户登陆
连接到服务器后,使用AUTH LOGIN命令进行用户登陆(SMTP命令不区分大小写)
>auth login
>334 VXNlcm5hbWU6
>c2VydmljZUBoZWVwLmNx
>334 UGFzc3dvcmQ6
>xxxxxxxx
>235 go ahead
235返回码表明登陆验证成功,用户可以进行后续的操作了。用户邮箱和密码是经过Base64编码的,这个与服务器的安全特性相关,属于可配置项。
3、发送邮件。
用户身份验证通过后,执行下面的命令进行邮件的发送。
>235 #2.0.0 OK Authenticated
>MAIL FROM: [email protected]
>250 sender <[email protected]> ok
>RCPT to: [email protected]
>250 recipient <[email protected]> ok
>DATA
>354 go ahead
>Subject: Hi smtp mail
>hello mail
>.
>250 ok: Message 1763097690 accepted
SMTP命令列表
HELO
客户端为标识自己的身份而发送的命令(通常带域名)
EHLO
使服务器可以表明自己支持扩展简单邮件传输协议 (ESMTP) 命令。
MAIL FROM
标识邮件的发件人;以 MAIL FROM: 的形式使用。
RCPT TO
标识邮件的收件人;以 RCPT TO: 的形式使用。
TURN
允许客户端和服务器交换角色,并在相反的方向发送邮件,而不必建立新的连接。
ATRN
ATRN (Authenticated TURN) 命令可以选择将一个或多个域作为参数。如果该会话已通过身份验证,则ATRN 命令一定会被拒绝。
SIZE
提供一种使 SMTP 服务器可以指出所支持的最大邮件大小的机制。兼容的服务器必须提供大小范围,以指出可以接受的最大邮件大小。客户端发送的邮件不应大于服务器所指出的这一大小。
ETRN
SMTP 的扩展。SMTP 服务器可以发送 ETRN 以请求另一台服务器发送它所拥有的任何电子邮件。
PIPELINING
提供发送命令流(而无需在每个命令之后都等待响应)的能力。
CHUNKING
替换 DATA 命令的 ESMTP 命令。该命令使 SMTP 主机不必持续地扫描数据的末尾,它发送带参数的 BDAT 命令,该参数包含邮件的总字节数。接收方服务器计算邮件的字节数,如果邮件大小等于 BDAT 命令发送的值时,则该服务器假定它收到了全部的邮件数据。
DATA
客户端发送的、用于启动邮件内容传输的命令。
DSN
启用传递状态通知的 ESMTP 命令。
RSET
使整个邮件的处理无效,并重置缓冲区。
VRFY
确认在邮件传递过程中可以使用邮箱;例如,vrfy ted 确认在本地服务器上驻留 Ted 的邮箱。该命令在 Exchange 实现中默认关闭。
HELP
返回 SMTP 服务所支持的命令列表。
QUIT
终止会话。
SMTP命令响应码
211 System status, or system help reply
214 Help message (Information on how to use the receiver or the meaning of a particular non-standard command; this reply is useful only to the human user)
220 <domain> Service ready
221 <domain> Service closing transmission channel
250 Requested mail action okay, completed
251 User not local; will forward to <forward-path> (See Section 3.4)
252 Cannot VRFY user, but will accept message and attempt delivery (See Section 3.5.3)
354 Start mail input; end with <CRLF>.<CRLF>
421 <domain> Service not available, closing transmission channel (This may be a reply to any command if the service knows it must shut down)
450 Requested mail action not taken: mailbox unavailable (e.g., mailbox busy or temporarily blocked for policy reasons)
451 Requested action aborted: local error in processing
452 Requested action not taken: insufficient system storage
455 Server unable to accommodate parameters
500 Syntax error, command unrecognized (This may include errors such as command line too long)
501 Syntax error in parameters or arguments502 Command not implemented (see Section 4.2.4)
503 Bad sequence of commands
504 Command parameter not implemented
550 Requested action not taken: mailbox unavailable (e.g., mailbox not found, no access, or command rejected for policy reasons)
551 User not local; please try <forward-path> (See Section 3.4)
552 Requested mail action aborted: exceeded storage allocation
553 Requested action not taken: mailbox name not allowed (e.g.,mailbox syntax incorrect)
554 Transaction failed (Or, in the case of a connection-opening response, "No SMTP service here")
555 MAIL FROM/RCPT TO parameters not recognized or not implemente