使用telnet协议来收发邮件(SMTP和POP3)
使用telnet协议来收发邮件(SMTP和POP3)
第一部分邮件传输协议SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)定义了邮件客户端软件与SMTP服务器之间,以及两台SMTP服务器间的通信规则。
SMTP服务器之间的通信规则。
SMTP协议中一共定义了18条命令,发送一封电子邮件的过程通常只需要使用其中6条命令,表1中按照发送命令的先后顺序列出了这6条命令,并描述了其语法格式及功能说明,其中,<SP>代表空格,<CRLF>代表回车和换行。
表1SMTP命令及格式说明ehlo<SP><domain><CRLF> ehlo命令是SMTP邮件发送程序与SMTP邮件接收程序建立连接后必须发送的第一条SMTP命令。
参数<domain>表示SMTP邮件发送者的主机名。
ehlo命令用于替代传统SMTP协议中的helo命令auth<SP><para><CRLF> 如果SMTP邮件接收程序需要SMTP邮件发送程序进行认证时,它会向SMTP邮件发送程序提示它所采用的认证方式,SMTP邮件发送程序接着应该使用这个命令回应SMTP邮件接收程序,参数<para>表示回应的认证方式,通常是SMTP邮件接收程序先前提示的认证方式。
mail<SP>from:<reverse-path><CRLF> 此命令用于指定邮件发送者的邮箱地址,参数<reverse-path>表示发件人的邮箱地址。
rept<SP>to:<forword-path><CRLF> 此命令用于指定邮件接收者的邮箱地址,参数<forword-path>表示接收者的邮箱地址。
如果邮件要发送多个接收者,那么应使用多条rept<SP>to命令来分别指定每一个接收者的邮箱地址。
POP3协议
介绍POP3协议的定义和作用POP3(Post Office Protocol version3)是一种用于电子邮件传输的协议。
它是互联网上最常用的电子邮件接收协议之一。
POP3协议允许用户从邮件服务器上下载电子邮件到本地计算机,以便离线阅读和管理邮件。
作用POP3协议的主要作用是提供一种标准化的方式,让用户通过邮件客户端应用程序(如Outlook、Thunderbird等)从邮件服务器上接收电子邮件。
以下是POP3协议的主要作用:1.接收邮件:用户可以使用POP3协议从邮件服务器上下载未读邮件到本地计算机,以便在没有网络连接的情况下阅读和处理邮件。
2.存储邮件:POP3允许用户选择在服务器上保留或删除已下载的邮件副本。
这样,用户可以自由地管理邮件,删除不需要的邮件,或者将重要的邮件保留在服务器上以备后续查看。
3.离线访问:由于POP3协议允许将邮件下载到本地计算机,用户可以在没有网络连接或者在移动设备上离线状态时,仍然能够阅读和处理邮件。
4.节省带宽:一旦邮件下载到本地计算机,用户可以在本地进行阅读和管理,而不需要频繁地与邮件服务器通信。
这样可以节省网络带宽的使用,尤其是对于使用低速或昂贵的网络连接的用户来说。
总的来说,POP3协议提供了一种方便、灵活和可靠的方式,让用户能够高效地接收和管理电子邮件。
无论是个人用户还是企业用户,都可以通过POP3协议来处理他们的邮件通信需求。
解释POP3协议的工作原理和基本流程POP3(Post Office Protocol version3)协议是一种客户端‑服务器协议,用于从邮件服务器上接收电子邮件。
下面是POP3协议的工作原理和基本流程:1.建立连接:邮件客户端应用程序与邮件服务器之间建立TCP连接。
通常,邮件服务器的标准端口是110。
一旦连接建立,客户端可以向服务器发送命令来获取邮件。
2.身份验证:客户端发送用户名和密码给服务器进行身份验证。
这些凭据用于确认用户的身份和权限,以便访问邮件。
TCPIP练习题
1.Telnet工作在应用层,使用的端口号是(23),FTP使用的端口号(21)。
判断:2.DNS、Telnet和FTP都使用TCP作为传输层协议。
(错)3.Web服务器提供的Web服务的默认端口号是(80);4.HTTP请求报文包括(请求行、状态行)、(信息首部)、空行和(信息体)组成。
请求命令包括__GET,HEAD,PUT,POST,DELETE,TRACE,和CONNECT__________________。
5.HTTP响应报文中(状态码)描述了响应类型,(2XX )表示请求成功。
6.SMTP是一个简单的邮件传输协议,只能发送使用(请求/应答)格式的报文。
7.SMTP使用TCP的(25 )号端口。
POP3服务器使用TCP端口(110)号。
(1)P210——3(2)BOOTP客户机使用端口号(68),服务器使用端口号(67 )。
BOOTP使用(UDP )协议进行数据传递。
(3)判断题:BOOTP客户机发送请求报文时使用广播方式,BOOTP服务器发送应答报文时使用单播方式。
(错)(4)解释IP地址池的概念。
是DHCP客户机可以从DHCP服务器分配的道德IP地址的范围(5)以下哪些报文时DHCP客户机发送的(A D E),哪些是DHCP服务器发送的(B C FG)。
A. DHCPDISCOVERB. DHCPOFFERC. DHCPACKD.DHCPREQUESTE.DHCPDECLINEF.DHCPNAKG.DHCPRELEASE(6)判断题:DHCP客户机只有在首次登陆网络时才有可能发送DHCPDISCOVER广播。
(对)习题:1、判断:SNMP协议时为TCP/IP网络设计的,工作在UDP之上。
(对)2、判断:SNMP无连接的协议。
(对)3、填空:SNMP规定了5中协议数据单元:(get-request )、(get-nest-request )、(set-request )、(get-response )、(trap操作)。
邮件传输协议SMTP和SMTPS
邮件传输协议SMTP和SMTPS在《》中,我们实现了spring boot集成spring-boot-starter-mail,使⽤JavaMailSender发送电⼦邮件的功能。
在配置⽂件中设置了端⼝和邮件传输协议,现在思考⼀个问题——它们是什么呢?这⾥就剥茧抽丝般的揭开其神秘⾯纱。
1. 三种邮件传输协议概述作为⼀个勤学好问的程序猿,我们当然也要了解下邮件发送的协议,这个是关乎邮件发送的最根本的内容。
在上述邮件发送的过程中,邮件客户端和邮件服务器之间,以及两个邮件服务器之间进⾏邮件传递,是要遵守⼀定的规则,这个规则就是邮件传输协议。
常见的电⼦邮件协议SMTP、POP3、IMAP,它们都⾪属于TCP/IP协议族,默认状态下,分别通过TCP端⼝25、110和143建⽴连接。
下⾯分别对其进⾏简单介绍。
1. SMTP:简单邮件传输协议(Simple Mail Transfer Protocol),⽤于发送电⼦邮件的传输协议;主要⽤来从邮件客户端向邮件服务器发送邮件,也可以⽤来在邮件服务器之间转发邮件。
2. POP3:Post Office Protocol,⽤于接收电⼦邮件的标准协议;3. IMAP:全称是 Internet Message Access Protocol,互联⽹消息协议,是POP3的代替协议;后两者⽤来从邮件服务器获取邮件。
这三种协议都有对应SSL加密传输的协议,分别是SMTPS,POP3S和IMAPS。
下⾯介绍SMTP和SMTPS协议。
2. SMTP协议SMTP:简单邮件传输协议,是⼀个基于⽂本的协议。
在其上指定了⼀个消息的⼀个或多个接收者(收件⼈和抄送⼈),然后消息⽂本会被传输。
可以使⽤简单的telnet程序来测试⼀个SMTP服务器。
如今绝⼤多数邮件服务器都使⽤该协议。
当你给别⼈发邮件时,你的服务器的某个动态端⼝(⼤于1024)就会和邮件服务器的25端⼝建⽴⼀个连接,你发送的邮件会通过这个连接传送到邮件服务器上,保存起来。
smtp服务器和pop3服务器是什么
smtp服务器和pop3服务器是什么SMTP 服务器和 POP3 服务器是什么在当今数字化的时代,电子邮件已经成为我们日常生活和工作中不可或缺的通信工具。
而在电子邮件的背后,有两个重要的服务器在默默工作,它们分别是 SMTP 服务器和 POP3 服务器。
这两个服务器对于电子邮件的发送和接收起着至关重要的作用。
那么,SMTP 服务器到底是什么呢?SMTP 全称为 Simple Mail Transfer Protocol,也就是简单邮件传输协议。
简单来说,SMTP 服务器的主要任务就是负责把我们编写好的电子邮件从我们的计算机或者移动设备发送出去,传送到收件人的电子邮箱服务器。
当我们在电子邮件客户端(比如常见的 Outlook、Foxmail 或者手机上的邮件应用)中点击“发送”按钮时,我们编写的邮件内容、附件、收件人地址等信息就会被打包成一个特定的格式,然后通过网络连接被发送到 SMTP 服务器。
SMTP 服务器就像是一个邮件的“快递员”,它会根据收件人的地址,找到对应的目标服务器,并将邮件传递过去。
SMTP 服务器在发送邮件的过程中,还需要遵循一系列的规则和流程,以确保邮件能够准确、快速地送达目的地。
比如,它需要对邮件的格式进行检查,确保符合电子邮件的标准规范;它还需要处理各种可能出现的错误情况,比如收件人的邮箱地址不存在、网络连接中断等等。
为了更好地理解 SMTP 服务器的工作原理,我们可以想象一下寄信的过程。
我们把写好的信投入邮筒,然后邮局的工作人员会把信件收集起来,按照收件人的地址进行分类和运输。
SMTP 服务器就相当于这个邮局,它负责把我们的电子邮件“收集”起来,并“运输”到正确的地方。
接下来,再让我们了解一下 POP3 服务器。
POP3 全称为 Post Office Protocol 3,即邮局协议版本 3。
与 SMTP 服务器负责发送邮件不同,POP3 服务器主要用于接收邮件。
当我们使用电子邮件客户端来查看收件箱中的邮件时,客户端会首先与 POP3 服务器建立连接。
《互联网基础与应用》综合练习题及答案
“互联网基础与应用”综合练习题参考答案一、填空题1.Internet是由世界范围内数量众多的_计算机网络_互连而成的全球性的、开放的网络。
2.Internet由以下几部分组成:通信线路、路由器、主机和_信息资源_。
3.Internet的基本工作模式采用_客户机/服务器__的模式。
4.Internet的国际管理者是_因特网协会(Internet Society,ISOC)_,Internet的中国管理者是_中国互联网络信息中心(China Internet Network Information Center,简称CNNIC)_。
5.网络协议由3个要素组成,分别是_语法_、_语义_和_时序_。
6.TCP/IP网络的层次结构模型分为四层,分别是_网络接口层_、_网络层_、_传输层_和_应用层_。
7.Internet通信的基础协议是_TCP/IP_协议,其对应于OSI参考模型的传输层协议是_传输控制协议(Transmission Control Protocol,TCP)_协议,对应于OSI参考模型的网络层协议是_网际协议(Internet Protocol,IP)_协议。
8.域名服务器是一个安装有_域名解析_处理软件的主机,它的功能是_将主机域名映射成主机的IP地址_。
9.当前,Internet面临着各种安全威胁,其中最主要的威胁包括:网络攻击、计算机病毒、垃圾邮件和灰色软件。
10.WWW的核心部分是由三个标准构成的,分别是:统一资源定位符(URL)、超文本传送协议(HTTP)和超文本标记语言(HTML)。
11.搜索引擎通常包括三个组成部分,分别是_ Web蜘蛛、数据库和搜索工具_。
12.电子邮件服务器通常有两种类型,分别是_“发送邮件服务器”(SMTP服务器)和“接收邮件服务器”(POP3服务器或IMAP服务器)_。
13.FTP客户程序主要有三种类型,分别是_ FTP命令行程序、WWW浏览器和FTP客户端程序_。
POP3与SMTP协议
POP3协议POP3,全名为“Post Office Protocol - Version 3”,即“邮局协议版本3”。
是TCP/IP协议族中的一员,由RFC 1939 定义(见 Reference/rfc1939 pop3.html)。
本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。
提供了SSL加密的POP3协议被称为POP3S。
使用telnet 连接pop3最直观的了解什么是POP3,我觉得采用telnet的方式用pop3连接到邮件服务器,进行邮件的接收是最有效的。
打开终端,(C:client, S:Server)C: telnet 110 (用telnet方式连接163的pop3服务器,pop3协定端口为110)S: Trying 202.108.5.100...Connected to .Escape character is '^]'.+OK Welcome to coremail Mail Pop3 Server(163coms[3d8c1fa079729fb6acc588e66d30360es])(服务器通常开头返回+OK表示正确的回应,+ERR表示所发命令有误)C: USER ***** (***处输入你的邮件用户名)S: +OK core mail (表示接受)C: PASS ***** (***处输入密码,这里都是明文显示)S: +OK 5 message(s) [9782 byte(s)] (这里表示服务器接受该帐户,服务器上对应有5封邮件,总大小9782个字节)C:LIST (LIST 命令列出每一封邮件的信息,己每封邮件对应的ID 号和大小)S: +OK 5 97821 12982 13113 12244 13125 4637.C: TOP 1 0 (格式 TOP num 0, num代表邮件ID号,返回该邮件的头部信息)S:+OK 1298 octets (服务器接受)Received: from (unknown [221.10.25.6])(返回的相关内容)by smtp1 (Coremail) with SMTP id C9GowLCLsyoRy_JI5Ci2Mg==.42306S2;Mon, 13 Oct 2008 12:14:10 +0800 (CST)Date: Mon, 13 Oct 08 12:14:09 +0800 (CST)From: tommy_mail@To: tommy_mail<tommy_mail@>Subject: @@!$$%^&MIME-Version: 1.0Content-Type: multipart/alternative; boundary="=-plenware_alt_"X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUUYxn0WfASr-VFAUDa7-sFnT9fnUUIcSsGvfJTRUUUjlxYjsxI4VWxJwAYFVCjjxCrM7AC8VAFwI0_Jr0_Gr1l1I0E4x80FVCIwcAKzIAtM7C26IkvcIIF6IxKo4kEV4yl1IIY67AEw4v_Jr0_Jr4l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1Y6r17McIj6I8E87Iv67AKxVW8JVWxJwACY4xI67k04243AVAKzVAKj4xxM4xvF2IEb7IF0Fy26I8I3I1lFVAaXTZC67ZELSn0mTvEwaV2v3VFvVW8M4IE42xK82IY64kIx2x0424lw4CEF2IF47xS0VAv8wAKzVCY07xG64k0F24l7I0Y64k_MxkFs20EY4vE77kJMxkIecxEwVAFwVW8XwCY0x0Ix7I2Y4AK64vIr41l4x8a6c8ajcxJMI8E67AF67kF1VAFwI0_Jr0_JrylIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_Jr0_Gr1lIxAIcVC2z280aVAFwI0_Gr0_Cr1lIxAIcVC2z280aVCY1x0267AKxVW8JVW8Jr1l6VACY4xI67k04243AbIYCTnIWIevJa73UjIFyTuYvjxUyYZXDUUUUMessage-Id: <48F2CB12.33901D.26072@>.C: RETR 2 (格式 RETR num, num为邮件ID号,返回邮件全部源码)S: +OK 1311 octetsReceived: from (unknown [221.10.25.6])by smtp4 (Coremail) with SMTP id DtGowLCrK4xUyvJIJeKfLg==.58545S2;Mon, 13 Oct 2008 12:11:00 +0800 (CST)......--=-plenware_alt_--.C: NOOP (空操作,起延时作用,服务器会在一定时间内无操作的话自动退出)S: +OK core mailC: UIDL (邮件的唯一ID,通常称“独立-ID表”,用于唯一确定一封邮件,通常用于客户端判别已读未读)S: +OK 5 97821 1tbiYAaMeEJw1XtwEgAAss (由服务器产生的邮件唯一ID,RFC文档上说是服务器内唯一,但估计说成全球唯一也不为过)2 1tbiYAeMeEJw1XtoyQAAsu3 1tbiYRaMeEJw2LVItgAAsi4 1tbiwQqMeEij15ERZQAAsm5 1tbiwReMeEij15EzUgAAsu.C: QUIT (退出命令)S: +OK core mailConnection closed by foreign host.-------------------------------------------------------------------------------------------------------------------------*更加详细的关于telnet的描述可参看 Reference/telnet 操作 smtp pop.htmlPOP3协议的状态和相关命令POP3有三种状态:a) The AUTHORIZATION State当一个TCP连接从客户端连接到服务器以后,就进入了这个状态。
SMTP及POP3协议分析
SMTP及POP3协议分析
SMTP(Simple Mail Transfer Protocol)和POP3(Post Office Protocol 3)是两种常用的电子邮件协议,用于发送和接收电子邮件。
本
文将从协议的定义、工作原理、特点和使用场景等方面进行分析。
一、SMTP协议:
SMTP协议定义了发送邮件的标准规范,主要用于邮件的发送、转发
和投递,是目前应用最广泛的邮件传输协议之一
1.工作原理:
SMTP协议基于传输控制协议(TCP)来进行通信,端口号为25,默认
使用明文传输。
邮件发送方通过SMTP客户端将邮件发送到SMTP服务器上,然后SMTP服务器根据邮件头部信息解析邮件内容,查找目标服务器并进
行中转或投递给目标服务器。
2.特点:
(2)支持多种验证方式,如口令验证、加密验证等,提高了邮件的
安全性。
(3)支持邮件的回执和重试功能,可保证邮件的可投递性。
(4)提供了邮件的分组功能,可以将多份邮件打包发送。
3.使用场景:
(1)企业内部邮件的发送和传递。
(2)通过邮件账号发送公告、通知等大批量邮件。
(3)与客户端邮件程序结合,提供发送邮件的功能。
二、POP3协议:
1.工作原理:
2.特点:
(2)只支持单一用户操作,不支持同时多用户在线。
3.使用场景:
(2)使用POP3协议在不同的邮件客户端之间同步邮件数据。
电子邮件传输原理:SMTP、POP3、IMAP协议解析
电子邮件传输原理:SMTP、POP3、IMAP协议解析电子邮件的传输过程涉及多个协议,其中最常见的是SMTP(Simple Mail Transfer Protocol)、POP3(Post Office Protocol 3)和IMAP(Internet Message Access Protocol)。
这些协议在电子邮件的发送、接收和访问过程中发挥着不同的作用。
以下是它们的基本解析:SMTP(Simple Mail Transfer Protocol):作用: SMTP是用于发送电子邮件的协议,负责将电子邮件从发件人的邮件客户端传输到接收人的邮件服务器。
工作原理:发件人的邮件客户端通过SMTP与发件人的邮件服务器建立连接,并使用SMTP协议将电子邮件传递给邮件服务器。
邮件服务器随后将电子邮件中转给接收人的邮件服务器。
POP3(Post Office Protocol 3):作用: POP3用于从邮件服务器上下载电子邮件到接收人的本地设备,常用于单一设备上的邮件访问。
工作原理:接收人的邮件客户端通过POP3与接收人的邮件服务器建立连接,然后下载服务器上存储的邮件到本地设备。
通常,邮件会被下载到本地设备后从服务器上删除。
IMAP(Internet Message Access Protocol):作用: IMAP也用于从邮件服务器上下载电子邮件,但与POP3不同,IMAP允许在多个设备上同步访问邮件,保留邮件服务器上的副本。
工作原理:接收人的邮件客户端通过IMAP与接收人的邮件服务器建立连接。
IMAP允许在多个设备上同步邮件的状态(已读、未读、已删除等),并在服务器上保留邮件的副本,使用户可以从不同的设备访问邮件。
在电子邮件传输过程中,通常的流程如下:发件人使用SMTP将电子邮件发送到发件人的邮件服务器。
发件人的邮件服务器使用SMTP将邮件传递给接收人的邮件服务器。
接收人可以使用POP3或IMAP从邮件服务器上下载邮件到本地设备。
如何使用 Telnet 测试 SMTP 通信
如何使用Telnet 测试SMTP 通信Telnet 是一个非常有用的工具,可用于解决与SMTP 和邮件流有关的问题。
例如,可以使用telnet 来完成下列操作:∙确认SMTP 已正确安装,并且具有所有必要的命令。
∙确保在Internet 上能够访问到您的服务器。
∙尝试直接通过TCP 端口传递邮件。
∙确定所有服务器都接受连接。
∙确定防火墙是否阻止连接。
∙确保单个用户能够接收邮件。
∙确保特定的域能够接收邮件。
确保特定的用户或域能够向您的域发送邮件。
Note:开始之前在执行本主题中的步骤之前,请阅读排除邮件流和SMTP 故障。
执行此步骤需要有下列权限:∙本地管理员组的成员步骤使用telnet 测试SMTP 通信1.打开telnet 会话:在命令提示符下,键入telnet,再按Enter 键。
2.在运行Microsoft Windows® 2000 的计算机上键入set local_echo,或者在运行WindowsServer™ 2003 或Windows XP 的计算机上键入SET LOCALECHO,然后按Enter 键。
通过该命令可以查看系统对命令的响应。
Note:3.键入o <您的邮件服务器域> 25,再按Enter 键。
4.键入EHLO<您的邮件服务器域>,再按Enter 键。
5.键入AUTH LOGIN。
服务器提示您输入加密的用户名。
6.输入以base 64 加密的用户名。
可以使用可用的几个工具之一来对用户名进行编码。
7.服务器提示您输入以base 64 加密的密码。
输入以base 64 加密的密码。
8.键入MAIL FROM:<sender@>,再按Enter 键。
如果不允许该发件人发送邮件,SMTP 服务器将返回错误。
9.键入RCPT TO:<recipient@>,再按Enter 键。
如果收件人不是有效的收件人或者服务器不接受此域的邮件,则SMTP 服务器返回一个错误。
用Telnet命令收发邮件(SMTP和POP3协议)实验报告
用Telnet命令收发邮件(SMTP和POP3协议)【实验前准备】申请两个新浪邮箱:wulianwang01@密码:**********(作为发件邮箱)wulianwang02@密码:**********(作为收件邮箱)将发件邮箱进行Base64编码(百度搜索在线编码器):wulianwang01(d3VsaWFud2FuZzAx);wulianwang(d3VsaWFud2FuZw==)。
【实验一】用SMTP协议发送邮件SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)定义了邮件客户端软件与SMTP服务器之间,以及两台SMTP服务器间的通信规则。
要给某个SMTP服务器发送邮件,首先要获知该SMTP服务器的主机名,新浪的SMTP服务器主机名为 25,SMTP服务器的端口号为25。
实现步骤:1、打开windows命令行窗口,使用telnet命令连接到sina的SMTP服务器的25号端口,即在命令行窗口中输入如下内容:telnet 25220,表示登陆SMTP服务器成功。
2、SMTP发送者程序与SMTP接收者程序建立连接后,接着应该使用helo命令向SMTP接收程序发送问候信息:helolocalhost(localhost代表本地主机)。
250,代表与SMTP服务器成功建立链接。
3、输入命令:auth login。
表示登陆发件邮箱。
SMTP服务器返回的响应状态码为334,它表示SMTP服务器正在等待客户端输入认证信息。
这时,输入经过BASE64编码的发件邮箱用户名和密码。
4、输入mail from命令,填写上刚刚注册的发送邮箱地址:mailfrom:<wulianwang02@>。
这个邮箱可以随便填写,因为SMTP协议不要求SMTP服务器对mail from命令后的邮箱地址进行验证,效果图如下:5、输入rcpt to命令。
填写收件者邮箱:rcpt to:wulianwang01@。
telnet收发邮件
telnet收发邮件telnet收邮件:所有响应+OK (ok) or -ERR (no)1.连接→telnet 1102.用户名→user ****3.密码→pass ****4.验证ok后,终端会显示如下信息:+OK 60 message(s) [72208371 byte(s)]数字60表示有60封邮件,72208371表示这60封邮件总的字节数(即72208371B)这时可使用的命令如下:1.stat命令格式:stat 无需参数stat命令,查看统计,执行后,POP3服务器会响应一个正确应答,它以“+OK”开头,接着是两个数字,第一个是邮件数目,第二个是邮件的大小2.list命令格式:list [n] 参数n可选,n为邮件编号list命令,查看邮件列表,可以利用不带参数的list命令,获得各邮件的编号,并且每一封邮件均占用一行显示,前面的数为邮件的编号,后面的数为邮件的大3.uidl命令格式:uidl [n] 参数n可选,n为邮件编号uidl命令,与list同,不过显示邮件的信息比list更详细,更具体4.retr命令格式:retr n 参数n不可省,n为邮件编号retr命令,查看邮件的内容5.dele命令格式:dele n 参数n不可省,n为邮件编号dele命令,删除指定的邮件(注意:dele n命令只是给邮件做上删除标记,只有在执行quit命令之后,邮件才会真正删除)6.top 命令格式:top n m 参数n,m不可省,n为邮件编号,m为行数top命令,读取指定邮件正文的行数,如果m=0,则只读出邮件的邮件头部分7.noop命令格式:noop 无需参数noop命令,该命令发出后,POP3服务器不作任何事,仅返回一个正确响应"+OK"8.quit命令格式:quit 无需参数quit命令,该命令发出后,telnet断开与POP3服务器的连接,系统进入更新状态telnet发邮件1.连接→telnet 25回显"220"2.报名字(随便写)→helo 回显"250 ok"3.登陆模式(这时选一般登陆模式)→AUTH LOGI N回显"334 dXNlcm5hbWU6"(注:这时的用户和密码都为Base64编码后的字符4.用户名→****回显"334 UGFzc3dvcmQ6"5.密码→****回显"235 Authentication successful" 表示验证通过6.发件人→mail from: <xxxx@>回显"250 Mail OK"7.收件人→rcpt to: <xxxx@>回显"250 Mail OK"8.开始写正文→data输入正文内容就ok,正文要符合MIME规范例子:From: xxxxx@←电子邮件的发信人To: xxx@←电子邮件的收信人Cc: xxxx@←接收通过抄送方式发送的邮件的收件人Subject: test ←电子邮件的主题MIME-Version: 1.0 ←MIME 协议的版本Content-Type: text/plain ←邮件格式texthello vkill ←内容当行输入. 回车,回显"250 OK"发送成功9.断开连接→quit。
妙用Telnet快速收发电子邮件
妙用Telnet快速收发电子邮件妙用Telnet快速收发电子邮件方法一:打开“开始”菜单中的“运行”对话框,输入命令telnet 及远程服务器端口号,如::telnet 110 就会与“中华网”的pop3服务器建立连接。
方法二:在telnet界面之下,打开其主菜单上的“连接\远程系统”对话框,在“主机名”中输入: ,在“端口”中输入:110 ,终端类型就使用系统默认的vt100,如图三所示,这样设置之后,其执行结果与方法一相同。
如果上述连接成功,POP3服务器就会回应如下信息(显示在终端上):+OK AIMC POP service () is ready.在简单介绍telnet工具后,我们来了解如何用Telnet工具收取和发送电子邮件,以本人的电子邮箱[email]xu_xifeng@[/email]为例进行说明(密码为:password),显然这个邮箱在“中华网”上,要收取“中华网”上的电子邮件,必须先登录到中华网的POP3服务器上,登录过程上面已经将过,在登录成功之后,紧接着输入如下命令(user命令接登录的用户名,pass命令接邮箱密码,中间用空格隔开):user xu_xifeng如果该用户名登录成功,POP3服务器会响应如下信息:+OK Please enter password for user .接着马上输入密码pass password如果成功,终端会显示如下信息:+OK xu_xifeng has 5 message (2294 octets)其中数字5表示有5封邮件,2294表示这5封邮件总的字节数(即2294B),到此邮箱[email]xu_xifeng@[/email]已成功登录,进入邮箱之后,有以下命令可以使用,其命令格式及参数说明如下:1.stat命令格式:stat 无需参数2.list命令格式:list [n] 参数n可选,n为邮件编号3.uidl命令格式:uidl [n] 同上4.retr命令格式:retr n 参数n不可省,n为邮件编号5.dele命令格式:dele n 同上6.top 命令格式:top n m 参数n,m不可省,n为邮件编号,m为行数7.noop命令格式:noop 无需参数8.quit命令格式:quit 无需参数各命令的详细功能见下面的说明:1、stat命令不带参数,对于此命令,POP3服务器会响应一个正确应答,此响应为一个单行的信息提示,它以“+OK”开头,接着是两个数字,第一个是邮件数目,第二个是邮件的大小,如:+OK 4 1603(如图四的最末一行)2、list命令的参数可选,该参数是一个数字,表示的是邮件在邮箱中的编号,我们可以利用不带参数的list命令,获得各邮件的编号,并且每一封邮件均占用一行显示,前面的数为邮件的编号,后面的数为邮件的大小。
telnet登陆POP收邮件
telnet登陆POP收邮件*若要⽤qq邮箱做测试,需要进⼊⾃⼰的邮箱,打开设置开启POP3/SMTP服务telnet 110//登陆 端⼝是110+OK QQMail POP3 Server v1.0 Service Ready(QQMail v2.0)//pop服务器的欢迎信息USER123456 //因为POP是明⽂传送,所以直接输⼊⾃⼰的账号(在此假设是123456)+OKPASS123//明⽂输⼊⾃⼰的密码(在此假设是123)+OKSTAT//此命令⽤来显⽰服务器上的邮件信息+OK 3 2736//第⼀个数3代表有3封邮件第⼆个数2736代表3封邮件的总⼤⼩,单位字节LIST//此命令显⽰每封邮件⼤⼩信息+OK1 912 // “1 2 3”是邮件编号,后⾯912是每封邮件的⼤⼩2 9123 912. //⼀个点代表结束RETR1//此命令⽤来接收编号是1的邮件的内容+OK //以下则是邮件的内容,部分省略X-QQ-ThreadID:8B0qcyizVg,0X-Originating-IP: 117.74.65.4X-QQ-mid:webmail128t1236503565t21061X-QQ-STYLE:From: "=?gbk?B?cm9ib3Q=?=" <123456@>To: "=?gbk?B?zeW2+Q==?=" <123456@>Sender: 123456@Subject: 你好Mime-Version: 1.0Content-Type: multipart/alternative;..........//邮件内容最后⽤⼀个点结束QUIT//断开和服务器的连接+OK Bye。
妙用Telnet快速收发电子邮件
邮 筒 协议 .负 责邮 件 的收 取 。 单邮 件传 输 协 议 ,负 责邮 件 的 ቤተ መጻሕፍቲ ባይዱ送 。
当 然 ,这 里 只 需 大 家 知 道 P P O 3协 议 的 端 口 : F 3  ̄I 务 器 及相 应 的 通 信 端 口 ,接 下 来 就 OP ,S ' P服 要了 解 用 W n wo i d s自 带 的 远 程 登 录 工 具 T 1 e 来 e t n
自带 的远 程 登 录 工具 ) 发电 子邮 件 希 望 各 位能 有 收
所收获 。
下 面就 举 几 个 I t r e 上特 殊 服务 对 应的端 口 n e nt
HT T P端 口 DS端 口 N s 端 口
8 ( 文本传 输 协议 ) 0 超 5 ( 名服务 系 统) 3 域 2 ( 5 简单邮 件传 输协 议 )
S T 指 : i p e M i r n f r P o o o M P S m l a l T a s e r t c l称 简 11 0,S P协 议 的 端 口 :2 MT S即 可 ,弄 清 了 以 上
这 两 大协 议在 嗣上 也 可称 为两 大 服务 , 户 可 以 收 取 和 发 送 电 子 邮 件 了 。T I e 用 e n t工 具 在 W n o s i d w 在 支持这 两大 服务 的服务 器上 方便地 管理 自己在 远程 的 安 装 目录 下 ,双 击 运 行 ,其 主 界 面 如 图 】 示 . 所 计 算机 上 的 电子邮 件 。当前 .国 内的很 多网站 ,都提 它 的 主 菜 单 上 有 四 个 选 项 ,各 选 项 的 用 法 与功 能 供 了免 费 的 电子 邮 箱 和这 两 大 服 务 及其 相 应 的 服 务 如 下 器 ,下 面就 将 其列 表 如下 :
妙用Telnet快速收发电子邮件
妙用Telnet快速收发电子邮件妙用Telnet快速收发电子邮件方法一:打开“开始”菜单中的“运行”对话框,输入命令telnet 及远程服务器端口号,如: :telnet 110 就会与“中华网”的pop3服务器建立连接。
方法二:在telnet界面之下,打开其主菜单上的“连接\远程系统”对话框,在“主机名”中输入: ,在“端口”中输入:110 ,终端类型就使用系统默认的vt100,如图三所示,这样设置之后,其执行结果与方法一相同。
如果上述连接成功,POP3服务器就会回应如下信息(显示在终端上): +OK AIMC POP service () is ready. 在简单介绍telnet工具后,我们来了解如何用Telnet工具收取和发送电子邮件,以本人的电子邮箱[email]xu_xifeng@[/email]为例进行说明(密码为:password),显然这个邮箱在“中华网”上,要收取“中华网”上的电子邮件,必须先登录到中华网的POP3服务器上,登录过程上面已经将过,在登录成功之后,紧接着输入如下命令(user命令接登录的用户名,pass命令接邮箱密码,中间用空格隔开): user xu_xifeng 如果该用户名登录成功,POP3服务器会响应如下信息: +OK Please enter password for user . 接着马上输入密码 pass password 如果成功,终端会显示如下信息: +OK xu_xifeng has 5 message (2294 octets) 其中数字5表示有5封邮件,2294表示这5封邮件总的字节数(即2294B),到此邮箱[email]xu_xifeng@[/email]已成功登录,进入邮箱之后,有以下命令可以使用,其命令格式及参数说明如下: 1.stat命令 格式:stat 无需参数 2.list命令 格式:list [n] 参数n可选,n为邮件编号 3.uidl命令 格式:uidl [n] 同上 4.retr命令 格式:retr n 参数n不可省,n为邮件编号 5.dele命令 格式:dele n 同上 6.top 命令 格式:top n m 参数n,m不可省,n为邮件编号,m为行数 7.noop命令 格式:noop 无需参数 8.quit命令 格式:quit 无需参数 各命令的详细功能见下面的说明: 1、stat命令不带参数,对于此命令,POP3服务器会响应一个正确应答,此响应为一个单行的信息提示,它以“+OK”开头,接着是两个数字,第一个是邮件数目,第二个是邮件的大小,如:+OK 4 1603(如图四的最末一行)2、list命令的参数可选,该参数是一个数字,表示的是邮件在邮箱中的编号,我们可以利用不带参数的list命令,获得各邮件的编号,并且每一封邮件均占用一行显示,前面的数为邮件的编号,后面的数为邮件的大小。
telnet收发邮件
telnet收发邮件以下全在命令行里实现开始--->运行--->cmd(腾迅QQ的邮件服务器不行。
可以链接,你输命令就断开了)接收新浪邮件1.链接telnet 110反回+OK pop3 proxy server ready2.输入帐号user ******反回+OK3.输入密码pass ******反回+OK4.列出新邮件list反回你的新邮件号和大小+OK1 40852 373983 90244 273895 276236 82587 11505.查看邮件retr 7(邮件号)反回邮件内容下面是命令的全过程+OK pop3 proxy server readyuser ******+OKpass ******+OKlist+OK1 40852 373983 90244 273895 276236 82587 1150.retr 7+OK发送新浪邮件1.链接服务器telnet 25反回220 ESMTP 2.和服务器打招呼ehloliuju(这个随便)反回250-8BITMIME250-SIZE 52428800250-AUTH PLAIN LOGIN250 AUTH=PLAIN LOGIN3.登陆服务器AUTH LOGIN反回334 VXNlcm5hbWU64.输入用户名bGl1anUxNTA=(用户名的base64编码)反回334 UGFzc3dvcmQ65.输入密码bG91YmxpdWp1(密码的base64编码)反回235 #2.0.0 OK Authenticated6.输入发送方邮件地址mail from:liuju150@反回250 sender <liuju150@> ok7.输入收件人地址rcpt to:liuju150@反回250 recipient <liuju150@> ok8.开始写信data反回354 go ahead9.开始写邮件Date:2009-7-6 21:40From:liuju150@To:liuju150@Subject:subject(邮件主题)这里写邮件的正文,记得和上面的Subject之间要有两个回车(空一行)到邮件的下面输入一个点,也要两个回车(空一行)输入得像我这样反回250 ok: Message 174716195 accepted下面是命令的全部反回结果220 ESMTPehloliuju250-8BITMIME250-SIZE 52428800250-AUTH PLAIN LOGIN250 AUTH=PLAIN LOGINAUTH LOGIN334 VXNlcm5hbWU6bGl1anUxNTA=334 UGFzc3dvcmQ6bG91YmxpdWp1235 #2.0.0 OK Authenticatedmail from:liuju150@250 sender <liuju150@> okrcpt to:liuju150@250 recipient <liuju150@> okdata354 go aheadDate:2009-7-6 21:43From:liuju150@To:liuju150@Subject:subjectbody 这里是邮件的正文,和下面还有上面要有两个空行最下面输入点.250 ok: Message 174716195 accepted//C#base64编码string strCmd = "liuju150";byte[] by = Encoding.Default.GetBytes(strCmd);strCmd = Convert.ToBase64String(by);在Telnet中Back Space键(退格))没有用输入错误了.回车重新来过。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一部分邮件传输协议SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)定义了邮件客户端软件与SMTP服务器之间,以及两台SMTP服务器间的通信规则。
SMTP服务器之间的通信规则。
SMTP协议中一共定义了18条命令,发送一封电子邮件的过程通常只需要使用其中6条命令,表1中按照发送命令的先后顺序列出了这6条命令,并描述了其语法格式及功能说明,其中,<SP>代表空格,<CRLF>代表回车和换行。
表1SMTP命令及格式说明ehlo<SP><domain><CRLF> ehlo命令是SMTP邮件发送程序与SMTP邮件接收程序建立连接后必须发送的第一条SMTP命令。
参数<domain>表示SMTP邮件发送者的主机名。
ehlo命令用于替代传统SMTP协议中的helo命令auth<SP><para><CRLF> 如果SMTP邮件接收程序需要SMTP邮件发送程序进行认证时,它会向SMTP邮件发送程序提示它所采用的认证方式,SMTP邮件发送程序接着应该使用这个命令回应SMTP邮件接收程序,参数<para>表示回应的认证方式,通常是SMTP邮件接收程序先前提示的认证方式。
mail<SP>from:<reverse-path><CRLF> 此命令用于指定邮件发送者的邮箱地址,参数<reverse-path>表示发件人的邮箱地址。
rept<SP>to:<forword-path><CRLF> 此命令用于指定邮件接收者的邮箱地址,参数<forword-path>表示接收者的邮箱地址。
如果邮件要发送多个接收者,那么应使用多条rept<SP>to命令来分别指定每一个接收者的邮箱地址。
data<CRLF> 此命令用于表示SMTP邮件发送程序准备开始传送邮件内容,在这个命令后面发送的所有数据都将被当做邮件内容,直至遇到“<CRLF>.<CRLF>”标志符,则表示邮件内容结束。
quit<CRLF> 此命令表示要结束邮件发送过程,SMTP邮件接收程序接收到此命令后,将关闭与SMTP邮件发送程序的网络连接。
对于SMTP邮件发送程序发送的每一条命令,SMTP邮件程序接收程序都将回应一条响应信息。
每条响应信息都以一个响应状态码开发如下所示:250 ok响应状态吗用于表示SMTP服务器对请求命令的处理结果和状态,它是一个三位的十进制数。
响应状态码的最高位数字代表了不同的分类,当其为2时表示命令执行成功,为5时表示命令执行失败。
为3时表示命令没有完成。
动手实践:借助telnet程序手工发送邮件1)在sina()中申请两个电子邮件地址,笔者在使用的两个邮箱分别为jspdevelop@和fpwjp@,第一个邮箱的登录为:javamail,读者应注册自已的电子邮箱进行实验。
2)要给某个SMTP服务器发送邮件,首先要获知该SMTP服务器的主机名,其中新浪的SMTP服务器主机名为 25。
3)当SMTP服务器要对邮件客户端软件进行用户身份验证时,邮件客户端软件需要对用户名和密码进行BASE64编码后再传递给SMTP服务器,因此要编写一个能对用户名和密码进行BASE64编码的工具程序。
下面是用Java 语言编写的一个对用户名和密码分别进行BASE64编码的工具程序。
例:BASE64Util.javaimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import sun.misc.BASE64Encoder;class BASE64Util{public static void main(String[] args) throws IOException{System.out.println("请输入用户名:");BufferedReader in=new BufferedReader(new InputStreamReader(System.in));String userName=in.readLine();System.out.print("请输入密码:");String password=in.readLine();BASE64Encoder encoder=new BASE64Encoder();System.out.println("编码后的用户名为:"+encoder.encode(userName.getBytes()));System.out.println("编码后的密码为:"+encoder.encode(password.getBytes()));}}启动windows命令行窗口,编译并运行这个Java程序,接着根据程序的提示输入已注册的sina邮箱的用户名和密码。
如图1-1所示。
图1-14)重新开启一个windows命令行窗口,使用telnet命令连接到sina的SMTP服务器的25号端口,即在命令行窗口中输入如下一行内容。
telnet 25该命令的正常执行结果如图1-2所示。
图1-2图1-2中显示的内容是服务器返回给客户端的响应信息,其中包含三部分内容,各部分的意义如下:●220是邮件服务器返回给客户的响应状态码,它表示邮件服务器准备就绪(service ready)。
●表示当前进行的响应的邮件服务器的主机名。
●ESMTP表示当前邮件服务器支持扩展SMTP协议。
5)SMTP发送者程序与SMTP接收者程序建立连接后,接着应该使用ehlo命令向SMTP接收程序发送问候信息。
由于当前运行Telnet程序的计算机根本就没有在Internet上注册的主机名,所以这里随便使用一个名称(jspdevelop)来表示ehlo 命令中主机名。
发送ehlo命令后,邮件服务器返回如图1-3所示的结果。
图1-36)在图1-3中接着输入如下一行命令:auth loginSMTP服务器返回如图1-4所示的响应信息。
图1-4SMTP服务器返回的响应状态码为334,它表示SMTP服务器正在等待客户端输入认证信息。
这时将命令行窗口中,选中经过BASE64编码后得到的用户名,复制过来,然后将BASE64编码的密码复制过来,完成认证后的结果如图1-5所示。
图1-57)接着输入mail from命令,将邮件发送者的地址填写为在sina上注册的邮箱地址jspdevelop@,执行效果如图1-6所示。
mail from:<jspdevelop@>邮件服务器返回一个250的响应状态码,代表当前操作执行成功。
图1-6注意:SMTP协议不要求SMTP邮件接收服务器对mail from命令后面输入的邮件地址进行验证,也就是说,mail from命令后面的邮件地址可以不是发件人的真实邮箱地址,而可以是其他人的邮箱地址。
8)接着输入rept to命令,将邮件接收者的地址填写收件的邮箱地址fpwjp@,执行效果如图1-7所示:rept to:<fpwjp@>图1-7邮件服务器返回一个250的响应状态码,代表当前操作执行成功。
SMTP协议允许在一个连接通道中执行多条rept to 命令,每一条命令分别指定一个邮件接收者,这样就可以把一封邮件同时发送给多个发收件人。
如果图9)接着输入data命令,表示后面将传送邮件内容。
邮件服务器返回354的响应状态码,并等待客户端输入邮件内容。
接着输入邮件内容。
最后在单独的一行上输入一个“.”作为邮件内容的结束标记,如图1-8所示。
图1-810)接着输入quit命令,结束整个邮件的传输过程。
SMTP服务器接收到客户端发送的quit命令后,将断开与客户端的网络连接,Telnet程序结束运行,windows命令行窗口退回到DOS提示符状态。
11)登录到fpwjp邮件中来查看刚才发送的邮件。
使用OutLook Express收取这封邮件的效果如图1-9所示。
图1-9第二部分POP3协议POP3(Post Office Protocol)协议定义了邮件客户端程序与POP3服务器进行通信。
POP3协议,它采用的网络监听端口号默认为110。
POP3协议共定义了12条POP3命令,邮件客户端程序通过这些命令检索和获取用户电子邮箱中的邮件信息。
表2中列举出了这12条POP3命令及其说明,其中,<SP>代表空格,<CRLF>代表回车和换行。
表2命令及其使用格式说明user<SP>username<CRLF> user命令是POP3客户端程序与POP3邮件服务器建立连接通常发送的第一条命令,参数username表示收件人账户名称。
pass<SP>password<CRLF> Pass命令是在user命令成功通过后,POP3客户端程序接着发送的命令,它用于传递账户的密码,参数password表示账户的密码。
apop<SP>name.digest<CRLF> Apop命令用于替代user和pass命令,它以MD5数字摘要的形式向POP3邮件服务器提交账户密码。
stat<CRLF> stat命令用于查询邮箱中的统计信息,例如,邮箱中有邮件数和邮件占用的字节大小等。
uidl<SP>msg#<CRLF> uidl命令用于查询某封邮件的唯一标志符,参数msg#表示邮件的序号,是一个1开始编号的数字。
list<SP>[msg#]<CRLF> List命令用于列出邮箱中邮件信息,参数msg#是一个可选参数,表示邮件的序号。
当不指定参数时,POP3服务器列出邮箱中所有的邮件信息,当指定参数msg#时,POP3服务器只返回该号对应的邮件的信息。
rert<SP>msg#<CRLF> list命令用于获取某封邮件的内容,参数msg#表示邮件的序号。
dele<SP>msg#<CRLF> Dele命令用于在某封邮件上设置删除标记,参数msg#表示邮件的序号。
POP3服务器执行dele命令时,只是为邮件设置了删除标记,并没有真正把邮件删除掉,只有POP3客户端程序发出quit命令后,POP3服务器才会真正删除所有设置了删除标记的邮件rset<CRLF> rset命令用于清除所有邮件的删除标记top<SP>msg#<SP>n<CRLF> Top命令用于获取某封邮件的邮件头和邮件体中前n行内容,参数msg#表示邮件的序号,参数n表示要返回邮件的前几行内容。