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

先简单介绍下smtp服务器

smtp使用命令和应答在客户与服务器之间传输报文。即客户发出一个命令,服务器返回一个应答。发送方与接收方进行一问一答的交互,由发送方控制这个对话。编码

首先,‘开始’-‘运行’,输入cmd,进入命令提示符窗口。spa

1、远程登陆smtp服务器 在命令行窗口输入 telnet qq.163.com 25 而后回车(这里用的QQ邮箱服务器,端口号是25)命令行

而后窗口会返回一个信息,各个邮箱是不一样的cmd

2、用户登录it

输入 helo qq.com 回车,这是向服务器代表你的用户身份:服务器会返回代码 250表示服务器承认你的身份登录

(注意:此时的字母是不能输错的,由于你的每一次按键实际上已经被传送到服务器,因此输入错误时不能使用退格键删除,只能换行从新输入)密码

输入 auth login 回车,这是告诉服务器你要输入用户名了(即登陆邮箱时的用户名),服务器将返回一个确认信息334 。qq

接着输入用户名和密码(就是qq邮箱名和qq密码,可是必须通过Base64编码服务器才能识别)英文

输入用户名  回车 服务器返回 334

输入密码     回车 服务器返回 235登录成功

3、写邮件

输入 mail from:< > 回车 <>中填写发件人的邮箱,即你本身的邮箱名

输入 rcpt to:< > 回车 <>中填入收件人的邮箱(这里邮箱名不用Base64编码的)

输入 data 回车 ,服务器返回:354 End data with <CR><LF>.<CR><LF>意思是连续两次回车后结束

下面是data下的可选项:

输入 from:发件人名称 ,此项可任意填入,将显示在收件箱的‘发件人’一栏

输入 to:收件人名称 ,可任意填入,将显示在收件箱的‘收件人’一栏

输入 subject:信件主题 ,显示在收件箱的‘主题’一栏中

此时需空一行,即在一空行直接回车,表示正文部分的开始

空行后输入信件的正文内容。

在正文输入结束时输入一个 . (英文输入法下的句号)回车,表示正文部分的结束。这时将显示邮件成功发送的信息。