smtp协议的简单利用

一、smtp协议的简单介绍
    1. 名字:简单邮件传输协议
    2. 作用:发送邮件(C/S模式)

二、 一个交换邮件报文的例子
    C:client  S:server
  1. S: 220 hamburger.edu
  2. C: HELO crepes.fr
  3. S: 250 Hello crepes.fr, pleased to meet you
  4. C: MAIL FROM:<alice@crepes.fr>
  5. S: 250 alice@crepes.fr … Sender ok
  6. C: RCPT TO:bob@hamburger.edu
  7. S: 250 bob@hamburger.edu … Recipient OK
  8. C: DATA
  9. S: 354 Enter mail, end with “.” on a line by itself
  10. C: Do you like ketchup?
  11. C: How about pickles?
  12. C: .
  13. S: 250 Message accepted for delivery
  14. C: QUIT
  15. S: 221 hamburger.edu closing connection
三、telnet模拟smtp协议发送邮件
   一般的smtp邮件服务器域名都是smtp.xxx.xxx,比如QQ邮箱的smtp服务器是smtp.qq.com,126邮箱是smtp.126.com,少部分比较特殊,比如hust邮箱的smtp服务器竟然是mail.hust.edu.cn。。这里以QQ邮箱为例
    第一步是这条命令:“telnet smtp.qq.com 25”,smtp服务的默认端口是25
    接下来看图说话吧 
 
    本地命令顺序依次为

点击(此处)折叠或打开

  1. helo localhost
  2. (服务器回复)
  3. auth login
  4. (服务器回复)
  5. 经base64编码后的你的邮箱用户名
  6. (服务器回复)
  7. 经base64编码后的你的邮箱密码
  8. (服务器回复)
  9. MAIL FROM:<1581765585@qq.com>
  10. (服务器回复)
  11. RCPT TO:<1223292709@qq.com>
  12. (服务器回复)
  13. DATA
  14. From:wmlhust@126.com
  15. To:1581765585@qq.com
  16. Subject:this is the subject

  17. this is the content of the mail

  18. .
  19. (服务器回复)
效果如何呢,且看我邮箱截图

由于我刚才一不小心,把data里面的from项写错了,而我登录又是用1581765585@qq.com这个邮箱,这两个不一致,所以才会出现发件人第二行的“由......代发”这一句。如果两者一致,就不存在代发的问题,也就不会有这一句提示。还有需要注意的是,data的格式一定要按照图示的,主题(subject)和邮件正文之间有个空行。。还有最后邮件内容结束是通过判断这个标志“回车换行+小数点+回车换行”来结束的。

最后切断与smtp服务器之间的连接用QUIT这个命令,刚才忘加了。。OK,这个过程就算结束了,多折腾吧。

补充一下服务器返回代码代表的含义

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值