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

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

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

curl命令

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

tcpdump抓包

tcpdump host 120.241.186.196 -i ens33 -w qqmail_25_smtp.cap

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

smtp报文分析(25、465、587端口)_第1张图片

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

587端口报文(仅smtp协议)

curl命令:

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

tcpdump命令:

tcpdump host 120.241.186.196 -i ens33 -w qqmail_587_smtp.cap

 具体报文信息详见附件:

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

smtp报文分析(25、465、587端口)_第2张图片

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

465端口报文(仅smtps协议)

curl命令:

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

tcpdump命令:

tcpdump host 120.241.186.196 -i ens33 -w qqmail_465_smtps.cap

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

smtp报文分析(25、465、587端口)_第3张图片

 注意: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

你可能感兴趣的:(网络,服务器,运维)