SMTP-POP3协议简介以及使用Telnet客户端收/发邮件(163邮箱)
每篇一句:
It is not our abilities that show what we truly are, it is our choices.
SMTP-POP3协议简介:
SMTP:
简单邮件传输协议,全称:
Simple Mail Transfer Protocol
。SMTP是因特网电子邮件中主要的应用层协议,使用TCP可靠数据传输服务,用于将邮件从发送方的用户代理发送到发送方的邮件服务器,以及将邮件从发送方的邮件服务器发送到接收方的邮件服务器。是一种“推协议”。特点:
- 限制所有邮件报文的文体部分,不只是其首部,只能采用简单的7比特ASCII表示。如果要传输多媒体数据,需要先编码为ASCII编码。(20世纪80年代早期,传输能力不足)
- SMTP一般不使用中间邮件服务器发送邮件,即使这两个邮件服务器位于地球两端。
C-S交互:
SMTP默认使用25端口。首先客户SMTP(C)在25端口建立一个到服务器SMTP(S)的TCP连接。如果服务器没有开机,客户会在稍后继续尝试连接。一旦连接建立,服务器和客户执行某些应用层的握手,SMTP的客户和服务器在传输信息前先相互介绍。在SMTP握手的阶段,SMTP客户说明发送方的邮件地址和接收方的邮件地址。一旦该SMTP客户端和服务器彼此介绍后,客户开始发送报文。该客户如果有另外的报文要发送到此服务器,就在该相同的TCP连接上重复处理。
常用命令:
helo
:向服务器介绍自己auth login
:登录,之后会输入用户名以及密码(base64格式)mail from
: 说明发件方rcpt to
: 说明收件方data
: 之后会提示你输入邮件信息,以"CRLF.CRLF"
结束。quit
: 断开连接
POP3:
第三版的邮局协议,全称:
Post Office Protocol -- Version3
。POP3是一种极为简单的邮件访问协议,同样基于TCP,用于将邮件从接收方的邮件服务器传送到接收方的用户代理。是一种“拉协议”。C-S交互:
POP3默认使用110端口。首先用户代理(客户C)建立了一个到邮件服务器110端口的TCP连接,然后POP3按照三个阶段进行工作:特许(authorization),事务处理以及更新。在第一个阶段即特许阶段,用户代理以名文发送用户名和口令鉴别用户。在第二个阶段即事务处理阶段,用户可以进行以下操作:取回邮件、对邮件做删除标记、取消邮件删除标记、获取邮件的统计信息。在第三个阶段即更新阶段,出现在客户发出了
"quit"
命令之后,结束这次POP3回话。这时,邮件服务器才会删除那些被标记为删除的邮件。常用命令:
user
: 输入用户名pass
: 输入密码list
: 返回关于邮箱的统计:邮件总数、总字节数以及每个邮件的大小list index
: 返回关于第index邮件的统计:总字节数stat
: 返回关于邮箱的统计:邮件总数和总字节数retr index
: 返回第index邮件的内容,以"CRLF.CRLF"
表示邮件结束。dele index
: 对第index邮件加删除标记rset
: 重置所有标记为删除的邮件,用于撤消dele命令quit
: 退出,会执行删除操作
使用Telnet客户端连接163邮箱,收/发邮件
在开始之前,请确认你的163邮箱账户开启了
SMTP/POP
服务,并且开启设置了“授权码”:- 开启SMTP/POP服务:
- 授权码:
提前说明:以下内容中,‘c:’代表客户端输入,’s:’ 代表服务器返回,在Telnet客户端并不显示。
连接163的SMTP服务器发送邮件:
C: telnet smtp.163.com 25 S: 220 163.com Anti-spam GT for Coremail System (163com[20141201]) C: helo localhost # helo 后跟的字符可以随意 S: 250 OK C: auth login S: 334 dXNlcm5hbWU6 C: MTg1Nz****5Njk= # 用户名(不包含@163.com这些), base64编码格式 S: 334 UGFzc3dvcmQ6 C: TGluY***OTk3 # 授权码(注意不是登录时的密码,而是授权码),base64编码格式 S: 235 Authentication successful C: mail from: <185****0969@163.com> # 发送邮件的地址(必须是刚才登录的账户) S: 250 Mail OK C: rcpt to: <143***2536@qq.com> # 目标地址 S: 250 Mail OK C: data # 告知服务器要输入邮件内容 S: 354 End data with <CR><LF>.<CR><LF> C: # 发送给qq邮箱的话,最好包含from、to以及subject,不然可能会拒收 from:185****0969@163.com to:143***2536@qq.com subject:hellohello . S: 250 Mail OK queued as smtp7,C8CowADXW6cjR+Faq3JqQw--.57969S2 1524713356 C: quit S: 221 bye
检查对应QQ邮件的收件箱(或垃圾箱),证明邮件发送成功。
连接163的pop服务器接收邮件:
C: telnet pop.163.com 110 S: +OK Welcome to coremail Mail Pop3 Server (163coms[b62aaa251425b4be4eaec4ab4744cf47s]) C: user 185****0969@163.com # 用户名 S: +OK core mail C: pass L********7 # 授权码 S: +OK 5 message(s) [27351 byte(s)] # 含义:共五个邮件,共27351bytes大小 C: stat S: +OK 5 27351 C: list S: # 邮件的统计信息,以"."结束 +OK 5 27351 1 2731 2 3393 3 7339 4 3305 5 10583 . C: list 1 S: +OK 1 2731 # 第一个邮件的信息 C: retr 1 S: # 第一个邮件的内容 +OK 2731 octets ***** . C: dele 1 # 对第一个邮件添加删除标记 S: +OK core mail C: rset # 重置所有标记为删除的邮件,撤消dele命令 S: +OK core mail C: quit # 退出服务器 S: +OK core mail
特别需要注意的是:
mail from
与rcpt to
命令中“:
”前无空格,后加一个空格再接其他信息。所有命令以及数据最好一次输入正确,不要有任何修改,否则可能会报
502 Error: command not implemented
或500 Error: bad syntax
的错误。- 确认命令输入无误,还是报错,请再次尝试,可能是服务器较为繁忙。
参考资料:
- 计算机网络-自顶向下方法(原书第六版)
如果本文有什么错误或不足之处,欢迎指出。
SMTP-POP3协议简介以及使用Telnet客户端收/发邮件(163邮箱)相关推荐
- 如何开启outlook邮箱的pop3和smtp_怎么在电子邮件客户端上登录腾讯邮箱(QQ邮箱 )?
常见的电子邮箱客户端:Foxmail.网易邮箱大师.Thunderbird.Outlook.Dreammail(DM Pro),这些客户端皆可添加腾讯邮箱(QQ邮箱 ). 本文以为畅邮(DM Pro) ...
- 【win10邮件客户端 设置QQ和163邮箱】
@TOC 一.进入QQ邮箱网站 设置 账户 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启全部服务,复制生成的授权码 二.进入win10邮件客户端 新建账户 其 ...
- 控制飞书客户端自动发邮件
自动化飞书邮箱网页版应该有不少例子,可以使用Clicknium.Selenium,Playwright这些工具实现.这次使用[Clicknium](https://www.clicknium.com/ ...
- SMTP/POP3协议
SMTP发件,pop3收件 SMTP工作原理 一.电子邮件从客户机传输到服务器:二从某一个服务器传输到另一个服务器.SMTP也是个请求/相应协议,命令和相应都是基于ASCII文本,并以CR和LF符结束 ...
- pop3 postfix 命令_Email基础知识: SMTP/POP3 命令简介
telnet 192.168.0.1 25 --------------------------------------- 使用 telnet 命令连接服务器 25 端口 Trying 192.168 ...
- java smtp.126.com_Java Mail---SMTP、POP3协议-DOS下手动收发邮件演示过程
转载请注明出处: http://blog.csdn.net/qq_26525215 本文源自 E-Mail协议简介: 邮件服务器,按照提供的服务类型,可以分为发送邮件的服务器我接收邮件的服务器. 发送 ...
- 邮件协议SMTP/POP3/IMAP——应用层
一.SMTP协议 1.SMTP协议简介 SMTP称为简单邮件传输协议(Simple Mail Transfer Protocal),目标是向用户提供高效.可靠的邮件传输.它的一个重要特点是它能够在传送 ...
- SMTP协议:使用telnet发邮件【纯纯小白】
下周开始要给学生讲网络协议,那自己先得学会. 为了更好地理解SMTP协议,我进行了使用telnet命令发送邮件的体验,这也是我第一次学习使用telnet命令. 收到了很多次错误响应码后,终于成功了.下 ...
- SMTP协议及POP3协议-邮件发送和接收原理(转)
本文转自https://blog.csdn.net/qq_15646957/article/details/52544099 感谢作者 一. 邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 ...
最新文章
- html 怎么播放avi视频,iPhone4S视频格式播放巧用苹果转换器
- 不用vim-airline/lightline.vim, 如何使用纯手工制作一个漂亮的 vim 状态栏
- tableau实战系列(三十四)-教你如何在tableau中实现3D效果作图
- 利用UDP19端口实施DOS攻击的真实案例
- 每个[NET]开发人员现在应该下载的十种必备工具
- Raspkate - 基于.NET的可运行于树莓派的轻量型Web服务器
- js中判断数组中是否包含某元素的方法
- javascript的概述
- 基于Proteus无实物STM32入门自学教程(三)--静态数码管
- TCP Socket通信详细过程
- 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标
- 匈奴国王阿提拉:令整个欧洲发抖的上帝之鞭
- 王浩:哥德尔思想概说
- 无线传感网络在医疗领域的应用
- 可视门铃全国产化电子元件推荐方案
- p82 红蓝对抗-蓝队atckDs蜜罐威胁情报
- SpringBoot集成百度AI实现人脸识别
- 别焦虑了,这才是中国各行业平均工资的真相
- Android第三方开源下拉框:NiceSpinner
- 搜索历史记录流式布局展示