首页 > 编程知识 正文

smtp服务器指的是,smtp简单邮件传输协议

时间:2023-05-06 18:00:24 阅读:149220 作者:2517

SMTP是什么样的电子邮件? 异步通信介质。 这意味着发送邮件时不需要与他人的计划进行协调。

互联网电子邮件系统整体由三部分组成。 用户代理、邮件服务器、简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)其中,用户代理能够阅读、回复、转发、存储和写入消息。 典型的电子邮件用户代理包括微软的Outlook和苹果邮件。 邮件服务器是电子邮件体系结构的核心,邮件服务器是管理用户邮箱和运行SMTP的客户端和服务器端。

那么,什么是简单邮件传输协议(SMTP )?

协议定义了在两个或多个通信实体之间交换的消息的格式和顺序以及消息发送或消息接收或其他事件所采取的行为。 SMTP是从源地址向目标地址发送邮件的方式规则,控制侧系统发送邮件的方式。

很容易理解SMTP是互联网电子邮件的核心。 SMTP用于从发送方邮件服务器到接收方邮件服务器。 有趣的是,在SMTP中,即使在地球两端的两个邮件服务器上,也很少使用中间邮件服务器发送邮件。

互联网电子邮件系统总体说明:

是邮件发送过程的典型邮件发送过程。 它从发送方的用户代理开始,然后发送到发送方的邮件服务器,再发送到接收方的邮件服务器,在此处分发到接收方的邮箱。

简单说明邮件发送的整个过程。

1 .发送方睡着的鱼调用用户代理,提供接收方勤奋凉面的邮件地址,写下发送给用户代理的消息,然后指示用户代理发送消息。

2 .用户代理将昏迷鱼写的消息发送到昏迷鱼的邮件服务器,消息到达邮件服务器后发布到消息队列。

3、当运行鱼邮件服务器的SMTP客户端发现保温队列中的此消息时,创建与运行勤奋凉面邮件服务器的SMTP服务器的TCP连接。

4、经由SMTP握手,SMTP客户端通过TCP连接发送消息。

5、在勤奋凉面的邮件服务器上,当SMTP服务器收到消息时,邮件服务器会将消息放入勤奋凉面的邮箱中。

6、勤奋凉面空闲时查看短信时会呼叫用户代理查询短信。

(第一次接触有点难理解,结合自己发送邮件的过程更容易理解) )

在此过程中,SMTP使用一些命令和响应来传输消息。

常见的SMTP命令:

命令说明HELO和服务器的确认,并通知该客户端要使用的计算机名称。 普通邮件服务器使用AUTH LOGIN登录服务器,而不限制AUTH,以验证邮件发件人信息。 与认证信息不同,经常被定位为垃圾邮件或恶意邮件的RCPT TO收件人地址DATA输入邮件基本信息FROM邮件基本信息:发送者显示信息(这里可以伪装身份,但是非常容易识别) TO邮件基本信息)服务器收件人显示信息SUBJECT

返回代码说明220服务准备完成250请求操作成功完成235认证在221处理中开始发送354,与data指令组合,经常不能用500指令错误550指令执行消息的格式化

消息有两部分,恰当的表达是信封和内容。

信封其实是SMTP命令。

内容、邮件消息对象的内容分为页眉和正文。

最初被理解为消息的记述信息,主体被理解为发送者向接收者传达的主要信息。

建立TCP连接后,将开始以下过程。 (上述传输过程的3 ) )。

C:或S:或更高版本的ASCII代码是客户端或服务器主机传递到TCP套接字的行的内容。

s :220 hamburger.educ : helo crepes.FRS :250 hello crepes.fr, pleasedtomeetyouc : mail from : yxdbydcrepes.FRS :250 yx dby @ crepes.fr . sender OKC : rcpt to 3360 bob @ hamburger . datas:354entermail,end with '.' onalinebyitselfc 3360 doyoulikeketchup? C: How about pickles? c :s 3360250 messageacceptedfordeliveryc : quits 3360221 hamburger.educlosingconnection http://ww.Sina.com /

SMTP握手

1 .利用客户端熟知的端口号25建立与服务器的TCP连接,SMTP服务器将响应代码220发回到客户端,并为客户端提供服务器的域名2 .客户端接收到响应代码后,hhtp 该客户端发送的HELO是用于向服务器提供客户端的识别信息的代码3 .服务器侧响应代码250,向客户端通知邮件服务会话的建立请求实现了邮件消息的制作和发送

1 .客户在“MAIL FROM”中向服务器报告呼叫者的电子邮件地址和域名2 .衣服

务器向客户回应应答码“250”,代表请求命令完成 3. 客户用“RCPT TO”命令向服务器报告收信人的邮箱与域名 4. 服务器向客户回应应答码“250”,代表请求命令完成 5. 客户用“DTAT”命令对报文的传送进行初始化 6. 服务器回应“354”,表示可以进行邮件输入了 7. 客户用连续的行向服务器传送报文的内容,每行以两字符的行结束标识(CR与LF)终止。报文以只有一个“.”的行结束 8. 服务器向客户回应应答码“250”,代表请求命令完成

终止SMTP会话

1.客户端发送“QUIT”命令 2.服务器收到命令后,回应应答码“221”,并结束会话 邮件访问协议

这时,信件已在接收方邮件服务器上的邮箱了,用户调用用户代理查看邮件报文时要用到邮件访问协议对邮件进行查阅。
流行的邮件访问协议有:第三版的邮局协议(Post Office Protocol --version 3 , POP3),因特网邮件访问协议(Internet Mail Access Protocol)和HTTP。
简述一下POP3。
POP3按照三个阶段进行工作:特许、事务处理以及更新。特许就是用户发送用户名和口令用以鉴别用户;事务处理就是取回报文,同时允许用户代理对报文做删除标记,取消报文删除标记以及获取邮件统计信息。更新就是用户发出QUIT命令结束POP3会话后邮件服务器删除被标记为删除的报文。
值得一提的是,使用POP3的用户代理可以被配置为“下载并删除”和“下载并保留”两种方式。诚心的电源,“下载并删除”就是调用用户代理下载并查看邮件之后将该邮件报文删除;而“下载并保留”则相反,下载并查看该邮件报文将继续保留在邮件服务器,可用不同的终端系统进行重复下载并查看该邮件报文。

POP3与IMAP最大的不同是,POP3只能通过下载邮件报文后在端系统本地对邮件报文进行移动或删除;而IMAP则提供了通过远程服务器上的文件夹对邮件报文进行移动并查看的指令。
HTTP邮件访问协议也不难理解,最大的特点就是它的用户代理就是普通的Web浏览器,用户代理和服务器之间的通信是通过HTTP进行的。

实验

1、使用Telnet与SMTP服务器进行一次直接对话
使用网易邮箱向QQ邮箱发送一封邮件,邮件内容为:
Hi,ROse.
How are you recently?

结束之后,QQ邮箱收到一封邮件。不信的话,你试试~

2、使用Telnet登录到POP3服务器110端口,发出指令访问邮件
使用QQ邮箱对网易邮箱发送一封邮件,接着使用Telnet登录到POP3服务器查看邮件内容。


对邮件内容的base64编码进行解码。

tips
1、获取base64编码

echo -n “待编码内容” |base64

2、获取base64编码的解码

echo “待解码的base64编码” |base64 -d

参考文章:
SMTP协议介绍

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。