Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。 但由于telnet通信未加密,存在很大的安全隐患,一般很少使用。

测试smtp

SMTP 电子邮件从客户机传输到服务器或从某一个服务器传输到另外一个服务器所使用的传输协议。

请求/响应协议,命令和响应都基于ASCII文本,并以CR/LF结束。响应包括一个表示返回状态的三位数字代码。

SMTP在TCP协议25号端口监听连接请求。

SMTP 命令

  • HELO 向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。
  • EHLO 向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。
  • MAIL FROM 命令中指定的地址是发件人地址
  • RCPT TO 标识单个的邮件接收人;可有多个 RCPT TO;常在 MAIL 命令后面。
  • DATA 在单个或多个 RCPT 命令后,表示所有的邮件接收人已标识,并初始化数据传输,以 CRLF.CRLF 结束
  • VRFY 用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令
  • EXPN 验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用
  • HELP 查询服务器支持什么命令
  • NOOP 无操作,服务器应响应 OK
  • RSET 重置会话,当前传输被取消
  • QUIT 结束会话

简单测试

[vismgr@demoerp ~]# telnet mail.egolife.com 25
Trying 192.168.1.10...
Connected to mail.egolife.com.
Escape character is '^]'.
220 egolife.com (IMail 9.23 574278-2) NT-ESMTP Server X1
EHLO demoerp.egolife.com
250-egolife.com says hello
250-SIZE 0
250-8BITMIME
250-DSN
250-ETRN
250-AUTH LOGIN CRAM-MD5
250-AUTH LOGIN
250-AUTH=LOGIN
250 EXPN
MAIL FROM:[email protected]
250 ok
RCPT TO:[email protected]
250 ok its for <[email protected]>
DATA
354 ok, send it; end with <CRLF>.<CRLF>
Subject:telnet smtp test

This is a test message with telnet smtp
.
250 Message queued
quit
221 Goodbye
Connection closed by foreign host.

测试pop3

POP3协议规定个人计算机连接到邮件服务器和下载电子邮件的协议。是Internet电子邮件的第一个离线协议标准,允许用户从服务器上把邮件存储到本地,同时删除保存在邮件服务器上的邮件。

POP3服务器遵循POP3协议,用来接收电子邮件。

POP3 命令

  • USER username 认证用户名
  • PASS password 认证密码认证,认证通过则状态转换
  • APOP name,digest 认可一种安全传输口令的办法,执行成功导致状态转换,请参见 RFC 1321 。
  • STAT 处理请求 server 回送邮箱统计资料,如邮件数、 邮件总字节数
  • UIDL n 处理 server 返回用于该指定邮件的唯一标识, 如果没有指定,返回所有的。
  • LIST n 处理 server 返回指定邮件的大小等
  • RETR n 处理 server 返回邮件的全部文本
  • DELE n 处理 server 标记删除,QUIT 命令执行时才真正删除
  • RSET 处理撤消所有的 DELE 命令
  • TOP n,m 处理 返回 n 号邮件的前 m 行内容,m 必须是自然数
  • NOOP 处理 server 返回一个肯定的响应
  • QUIT 希望结束会话。如果 server 处于”处理” 状态,则现在进入”更新”状态,删除那些标记成删除的邮件。如果 server 处于”认可”状态,则结束会话时 server 不进入”更新”状态 。

简单测试

[root@oatest ~]$ telnet mail.egolife.com 110
Trying 192.168.1.10...
Connected to mail.egolife.com.
Escape character is '^]'.
+OK X1 NT-POP3 Server egolife.com (IMail 9.23 29760096-6710)
user gfw
+OK send your password
pass noitcesti
+OK maildrop locked and ready
list
+OK 304 messages (5041576 octets)
1 700
2 749
... ...
retr 1 
+OK 700 octets
Received: from dev.egolife.com [192.168.1.10] by egolife.com with ESMTP
  (SMTPD-9.23) id AC332EF0; Mon, 20 Aug 2012 23:48:03 +0800
Received: by dev.egolife.com (Postfix, from userid 501)
	id 469EE78050; Mon, 20 Aug 2012 23:55:01 +0800 (CST)
To: [email protected]
Subject: 2012-08-20 23:55:01:dev.egolife.com dba daily check of alert
Message-Id: <[email protected]>
Date: Mon, 20 Aug 2012 23:55:01 +0800 (CST)
From: [email protected]
X-RCPT-TO: <[email protected]>
Status: `
X-UIDL: 639033796
X-IMail-ThreadID: 5c33009b0000b7e5

ORA-959 signalled during: alter tablespace dev add datafile '/db/oracle/oradata/prod/dev.dbf' size 100k...

.
dele 1
+OK msg deleted
stat
+OK 303 5040876
quit
+OK POP3 Server saying Good-Bye
Connection closed by foreign host.

测试IMAP

IMAP与POP协议有很大的不同,最明显的一点是发送的每条命令前面都带有一个标识,发送一条命令后可以紧接着发送另一条命令,服务端返回命令的处理结果的顺序是未知的。

待补充…

参考



blog comments powered by Disqus

Published

21 March 2013

Categories

Tags

Github