开启 SMTP 发信功能
您需要先开启 SMTP 发信功能才能通过 SMTP 接口发送邮件。
- 登录 邮件推送控制台。
- 单击左侧导航栏中 [backcolor=transparent]发信地址,进入发信地址页面。
- 在发信地址列表中,找到您要开启 SMTP 发信功能的发信地址,在对应的操作栏中单击 [backcolor=transparent]设置 SMTP 密码。
- 在弹出对话框中填写 SMTP 密码,然后单击 [backcolor=transparent]确定。
SMTP 发信方法
SMTP 协议是一个简单的邮件传输协议,利用它您可以将邮件发送给别人。此协议使用命令和应答在客户端与服务器之间传输报文。即客户端发出一个命令,服务器返回一个应答。发送方与接收方进行一问一答的交互,由发送方控制这个对话。
目前最新的 SMTP RFC 协议是
RFC5321 。
使用 SMTP 协议的邮件服务器分为两种:
- 一种为邮件发送服务器,通常叫做 smtpd,需要发件人进行认证。
- 一种为邮件接收服务器,通常叫做 mx,接收外部运营商用户投递给本地用户的邮件。
阿里云邮件推送的邮件服务器为 smtpd,所以需要进行用户认证(要求认证用户名和发件人必须一致),认证用户名(就是发件人)和密码可以通过控制台进行设置。
[font=PingFangSC, 'helvetica neue', 'hiragino sans gb', arial, 'microsoft yahei ui', 'microsoft yahei', simsun, sans-serif]程序中调用 SMTP 发送邮件可以使用各种语言的 SMTP Library。详细参考,请见
SMTP 调用示例
[font=PingFangSC, 'helvetica neue', 'hiragino sans gb', arial, 'microsoft yahei ui', 'microsoft yahei', simsun, sans-serif]。
通过 SMTP 协议发送邮件的整体过程如下:
- 客户端使用 telnet 命令连接到SMTP服务器,建立会话。
- 客户端发送一个 HELO 或 EHLO 命令。
- 客户端发送一个 AUTH 认证命令进行用户登录(使用 smtpd 方式)。
- 客户端发送一个 MAIL 命令指定发件人。
- 客户端发送一个 RCPT 命令指定收件人。
- 客户端发送一个 DATA 命令准备输入邮件正文。
- 客户端发送一个 . 命令(点命令)表示 DATA 命令结束。
- 客户端发送一个 QUIT 命令结束会话。
示例
为帮助您熟悉使用 SMTP 协议发送邮件的流程,提供以下 telnet 命令会话过程示例,来描述 SMTP 命令会话过程。
[backcolor=transparent]备注:其中 S 代表服务器,C 代表客户端。可以使用 Linux 命令 echo -n Content|base64 进行 base64 编码。