SMTP 协议发送邮件的整体过程

使用 SMTP 发送邮件_使用 SMTP 发送邮件_发送邮件_用户指南_邮件推送-阿里云 https://help.aliyun.com/knowledge_detail/51622.html

通过 SMTP 协议发送邮件的整体过程如下:

  1. 客户端使用 telnet 命令连接到SMTP服务器,建立会话。
  2. 客户端发送一个 HELO 或 EHLO 命令。
  3. 客户端发送一个 AUTH 认证命令进行用户登录(使用 smtpd 方式)。
  4. 客户端发送一个 MAIL 命令指定发件人。
  5. 客户端发送一个 RCPT 命令指定收件人。
  6. 客户端发送一个 DATA 命令准备输入邮件正文。
  7. 客户端发送一个 . 命令(点命令)表示 DATA 命令结束。
  8. 客户端发送一个 QUIT 命令结束会话。

示例

为帮助您熟悉使用 SMTP 协议发送邮件的流程,提供以下 telnet 命令会话过程示例,来描述 SMTP 命令会话过程。

备注:其中 S 代表服务器,C 代表客户端。可以使用 Linux 命令 echo -n Content|base64 进行 base64 编码。

  1. $telnet smtpdm.aliyun.com 25
  2. S:220 smtp.aliyun-inc.com MX AliMailServer(127.0.0.1)
  3. C:EHLO test.com
  4. S:250-smtp.aliyun-inc.com
  5. S:250-8BITMIME
  6. S:250-AUTH=PLAIN LOGIN XALIOAUTH
  7. S:250-AUTH PLAIN LOGIN XALIOAUTH
  8. S:250-PIPELINING
  9. S:250 DSN
  10. C:AUTH LOGIN
  11. S:334 dXNlcm5hbWU6
  12. C:dGVzdEB0ZXN0LmNvbQ==备注:用户名test@test.com的base64编码
  13. S:334UGFzc3dvcmQ6
  14. C:dGVzdA==备注:用户密码test的base64编码
  15. S:235Authentication successful
  16. C:MAIL FROM:<test@test.com>备注:注意用<>将发件人扩起来
  17. S:250MailOk
  18. C:RCPT TO:<test@test.com>
  19. S:250RcptOk
  20. C:DATA
  21. S:354End data with<CR><LF>.<CR><LF>
  22. C:subject: test
  23. C:from:<test@test.com>
  24. C:to:<test@test.com>
  25. C:
  26. C:test
  27. C:.
  28. S:DataOk: queued as freedom ###envid=148316944
  29. C:QUIT
  30. S:221Bye

原文地址:https://www.cnblogs.com/yuanjiangw/p/12590037.html

时间: 2024-08-25 05:22:39

SMTP 协议发送邮件的整体过程的相关文章

Java通过socket实现smtp协议发送邮件

import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.net.Socket;import java.net.UnknownHostException; import com.sun.org.apache.xerces.internal.impl.dv.util.Base64; /** 

20150307 利用smtp协议发送邮件

20150307 利用smtp协议发送邮件 2015-03-07 Lover雪儿 一.smtp匿名发邮件 ? Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. ? C:\Users\Administrator>nslookup -q=mx qq.com Server: XiaoQiang Address: 192.168.31.1 ? Non-au

通过telnet使用smtp协议发送邮件

smtp协议是一个简单的邮件传输协议,利用它我们可以将邮件发送给别人,这里将通过telnet这个程序利用smtp协议从网易向gmail发送一封邮件 网上不少有说使用telnet发送邮件的文章,我也看过了,多数的步骤是这样的 1.使用telnet连接smtp服务器2.发送一个helo或者ehlo指令3.验证用户(使用邮件名登陆)4.使用mail命令准备发送邮件5.使用rcpt命令指定对方邮箱地址6.使用data命令开始输入内容7.输入test或者hello world类似字样(即邮件内容)8.输入

QTP使用Smtp协议发送邮件

NameSpace = "http://schemas.microsoft.com/cdo/configuration/"   Set Email = CreateObject("CDO.Message")   Email.From = "[email protected]"   Email.To = "[email protected]"   Email.CC = ""   Email.Subject =

linux服务之邮件-smtp协议

yum install nc nc用来取代telnet 这里我们希望让大家知道网络协议中的一个经验:参数越多,死得越快:参数越少,越能持久.参数太多了,根本不利于使用,无法推广,早晚会被别的协议取代.这也符合科学的基础原理,简单. smtp协议SMTP也是个请求/响应协议,命令和响应都是基于ASCⅡ文本,并以CR和LF符结束.响应包括一个表示返回状态的三位数字代码.SMTP在TCP协议25号端口监听连续请求.由于这个协议开始是基于纯ASCⅡ文本的,在二进制文件上处理得并不好.后来开发了用来编码二

Smtp协议与Pop3协议的简单实现

前言 本文主要介绍smtp与pop3协议的原理,后面会附上对其的简单封装与实现. smtp协议对应的RFC文档为:RFC821 smtp协议 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式.SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地.通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟.SMTP服务

SMTP协议及POP3协议-邮件发送和接收原理(转)

本文转自https://blog.csdn.net/qq_15646957/article/details/52544099 感谢作者 一. 邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器.例如现在Internet很多提供邮件服务的厂商:sina.sohu.163等等他们都有自己的邮件服务器. 这些邮件服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中. 电子邮箱(E

SMTP协议--在cmd下利用bat命令行发送邮件

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议 选择‘开始’-‘运行’,输入cmd,进入命令提示符窗口. Windows7默认没有开始Telnet服务,请在运行窗口中输入 sc start TlntSvr 开启Telnet服务! 第一步,远程登录smtp服务器 在命令行窗口输入 telnet smtp.qq.com 25   然后回车 (此处以QQ邮箱为例,163邮箱可输入smtp.163.com .25表示建立连接的端口号) SMTP协议--在cmd下

SMTP协议分析

SMTP协议分析 第1章.     SMTP概述 1.1.  SMTP在邮件通信中的位置 SMTP,即简单邮件传送协议,所相应RFC文档为RFC821.同http等多数应用层协议一样,它工作在C/S模式下,用来实现因特网上的邮件传送.SMTP在整个电子邮件通信中所处的位置如图 1所看到的. 图 1电子邮件的通信过程 能够看出,SMTP是用来将客户机上的邮件传送到server上.这里的客户机是指某次连接中的发送方,server是指对应的接收方.在解说发送邮件的整个通信过程前,先解释一以下几个术语.