使用telnet模拟邮件的收发
smtp协议是一个简单的邮件传输协议,利用它我们可以将邮件发送给别人,这里将通过telnet这个程序利用smtp协议从网易向gmail发送一封邮件
基本步骤如下:
1、使用telnet连接smtp服务器
2、发送一个helo或者ehlo指令
3、验证用户(使用邮件名登陆,用户名和密码要采用base64编码)
4、使用mail命令准备发送邮件
5、使用rcpt命令指定对方邮箱地址
6、使用data命令开始输入内容
7、输入test或者hello world类似字样(即邮件内容)
8、输入邮件内容结束标志.
9、退出smtp服务器
- 在win环境下,开始--->运行--->cmd ,打开命令运行窗口
- 在命令窗口内,输入一下指令命令,注意用户名和密码要采用base64编码,可以在http://www.bejson.com/enc/base64/网站上进行转码。
发送成功过之后,登录网页邮箱查看
- SMTP协议的返回码
telnet接收邮件
POP3 协议类似于 SMTP 协议,它定义了一些命令用于管理邮箱等具体操作,为了能够在 Windows 下使用 telnet 程序来接收邮件
POP3相关命令(<space> 为空格,<CRLF> 为回车加换行):
1 1、user<space>邮箱的用户名<CRLF> :
2 该命令用于与 POP3 服务器建立联系;
3
4 2、pass<space>邮箱密码<CRLF> :
5 该命令用于 user 命令成功建立连接之后向 POP3 服务器发送邮箱的密码;
6
7 3、stat<CRLF> :
8 该命令用于查看邮箱中的邮件数量以及所占用的字节大小;
9
10 4、uidl<space>msg#<CRLF> :
11 该命令用于查询邮箱中编号为 msg# 的邮件的唯一标识符,注:邮箱中的编号是从 1 开始的;
12
13 5、list<space>[msg#]<CRLF> :
14 该命令用于将邮箱中的邮件信息进行列表,当指定参数 msg# 时,返回该编号的邮件的信息,不指定则返回所有邮件的信息;
15
16 6、retr<space>msg#<CRLF> :
17 该命令用于获取编号为msg#的邮件的内容;
18
19 7、dele<space>msg#<CRLF> :
20 该命令用于将编号为 msg# 的邮件设置上删除的标记,注:执行该命令之后邮件并不立即被删除,而是等到执行 quit 命令才会被删除;
21
22 8、rset<space>msg#<CRLF> :
23 该命令用于将执行了 dele 命令的编号为 msg# 的邮件的删除标记清楚掉;
24
25 9、quit<space>msg#<CRLF> :
26 该命令用于结束与 POP3 服务器的链接,即结束邮件的接收过程,执行完该命令之后,邮箱中被设置了删除标记的邮件会被真正删除掉。
- 打开win系统的命令窗口同上,连接163邮箱的pop3服务器,端口是110
- 输入用户名和密码,使用user命令和pass命令
- 查看邮箱中的邮件数量以及所占用的字节大小
- 查询邮箱
- 查询邮件信息列表
- 获取编号为msg#的邮件的内容
- 将编号为 msg# 的邮件设置上删除的标记,注:执行该命令之后邮件并不立即被删除,而是等到执行 quit 命令才会被删除
- 编号为 msg# 的邮件的删除标记清楚掉
- 退出pop3服务器
使用telnet模拟邮件的收发的更多相关文章
- Telnet 模拟邮件发送过程
Telnet 模拟邮件发送过程 windows要提前开启Telnet客户端的功能,再按照下面步骤完成邮件发送: 1.通过 cmd 进入命令窗口 2.连接要发送邮件的服务器:telnet smtp.al ...
- telnet模拟邮件发送
前提:Telnet命令可用 问题:提示不是内部命令: 解决办法:控制面板->程序和功能->打开或关闭Windows功能,把Telnet客户端勾上即可: 步骤: telnet smtp.al ...
- 使用 telnet 发邮件
我们都习惯了用邮件客户端软件或者登录到电子邮件站点进行收发邮件,现在尝试一下使用 Windows 自带的 Telnet 程序手工地发送一封简单的邮件,以此来稍微明白关于邮件发送的一些知识. 现在 E- ...
- [转】HTTP请求流程(二)----Telnet模拟HTTP请求
转自: http://www.cnblogs.com/stg609/archive/2008/07/06/1237000.html 上一部分"流程简介", 我们大致了解了下HTTP ...
- 利用telnet模拟http请求
最近准备接触php socket编程,所以准备先巩固以前学到的知识, 这里先简单回顾下 利用telnet 来模拟http请求. 1.先在80端口指向的目录建立http.php 文件 2.在终端输入 t ...
- HTTP请求流程(二)----Telnet模拟HTTP请求
http://www.cnblogs.com/stg609/archive/2008/07/06/1237000.html 上一部分"流程简介", 我们大致了解了下HTTP请求的流 ...
- 关于.NET邮件的收发问题总结
转载:http://www.cnblogs.com/ustbwuyi/archive/2007/05/28/762581.html //取数据库中邮件信息中的最大发送时间,即最近接收到的一封邮件的时间 ...
- telnet模拟http訪问
HTTP协议经常使用的无非就那么几个命令 GET HEAD PUT POST 此处简单说下http的GET和HEAD 举两个简单的样例: GET的样例 telnet serverip 80 GET h ...
- windows telnet 模拟 http请求
1. 开启windows自带的telnet客户端(控制面板 --> 程序 --> 启用或关闭windows功能 --> ) 2. 打开cmd,使用Telnet客户端 3. 按ctrl ...
随机推荐
- [LightOJ 1341] Aladdin and the Flying Carpet (算数基本定理(唯一分解定理))
题目链接: https://vjudge.net/problem/LightOJ-1341 题目描述: 问有几种边长为整数的矩形面积等于a,且矩形的短边不小于b 算数基本定理的知识点:https:// ...
- HDU 3333 Turing Tree(树状数组/主席树)
题意 给定一个长度为 \(n\) 的序列,\(m\) 个查询,每次查询区间 \([L,R]\) 范围内不同元素的和. \(1\leq T \leq 10\) \(1 \leq n\leq 300 ...
- Derek解读Bytom源码-孤块管理
作者:Derek 简介 Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom ...
- mybatis动态传入表名、列名
原文:http://luoyu-ds.iteye.com/blog/1517607 要实现动态传入表名.列名,需要做如下修改 添加属性statementType=”STATEMENT” (可省略) 同 ...
- 在 2016 年学 JavaScript 是一种什么样的体验?(React从入门到放弃)
jquery 年代 vs 前端模块化 http://blog.csdn.net/offbye/article/details/52793921 ++ 嘿,我最近接到一个 Web 项目,不过老实说,我这 ...
- 51nod 1275 连续字段的差异(单调队列)
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1275 题意: 思路: 固定某个端点,然后去寻找满足能满足要求的最大区间, ...
- 理解ffmpeg中的pts,dts,time_base
首先介绍下概念: PTS:Presentation Time Stamp.PTS主要用于度量解码后的视频帧什么时候被显示出来 DTS:Decode Time Stamp.DTS主要是标识读入内存中的b ...
- R----ggplot2包介绍学习--转载
https://www.cnblogs.com/nxld/p/6059603.html 分析数据要做的第一件事情,就是观察它.对于每个变量,哪些值是最常见的?值域是大是小?是否有异常观测? ggplo ...
- list转化为json数组
今天做项目,用Thrift获取数据,在servlet里面获取的是数组,但是通过Ajax传输到js文件里是一个list,我获取长度失败,这个时候需要将list转化为json数组,我们可以通过eval() ...
- java 之2D过气游戏类的写法
2D游戏中各对象的父类 package cn.littlepage.game; import java.awt.Graphics; import java.awt.Image; import java ...