smtp报文分析(25、465、587端口)

文章详细对比了使用curl命令通过SMTP的25、587和465端口发送邮件时的差异,强调了25和587端口需要startTLS加密,而465端口需启用SSL。并指出smtps协议在465端口上必须启用mail.smtp.ssl.enable参数以确保安全发送。
摘要由CSDN通过智能技术生成

对于用到的工具和对应的环境配置可以参见 smtp 抓包_Steven-Russell的博客-CSDN博客

25端口报文(仅支持smtp协议)

curl命令

curl --verbose -s --url 'smtp://smtp.qq.com:25' --ssl-reqd --cacert /root/qqmail.pem --mail-from 'xxxxxxxxx@qq.com' --mail-rcpt 'xxxxxxxxx@163.com' --upload-file /root/email.txt --user 'xxxxxxxxx@qq.com:xxxxxpasswaordxxxx'

tcpdump抓包

tcpdump host 120.241.186.196 -i ens33 -w qqmail_25_smtp.cap

 具体报文信息详见附件:https://download.csdn.net/download/weixin_43317111/87591832

 注意:25端口smtp进行邮件发送时,能够明显看到smtp建链过程

587端口报文(仅smtp协议)

curl命令:

curl --verbose -s --url 'smtp://smtp.qq.com:587' --ssl-reqd --cacert /root/qqmail.pem --mail-from 'xxxxxxxxx@qq.com' --mail-rcpt 'xxxxxxxxx@163.com' --upload-file /root/email.txt --user 'xxxxxxxxx@qq.com:xxxxxpasswaordxxxx'

tcpdump命令:

tcpdump host 120.241.186.196 -i ens33 -w qqmail_587_smtp.cap

 具体报文信息详见附件:

https://download.csdn.net/download/weixin_43317111/87591832

 注意:587端口smtp进行邮件发送时,能够明显看到smtp建链过程

465端口报文(仅smtps协议)

curl命令:

curl --verbose -s --url 'smtps://smtp.qq.com:465' --ssl-reqd --cacert /root/qqmail.pem --mail-from 'xxxxxxxxx@qq.com' --mail-rcpt 'xxxxxxxxx@163.com' --upload-file /root/email.txt --user 'xxxxxxxxx@qq.com:xxxxxpasswaordxxxx'

tcpdump命令:

tcpdump host 120.241.186.196 -i ens33 -w qqmail_465_smtps.cap

具体报文信息详见附件:https://download.csdn.net/download/weixin_43317111/87591832

 注意:465端口smtps进行邮件发送时,并不能直接看到smtp建链过程

经过分析学习发现:

1、smtp的25和587端口需要配合参数 mail.smtp.starttls.enable=true 从而达到报文加密的效果(主要是以来startTls命令),如果该参数为false,则会明文传输

2、465作为smtps的端口,需要配合参数 mail.smtp.ssl.enable=true,进行使用达到报文加密的效果

注意:

1、 smtps协议必须要参数 mail.smtp.ssl.enable=true,否则无法正常发送邮件,最终会导致超时,参看 ​​​​​​smtp 通过465端口发送邮件失败_Steven-Russell的博客-CSDN博客2

2、smtp的25和587无法使用 参数 mail.smtp.ssl.enable=true

Wireshark是一款流行的网络协议分析工具,它结合了Ethereal Sniffer Pro (Wireshark的一个增强版) 的功能,用于捕获、查看和分析网络数据包。当你使用Wireshark + ENSP一起工作时,可以按以下步骤解析报文格式: 1. **安装与配置**: - 安装Wireshark:从官方网站下载适用于你的操作系统的版本,并进行安装。 - 安装ENSP(Enhanced Network Security Project)插件,这能提供对更多硬件的支持和更高级的功能。 2. **捕获数据包**: - 连接到网络设备(如网卡)或使用模拟适配器(如Loopback或虚拟机桥接),然后启动捕获过程。 - 使用Wireshark的过滤器选项,可以根据IP地址、端口等信息筛选特定的流量。 3. **解读报文**: - 报文显示在Wireshark的"Packet List"或"Protocol Hierarchy"视图中,每个数据包有详细的上下文信息,包括源和目标地址、协议头、时间戳以及数据部分。 - 每个协议头部通常包含字段如源端口、目的端口、长度、类型等,帮助理解通信内容。 4. **分析TCP/IP层**: - TCP/IP分层模型(应用层、传输层、网络层和链路层)清晰可见,你可以看到各个协议如HTTP、SMTP、FTP等的工作情况。 - 使用"Follow TCP Stream"或类似功能,可以看到应用层的明文数据,如HTTP请求和响应等。 5. **解码报文**: - Wireshark内建了很多协议的解析模块,可以自动解码各种常见的协议,如DNS、HTTP、HTTPS等。 - 对于未知的协议,可以使用"Decode As"功能手动选择解析算法,或者通过添加自定义的 dissector 插件来进行处理。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值