利用smtp协议实现命令行发送邮件

Posted eyes++

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用smtp协议实现命令行发送邮件相关的知识,希望对你有一定的参考价值。

事实上只要知道邮件准确服务器的地址,即使没有邮箱也能给它发邮件,这里使用smtp协议演示使用电脑黑框发邮件。
先介绍一下smtp协议,smtp协议是简单邮件传输协议,在本例中相当于中转服务器。

任务

用黑框给eyes7927@163.com发送邮件。

思路

  1. 找到这个email储存邮件的准确服务器
  2. 连接该服务器,用smtp协议与之对话

步骤

先找到这个email储存邮件的准确服务器,使用nslookup命令,nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。

这个指令是查询网页服务器地址,而不是邮箱服务器地址,故错误。

nslookup 163.com

展示以下是正确指令:

nslookup -q=mx 163.com

展示上面四个地址都是邮箱服务器地址,任选一个使用,以第一个为例。

163mx01.mxmail.netease.com

使用telnet远程连接该邮箱服务器(25是端口号):

telnet 163mx01.mxmail.netease.com 25

展示连接成功后出现下列现象
展示用helo打个招呼,注意是helo不是hello
展示以下为发送邮件的详细步骤,由于我在尝试发邮件时连接不稳定多次与163邮箱服务器断开连接,便以燕十八老师的成功案例截图,并加上注释。
在这里插入图片描述展示

总结:

个人认为这种方法了解就好,因为与服务器连接时很容易断开连接,用这种方法发邮件十分耗耐心。
如果确实有发邮件相关的开发需要的话,可以看看我的另一篇博客:使用PHPMailer-master发邮件,这种方法可以给任何邮箱发邮件,有兴趣的话还可以看看这一篇:使用PHP的mail()函数发邮件,不过这篇博客里的方法如果要给任何邮箱发邮件的话需要一台匿名的邮箱服务器。

以上是关于利用smtp协议实现命令行发送邮件的主要内容,如果未能解决你的问题,请参考以下文章

利用Python实现的一个自动群发或单发邮件的小脚本!(SMTP协议)

用python实现自动发邮件的功能

SMTP协议解读以及如何使用SMTP协议发送电子邮件

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

Python实用工具巧妙利用Python实现发送带附件的邮件

php利用smtp类轻松的发送电子邮件