smtp中ehlo的使用
以前玩smtp的时候申明都是用的helo,最近在整理邮件服务的时候,才知道还有一个叫做ehlo的(太落后了)。
google了一下,了解了基本上是这么个情况:ehlo是对helo的扩展,即extend helo,可以支持authorization,即用户认证。下面我们通过一个例子来解释一下ehlo的用法:
[lyychee@mysun ~]# telnet smtp.mysun.org 25
// telnet到邮件服务器的25端口
Trying 172.18.250.250...
Connected to smtp.mysun.org (172.18.250.250).
Escape character is '^]'.
220 Welcome to my smtp server(EQManager V3.5) ESMTP
ehlo
// 用ehlo申明,表示自己需要身份验证
250-Welcome to my smtp server(EQManager V3.5)
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-PIPELINING
250-SIZE 10485760
250 8BITMIME
auth login
// 用这个命令表示身份验证开始
334 VXNlcm5hbWU6
// 这句是服务器返回的,是base64编码过的“user”
emhhbmd4aW5qaQ==
// 你的用户名经过base64编码的串
334 UGFzc3dvcmQ6
// 这句也是服务器返回的,是是base64编码过的“pass”
*******
// 密码,也要经过base64编码
235 ok, go ahead (#2.0.0)
mail from:zhangxinji@mysun
// 声明邮件来源email地址
// 为了防止被发垃圾邮件,去掉了域名的后半段
250 ok
rcpt to:lyychee@citiz
// 声明邮件目的email地址
// 为了防止被发垃圾邮件,去掉了域名的后半段
250 ok
data
// 邮件开始
354 go ahead
subject:Test Mail
// 主题
from:zhangxinji@mysun
// 在邮件头中声明邮件来源(仅在outlook或foxmail中显示,跟真实的投递无关)
// 比如你rcpt给了,在这里你完全可以写,信还是会被投到lyychee
to:lyychee@citiz
// 这个也是仅现实邮件目的地址
// 中间要留空一行,对邮件头跟邮件内容加以区分。
Mail Context
// 以上是邮件内容,可以是多行。
.
// “.”号表示邮件主体的结束。
250 ok 1184307659 qp 118430765900561 (eqmail)
quit
// 请求与服务器断开链接
221 Welcome to my smtp server(EQManager V3.5)
Connection closed by foreign host.
// 邮件发送过程完成。
smtp中ehlo的使用的更多相关文章
- 【RL-TCPnet网络教程】第34章 RL-TCPnet之SMTP客户端
第34章 RL-TCPnet之SMTP客户端 本章节为大家讲解RL-TCPnet的SMTP应用,学习本章节前,务必要优先学习第33章的SMTP基础知识.有了这些基础知识之后,再搞本章节会有事 ...
- mailsend - Send mail via SMTP protocol from command line
Introduction mailsend is a simple command line program to send mail via SMTP protocol. I used to sen ...
- [转载]SMTP的几个端口的比较
出处:https://blog.csdn.net/zhangyuan12805/article/details/78781330 1. SMTP Port 25: 25口是四个端口中最老的.这是在33 ...
- gitlab配置smtp时,总是提示需要鉴权,记录一下爬坑过程。
配置好smtp,然后发送邮件时总是提示 Net::SMTPFatalError: 550 5.7.1 authentication is required 最后发现是因为在gitlab web界面上配 ...
- 协议基础:SMTP:使用Telnet学习SMTP协议
协议基础:SMTP:使用Telnet学习SMTP协议 2018-07-30 20:05:50 liumiaocn 阅读数 7479更多 分类专栏: 工具 Unix/Linux 版权声明:本文为博主 ...
- Postfix邮件服务器搭建及配置
一.邮件服务器(Mail Server)的传输协议 1.简单邮件传输协议(SMTP):Simple Mail Transger Protocol 2.扩展的简单邮件传输协议(ESMTP):Extend ...
- 【转】在RedHat上搭建自己Email服务器
原文:http://6839976.blog.51cto.com/6829976/1323482 by LN__@linux 目前邮件服务器中,想要拥有自己的邮件服务器,单单使用senmail,pos ...
- 使用 telnet 发邮件
我们都习惯了用邮件客户端软件或者登录到电子邮件站点进行收发邮件,现在尝试一下使用 Windows 自带的 Telnet 程序手工地发送一封简单的邮件,以此来稍微明白关于邮件发送的一些知识. 现在 E- ...
- javaweb笔记全套
Lesson 1 一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Pr ...
随机推荐
- Nutch之简介与安装
初学Nutch之简介与安装 初学Nutch之简介与安装 1.Nutch简介 Nutch是一个由Java实 现的,开放源代码(open-source)的web搜索引擎.主要用于收集网页数据,然后对其 ...
- Beginning Python From Novice to Professional (7) - 类别
类别 创建一个简单的类: #!/usr/bin/env python __metaclass__ = type class Person: def setName(self,name): self.n ...
- Linux基础正则表达式:grep,sed
先说明语系对正则表达式的影响 LANG=C:0,1,2,3,4...A,B,C,D...Z a b c d ... z LANG=zh_CN:0,1,2,3,4...a A b B c C ...
- jQuery基础---Ajax进阶
原文:jQuery基础---Ajax进阶 内容提纲: 1.加载请求 2.错误处理 3.请求全局事件 4.JSON 和 JSONP 5.jqXHR 对象 发文不易,转载请注明出处! 在 Ajax 基础一 ...
- NGUI使用教程(2) 使用NGUI创建2D场景而且加入标签和button
1.创建2D场景 要使用NGUI创建2D场景,首先咱们必须新建一个项目,而且导入NGUI作为这个项目的插件,相信假设看过上一篇教程都知道怎么导入NGUI了,这里就不赘述,假设有疑问的能够去看上一篇教程 ...
- grunt的基本概念和使用
grunt的基本概念和使用 Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器. Grunt 0.4.x 必须配合Node.js >= 0.8.0版 ...
- 汤姆大叔 深入理解JavaScript系列(20):《你真懂JavaScript吗?》答案详解 后六道题答案
原题目地址:http://www.cnblogs.com/TomXu/archive/2012/02/10/2342098.html 答案丰富多彩.我只是记录下自己思考了半天全部的答案. 题目一:找出 ...
- 重新想象 Windows 8.1 Store Apps (81) - 控件增强: 加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 WebView 中的内容, 为 WebView 截图
原文:重新想象 Windows 8.1 Store Apps (81) - 控件增强: 加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 Web ...
- Windows在结构FTPserver
同Windows8 案件,结构介绍 FTPserver脚步: 1.为Windows开启FTP功能:控制面板->程序->启用或关闭Windows功能.将下图所看到的的复选框选中 waterm ...
- Oracle入门4-REF Cursor
Oracle入门4-REF Cursor 转自:http://blog.sina.com.cn/s/blog_55dbebb00100gxsc.html 自:http://blog.csdn.net/ ...