SMTP POP3技术

SMTP:

(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,我们就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转你发出的电子邮件。

  SMTP 是一种提供可靠且有效电子邮件传输的协议。 SMTP 是建模在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。

  SMTP 独立于特定的传输子系统,且只需要可靠有序的数据流信道支持。 SMTP 重要特性之一是其能跨越网络传输邮件,即“ SMTP 邮件中继”。通常,一个网络可以由公用互联网上 TCP 可相互访问的主机、防火墙分隔的 TCP/IP 网络上 TCP 可相互访问的主机,及其它 LAN/WAN 中的主机利用非 TCP 传输层协议组成。使用 SMTP ,可实现相同网络上处理机之间的邮件传输,也可通过中继器或网关实现某处理机与其它网络之间的邮件传输。

  在这种方式下,邮件的发送可能经过从发送端到接收端路径上的大量中间中继器或网关主机。域名服务系统(DNS)的邮件交换服务器可以用来识别出传输邮件的下一个 IP 地址,在传输文件过程中使用25号端口。

 

ESMTP:
(Extended SMTP),顾名思义,扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与 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 的邮件服务器IP是192.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@163.com> ------------------------------ mail from 地址 test1@163.com
250 ok ----------------------------------------------------- 命令执行成功
rcpt to: <test2@163.com> -------------------------------- 递送给地址 test2@163.com
250 ok ----------------------------------------------------- 命令执行成功
data ------------------------------------------------------- 数据传输初始化
354 go ahead ----------------------------------------------- 开始传输数据
From: test1@163.com
To: test2@163.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:

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

  是TCP/IP协议族中的一员,POP3 服务所用的端口为110,由RFC 1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件

 

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@163.com>
Delivered-To: test2@163.com
Received: (winmail server invoked for smtp delivery); Mon, 25 Oct 2004 14:24:27 +0800
From: test1@163.com
To: test2@163.com
Date: Mon, 25 Oct 2004 14:24:27 +0800
Subject: test mail
.
retr 1 ------------------------------------------------- 接收第 1 封邮件
+OK ---------------------------------------------------- 接收成功, 返回第 1 封邮件全部内容
Return-Path: <test1@163.com>
Delivered-To: test2@163.com
Received: (winmail server invoked for smtp delivery); Mon, 25 Oct 2004 14:24:27 +0800
From: test1@163.com
To: test2@163.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 ---------------------------------------------------- 执行命令成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值