登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> SoftHub关联区 >> 主题: [rfc]imap协议的简单测试     [回主站]     [分站链接]
[rfc]imap协议的简单测试
clq
浏览(41) - 2024-03-19 14:49:20 发表 编辑

关键字:

[rfc]imap协议的简单测试

https://www.jianshu.com/p/1797d82c1afe
https://blog.csdn.net/u014608280/article/details/88536891

协议外要注意的一些事情是:默认的 143 端口功能限制了的,例如 imap.163.com 。
实用的话要用 993 的 tls 端口。所以不能用 telnet 测试,要用 openssl 。

--------------------------------------------------------

IMAP 协议介绍

IMAP协议, Internet Mail Access Protocal (交互式邮件访问协议),是一个应用层协议(端口是143)。IMAP协议比POP3协议复杂的多,也是按照C/S的工作方式,现在较新的版本是IMAP4。

与POP3协议类似,IMAP也是提供面向用户的邮件收取服务。常用的版本是IMAP4。IMAP4改进了POP3的不足,用户可以通过浏览信件头来决定是否收取、删除和检索邮件的特定部分,还可以在服务器上创建或更改文件夹或邮箱,它除了支持POP3协议的脱机操作模式 外,还支持联机操作和断连接操作。它为用户提供了有选择的从邮件服务器接收邮件的功能、基于服务器的信息处理功能和共享信箱功能。IMAP4的脱机模式不同于POP3,它不会自动删除在邮件服务器上已取出的邮件,其联机模式和断连接模式也是将邮件服务器作为“远程文件服务器”进行访问,更加灵活方便。目前只使用POP3协议的邮箱已经很少了,主流是IMAP,故本系列文章也主要以介绍IMAP协议为主。

imap同样也是直接可以用命令行登录的,下面我们来测试一下,因为目前主流邮件服务商都已经禁用了非安全的143端口,我们直接通过 tls 端口 993 来登录,需要输入的命令行后面添加了注释:
openssl s_client -connect imap.abc.mail:993 -crlf -ign_eof
a login foobar password //输入用户名密码,每个命令前要输入一个 a 作为开始
* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT LIST-EXTENDED LIST-STATUS LITERAL- SPECIAL-USE APPENDLIMIT=35651584
a OK foorbar@abc.mail authenticated (Success)
a list "" * //列出所有的邮箱
* LIST (\HasNoChildren) "/" "Call log"
* LIST (\HasNoChildren) "/" "INBOX"
* LIST (\HasNoChildren) "/" "Notes"
* LIST (\HasNoChildren) "/" "SMS"
* LIST (\HasNoChildren) "/" "Sent"
a OK Success
a select inbox //选择inbox收件箱
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen $Forwarded $NotPhishing $Phishing Old)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen $Forwarded $NotPhishing $Phishing Old \*)] Flags permitted.
* OK [UIDVALIDITY 5] UIDs valid.
* 6901 EXISTS
* 0 RECENT
* OK [UIDNEXT 6934] Predicted next UID.
* OK [HIGHESTMODSEQ 463331]
a OK [READ-WRITE] inbox selected. (Success)

上述命令使用用户名+专用密码登录,列出邮箱列表,并选择了inbox邮件箱。imap 命令比较多,这里就不一一列举了,详细命令可参考附件列表里的资料。smtp和imap的telnet(openssl)命令都非常重要,需要熟练掌握,这是我们后续自建服务器进行调试的重要手段。
关于端口号

从上面的介绍大家也可以看出来,由于电子邮件存在的历史非常长,使用的端口号也经历了不少阶段,导致看起来有些混乱。最早大家都是明文传输,smtp使用25,imap使用143,还比较清楚。后来随着互联网的发展,大家意识到不能在网上裸奔了,加密很重要,于是诞生了smtps(465),imaps(993),这两个端口使用的是ssl协议。再后来ssl协议也被淘汰了,取而代之的是tls协议,配套开发了starttls协议,可以复用原来的明文端口,即可以先连接smtp的25端口,根据服务端是否支持starttls,再判断是否启用加密连接,相对更加灵活。同时,由于25端口被客户端广泛用于发送垃圾邮件,所以客户端(MUA)的starttls端口被定义成了587端口。再后来,大家又觉得其实端口不是重点,tls加密才是最重要的,所以现在的465和993都是同时支持ssl/tls的(ssl基本已不再使用),不管使用starttls还是普通tls,加密级别和安全性都是一样的。




总数:0 页次:1/0 首页 尾页  
总数:0 页次:1/0 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1