`

POP3_SMTP 命令简介

阅读更多

SMTP 命令简介

什么是 SMTP
SMTP (Simple Mail Transfer Protocol) :
电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP TCP 协议 25 端口监听连接请求。

什么是 ESMTP
ESMTP (Extended SMTP)
,顾名思义,扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP 发信时, 服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与 SMTP 方式没有两样。

SMTP 命令
SMTP
命令包括:
HELO
向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。
EHLO
向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。

MAIL FROM
命令中指定的地址是发件人地址

RCPT TO
标识单个的邮件接收人;可有多个 RCPT TO;常在 MAIL 命令后面。
DATA
在单个或多个 RCPT 命令后,表示所有的邮件接收人已标识,并初始化数据传输,以 CRLF.CRLF 结束
VRFY
用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令

EXPN
验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用

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

NOOP
无操作,服务器应响应
OK
RSET
重置会话,当前传输被取消

QUIT
结束会话

连接 Winmail Server 使用 SMTP 命令发送邮件

例如:安装 Winmail 的邮件服务器IP192.168.0.1 (蓝色字体内容由客户端输入,红色字体内容是服务返回的)

telnet 192.168.0.1 25 --------------------------------------- 使用 telnet 命令连接服务器 25 端口
Trying 192.168.0.1... --------------------------------------- 正在连接服务器 25 端口

Connected to 192.168.0.1. ----------------------------------- 连接服务器 25 端口成功

220 Winmail Mail Server ESMTP ready ------------------------- 显示服务器的标识名称 (Winmail 管理工具->高级设置->系统参数->基本参数中可更改
)
helo cnu.com ------------------------------------------------ 向服务器标识用户身份,发信不要认证,跳过下面几步直接发送 mail from 命令

250 Winmail Mail Server

ehlo cnu.com ------------------------------------------------ ESMTP 命令,发信需要认证。
250-Winmail Mail Server
250-PIPELINING
250-AUTH=LOGIN PLAIN
250-AUTH LOGIN PLAIN
250-SIZE 20480000
250 8BITMIME
auth login ------------------------------------------------- 进行用户身份认证
334 VXNlcm5hbWU6 

Y29zdGFAYW1heGl0Lm5ldA== ----------------------------------- BASE64 加密后的用户名

334 UGFzc3dvcmQ6 

MTk4MjIxNA== ----------------------------------------------- BASE64 加密后的密码

235 auth successfully -------------------------------------- 身份认证成功

(
535 auth failure ------------------------------------------ 身份认证失败
)
发到本系统中域名下的账户可跳过身份认证。

mail from: <test1@domain.com> ------------------------------ mail from 地址 test1@domain.com
250 ok ----------------------------------------------------- 命令执行成功

rcpt to: <test2@domain.com> -------------------------------- 递送给地址
test2@domain.com
250 ok ----------------------------------------------------- 命令执行成功

data ------------------------------------------------------- 数据传输初始化

354 go ahead ----------------------------------------------- 开始传输数据

From: test1@domain.com
To: test2@domain.com
Date: Mon, 25 Oct 2004 14:24:27 +0800
Subject: test mail

Hi, test2
This is a test mail, you don't reply it.

.
------------------------------------------------------------ 数据内容,包括BASE64加密后的邮件内容, CRLF.CRLF 结束数据传输

250 ok message accepted for delivery ----------------------- 命令执行成功

quit ------------------------------------------------------- 结束会话

221  Winmail Mail Server

Connection closed by foreign host .------------------------- 断开连接

 

 

 

 

 

POP3 命令简介

什么是 POP3
POP3 (Post Office Protocol 3)
即邮局协议的第 3 个版本,它规定怎样将个人计算机连接到 Internet 的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的 第一个离线协议标准, POP3 允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循 POP3 协议的接收邮件服务器,用来接收电子邮件的。

POP3 命令
POP3
命令包括:
USER username
认证用户名
PASS password
认证密码认证,认证通过则状态转换
APOP name,digest
认可一种安全传输口令的办法,执行成功导致状态转换,请参见 RFC 1321

STAT
处理请求 server 回送邮箱统计资料,如邮件数、 邮件总字节数
UIDL n
处理 server 返回用于该指定邮件的唯一标识, 如果没有指定,返回所有的。
LIST n
处理 server 返回指定邮件的大小等
RETR n
处理 server 返回邮件的全部文本

DELE n
处理 server 标记删除,QUIT 命令执行时才真正删除

RSET
处理撤消所有的 DELE 命令
TOP n,m
处理 返回 n 号邮件的前 m 行内容,m 必须是自然数

NOOP
处理 server 返回一个肯定的响应

QUIT
希望结束会话。如果 server 处于"处理" 状态,则现在进入"更新"状态,删除那些标记成删除的邮件。如果 server 处于"认可"状态,则结束会话时 server 不进入"更新"状态

使用 telnet 连接 Winmail Server 收信
例如:安装 Winmail 的邮件服务器 IP 192.168.0.1(蓝色字体内容由客户端输入,红色字体内容是服务返回的)

telnet 119.119.119.212 110 ----------------------------- 使用 telnet 命令连接服务器 110 端口
Trying 119.119.119.212... ------------------------------ 正在连接服务器 110 端口
Connected to 119.119.119.212. -------------------------- 连接服务器 110 端口成功
+OK Winmail Mail Server POP3 ready
user username ------------------------------------------ 输入用户名, username 为具体的用户名
+OK ---------------------------------------------------- 执行命令成功
pass password ------------------------------------------ 输入用户密码,password 为具体的密码
+OK 2 messages ----------------------------------------- 密码认证通过
(
-ERR authorization failed ----------------------------- 密码认证失败
)
stat --------------------------------------------------- 邮箱状态

+OK 2 6415 --------------------------------------------- 2 为该信箱总邮件数,6415 为总字节数
list --------------------------------------------------- 列出每封邮件的字节数

+OK ---------------------------------------------------- 执行命令成功,开始显示,左边为邮件的序号,右边为该邮件的大小

1 537 -------------------------------------------------- 1 封邮件,大小为 537 字节

2 5878 ------------------------------------------------- 2 封邮件,大小为 5878 字节

.

top 1 -------------------------------------------------- 接收第 1 封邮件
+OK ---------------------------------------------------- 接收成功, 返回第 1 封邮件头

Return-Path: <test1@look.com>
Delivered-To: test2@look.com
Received: (winmail server invoked for smtp delivery); Mon, 25 Oct 2004 14:24:27 +0800
From: test1@look.com
To: test2@look.com
Date: Mon, 25 Oct 2004 14:24:27 +0800
Subject: test mail
.

retr 1 ------------------------------------------------- 接收第 1 封邮件
+OK ---------------------------------------------------- 接收成功, 返回第 1 封邮件全部内容

Return-Path: <test1@look.com>
Delivered-To: test2@look.com
Received: (winmail server invoked for smtp delivery); Mon, 25 Oct 2004 14:24:27 +0800
From: test1@look.com
To: test2@look.com
Date: Mon, 25 Oct 2004 14:24:27 +0800
Subject: test mail

Hi, test2
This is a test mail, you don't reply it.

.
dele 1 ------------------------------------------------- 删除第 1 封邮件

+OK ---------------------------------------------------- 删除成功

dele 2 ------------------------------------------------- 删除第 2 封邮件

+OK ---------------------------------------------------- 删除成功

quit --------------------------------------------------- 结束会话

+OK ---------------------------------------------------- 执行命令成功

 

分享到:
评论

相关推荐

    邮件协议(POP3+SMTP)命令及响应码

    描述pop3和smtp的通信命令及各种响应码含义以及MIME的数据格式。

    smtp pop3 imap 邮件命令

    基于SMTP 的邮件截获与还原技术研究.pdf IMAP命令学习.doc pop3 smtp 指令.txt RFC3501中英文

    Email_Sys-master_smtp邮件发送黑白名单_

    数据部分:套接字操作部分:创建套接字、释放套接字、连接SMTP服务器、状态码检测、发送数据(3)POP3:功能:实现POP3协议中各种命令调用,接收邮件。数据部分:套接字、邮件类属性(包括邮件大小、主题、发送方等信息...

    10172911梁天一用Telnet命令收发邮件(SMTP和POP3协议)实验报告.docx

    10172911梁天一用Telnet命令收发邮件(SMTP和POP3协议)实验报告.docx

    用Telnet命令收发邮件(SMTP和POP3协议)实验报告.docx

    用Telnet命令收发邮件(SMTP和POP3协议)实验报告.docx

    c++《网络编程》pop3

    很多EMAIL系统都是使用SMTP协议来作为发送协议,而POP3协议来作为接受协议。关于这2个协议的许多资料,你可以看一下RCF821(关于SMTP的)和RCF1225(关于POP3...并且,该POP类使用的一些功能类似于POP3协议中的一些命令

    SMTP&POP3协议详细&MIME规范

    该压缩包包含三个文档,分别是SMTP协议详解,POP3协议详解,MIME规范详解,文档中详细介绍了一个邮件发送和接收的过程分析,协议本身的包含的命令和工作过程,为开发邮件代理的客户端提供技术基础。如下是部分SMTP...

    PHP邮件发送类SMTP

    它支持安全连接 使用SSL或TLS的后开始建立连接,连接超时,验证使用PHP SASL级(普通,登录,强加的MD5验证) ,提供的POP3面前的SMTP认证,并充分利用了扩展的SMTP流水线缓冲区SMTP命令,提供更快排队的邮件时,...

    基于C++(QT)编写 SMTP 服务器并观察通信过程【100012039】

    本程序编译环境是:Visual Studio 2012;系统环境是:Windows 8...响应客户SMTP命令,将命令的交互过程和收到的邮件显示到屏幕上 支持单用户 不保存和转发收到的邮件 不作错误处理 要求能显示客户端发送的图片。

    基于C/S的电子邮件简单收发系统设计与实现

    2.2.1 SMTP协议简介 2.2.2 SMTP的命令与应答 2.3 POP3协议 2.3.1 POP3协议简介 2.3.2 POP3的命令和应答 3 系统需求分析 3.1 功能需求 3.1.1 邮件发送需求 3.1.2 邮件接收需求 3.1.3 附加功能需求 3.2 研究...

    利用Wirshark抓包分析SMTP协议和POP3协议.rar

    内容齐全,包含抓包源文件,以及命令码、状态码、名词解释,和分析。

    邮件协议(SMTP&POP3&MIME)详解

    该压缩包包含三个文档,分别是SMTP协议详解,POP3协议详解,MIME协议详解,文档中详细介绍了一个邮件发送和接收的过程分析,协议本身的包含的命令和工作过程,为开发邮件代理的客户端提供技术基础。

    论文_邮件收发管理系统

    3.2.1 POP3 简介与命令 6 3.2.2 POP工作原理简介 7 4 RFC822(ARPA因特网文本信件格式的标准) 8 4.1 RFC822简单介绍 8 4.2 信件的头部 8 4.2.1 信头的一般格式 8 4.2.2 结构化字段和非结构化字段 9 4.2.3...

    网管面试常规问题

     3、 请写出下列服务使用的默认端口 pop3\smtp ,DNS ,windows远程终端 ,DHCP服务________. (本来想考netstat -an 命令的)    4、 你在局域网内想获得IP 192.168.1.2 的MAC,在XP系统的命令提示符中如何操作...

    技术网管面试题

    请写出下列服务使用的默认端口 pop3\smtp ,DNS ,windows远程终端 ,DHCP服务________.  4.你在局域网内想获得IP 192.168.1.2 的MAC,在XP系统的命令提示符中如何操作?(-------)  5.将FAT32转换为NTFS分区的...

    Email_My_PC:远程监控电脑,也许一切只需要一封邮件

    选择端口号大部分邮箱默认的不加密的端口号如下: POP3:110 SMTP:25 QQ邮箱的加密端口号: POP3:995 SMTP:465或587 163邮箱的加密端口号: POP3:995 SMTP:465或994其他邮箱具体的端口号请自行搜索。...

    【懒人】邮件收发beta1.2

    为了方便的查看懒人插件中邮件收发命令获取的内容制作本软件,也可作为邮件收发软件使用,用的上的同学收下吧。 貌似有很多不知道参数怎么填写的同志,简单说明一下。 用户名不需要"@邮箱" 发邮件时服务器一般是...

    curl命令详解.zip

    它可以执行各种 HTTP 操作,如 GET、POST、PUT、DELETE 等,并支持许多不同的协议,如 FTP、SMTP、POP3、IMAP 等。 总的来说,curl 命令是一个功能强大的工具,支持多种协议和功能,可以在命令行中完成常见的网络...

    南开大学《计算机应用基础》在线作业05.docx

    参考选项:C SMTP是_________邮件的协议,POP3是________邮件的协议。 A:多媒体 Web数据 B:文本 Web数据 C:多媒体 邮件 D:传输 接收 参考选项:D 在Word的编辑状态设置了标尺,可以同时显示水平标尺和垂直标尺的...

    nginx-1.6.3的windows版本软件下载.txt

    相信很多读者都对Apache非常熟悉,与Apache类似,Nginx是一款高性能的HTTP和反向代理服务器软件,也是一个 IMAP/POP3/SMTP 代理服务器。Nginx(发音是“engine x”)由俄罗斯的程序设计师Igor Sysoev所开发(Igor将...

Global site tag (gtag.js) - Google Analytics