ESMTP协议与SMTP协议

使用smtp协议发送邮件 1 打开权限 打开邮箱的POP3/SMTP权限,发送和接收的邮箱都要打开,否则邮件无法发送成功。 注意!打开权限时,邮箱会提供/要求你设置权限码,此权限码即是下面通信时需要用到的密码,而非登录邮箱的密码。 我使用qq邮箱给126邮箱发邮件,所以将两个邮箱的权限都打开了: 2 登录邮箱 打开终端,输入: telnet smtp.qq.com 25 其中smtp.qq.com为服务器,25为... 阅读详情

ESMTP身份验证的机制有很多种,最常见的是LOGIN机制,类似于POP3的身份验证方式,即分两步输入账号和密码。在所有的验证机制中,信息全部采用Base64编码。 

例如,用smtp.elong.com邮件服务器发送邮件,从开始连接到身份验证的过程如下(红色和蓝色分别代表客户端和服务器): 

(连接到smtp.elong.com:25)
220 sp1 ESMTP v2.1
EHLO ABCDEFG
250-smtp.elong.com
250-PIPELINING
250-SIZE 20480000
250-ETRN
250-AUTH LOGIN PLAIN DIGEST-MD5 CRAM-MD5  (支持的身份验证机制种类: LOGIN, PLAIN等)
250 8BITMIME
AUTH LOGIN
334 VXNlcm5hbWU6                      (Base64解码后: Username:)
Ymh3YW5n                              (Base64编码前: bhwang)
334 UGFzc3dvcmQ6                      (Base64解码后: Password:)
bXlwYXNzd29yZCFteXBhc3N3b3JkISE=      (Base64编码前: ********)
235 Authentication successful

另外一种较常见的机制是PLAIN。与LOGIN机制的不同之处在于一次性输入账号和密码,格式为“<NUL>账号<NUL>密码”,其中<NUL>为字节0。用PLAIN机制代替上面的身份验证过程: 

AUTH PLAIN
334 
AGJod2FuZwBteXBhc3N3b3JkIW15cGFzc3dvcmQhIQ==  (Base64编码前: <NUL>bhwang<NUL>********)
235 Authentication successful

有的ESMTP服务器,例如采用CoreMail系统的smtp.163.com, smtp.163.net, smtp.tom.com, smtp.netease.com等,不回复334代码行,客户端在输入AUTH PLAIN后,直接输入符合格式要求的账号和密码即可。 

LOGIN和PLAIN机制没有对账号和密码进行加密,相当于明文传输,Base64编码只是一层纸而已。DIGEST-MD5, CRAM-MD5, GSSAPI, KERBEROS_V4等身份验证机制能够加密传输内容。

 

 

 SMTP(Simple Mail TransferProtocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,或者说是由它来控制信件传输的一种中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,我们就可以把Email寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转电子邮件。

  SMTP的开发最初是为了在封闭的网络中传送相对来说不太重要的简短邮件,而不是为了在互联网中传送重要而敏感的信息,因此最初通过SMTP传输邮件时,安全性不高。

SMTP协议常用命令集

1.SMTP是工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器
2.SMTP是个请求/响应协议,命令和响应都是基于ASCII文本,并以CR和LF符结束。响应包括一个表示返回状态的三位数字代码
3.SMTP在TCP协议25号端口监听连接请求
4.连接和发送过程:
a.建立TCP连接
b.客户端发送HELO命令以标识发件人自己的身份,然后客户端发送MAIL命令服务器端正希望以OK作为响应,表明准备接收
c.客户端发送RCPT命令,以标识该电子邮件的计划接收人,可以有多个RCPT行服务器端则表示是否愿意为收件人接受邮件
d.协商结束,发送邮件,用命令DATA发送
e. 以.表示结束输入内容一起发送出去
f.结束此次发送,用QUIT命令退出。
5.另外两个命令:
VRFY---用于验证给定的用户邮箱是否存在,以及接收关于该用户的详细信息。
EXPN---用于扩充邮件列表。

6.邮件路由过程:
  SMTP服务器基于‘域名服务DNS中计划收件人的域名来路由电子邮件。SMTP服务器基于DNS中的MX记录来路由电子邮件,MX记录注册了域名和相关的SMTP中继主机,属于该域的电子邮件都应向该主机发送。

若SMTP服务器mail.cnpaf.com收到一封信要发到mail@cnpaf.net:

a.Sendmail请求DNS给出主机mail.cnpaf.net的CNAME记录,如有,假若CNAME到mail.cnpaf.net,则再次请求mail.cnpaf.net的CNAME记录,直到没有为止
b.假定被CNAME到mail.cnpaf.net,然后sendmail请求@abc.com域的DNS给出mail.cnpaf.net的MX记录
shmail    MX   5   mail.cnpaf.net
           0   shmail2.abc.com
c. Sendmail最后请求DNS给出mail.cnpaf.net的A记录,即IP地址,若返回值为1.2.3.4
d. Sendmail与1.2.3.4连接,传送这封给mail@cnpaf.net的信到1.2.3.4这台服务器的SMTP后台程序

7.SMTP基本命令集:

命令       描述
------------------------------
HELO      向服务器标识用户身份发送者能欺骗,说谎,但一般情况下服务器都能检测到。

MAIL      初始化邮件传输
          mail form :
RCPT      标识单个的邮件接收人;常在MAIL命令后面  可有多个rcpt to:
DATA      在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输结束。
VRFY      用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令
EXPN      验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用
HELP      查询服务器支持什么命令
NOOP      无操作,服务器应响应OK
QUIT      结束会话
RSET      重置会话,当前传输被取消
--------------------------------

8. MAIL form 命令中指定的地址是称作 envelope form地址,不需要和发送者自己的地址是一致的。
     RCPT TO 与之等同,指明的接收者地址称为envelope to地址,而与实际的to:行是什么无关。
9.为什么没有RCPT CC和RCPT BCC:?
   所有的接收者协商都通过RCPT TO命令来实现,如果是BCC,则协商发送后在对方接收时被删掉信封接收者
10.邮件被分为信封部分,信头部分和信体部分
   envelope form , envelope to 与message form:, message to:完全不相干。
   evnelope是由服务器主机间SMTP后台提供的,而message form /to是由用户提供的。有无冒号也是区别。

11. 怎样由信封部分检查是否一封信是否是伪造的?
a. received行的关联性。
   现在的SMTP邮件传输系统,在信封部分除了两端的内部主机处理的之个,考虑两个公司防火墙之间的部分,若两台防火墙机器分别为A和B,但接收者检查信封received:行时发现经过了C.则是伪造的。
b. received:行中的主机和IP地址对是否对应如:
   Receibed: form galangal.org (turmeric.com [104.128.23.115] by mail .bieberdorf.edu....
c. 被人手动添加在最后面的received行:
    Received: form galangal.org ([104.128.23.115]) by mail .bieberdorf.edu (8.8.5)
    Received: form  lemongrass.org by galangal.org (8.7.3)
    Received: form  graprao.com by lemongrass.org (8.6.4)


POP3命令列表:
一般telnet pop3Server110后就可以用这些命令了,大小写不敏感,不包括口令本身,注意不要让口令回显,等验证通过后再允许回显好了。

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 client希望结束会话。如果server处于'处理'状态,则现在进入'更新'状态,删除那些标记成删除的邮件。如果server处于'认可'状态,则结束会话时server不进入'更新'状态

关于apop命令

如果client使用user命令,口令将是明文。使用apop命令时,client第一次与server连接时,server向client发送一个ascii码问候,该问候由一个字符串组成,它对于每个client的连接都是唯一的,client把它的纯文本口令附加到从server接收到的字符串之后,然后计算结果字符串的MD5摘要,client把username和MD5摘要作为apop命令的参数一起发送出去。

telnet pop3Server 110
user username
pass ****
stat
list
retr 1
retr 2
...
dele 1
dele 2
...
quit

 

SMTP 命令简介

什么是 SMTP
SMTP (Simple Mail Transfer Protocol) :电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25端口监听连接请求。

什么是 ESMTP
ESMTP (Extended SMTP),顾名思义,扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP发信时,服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与 SMTP 方式没有两样。

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

连接 Winmail Server 使用 SMTP 命令发送邮件
例如:安装 Winmail 的邮件服务器IP是192.168.0.1 (蓝色字体内容由客户端输入,红色字体内容是服务返回的)

telnet 192.168.0.1 25--------------------------------------- 使用 telnet 命令连接服务器 25端口
Trying 192.168.0.1...--------------------------------------- 正在连接服务器 25 端口
Connected to 192.168.0.1.----------------------------------- 连接服务器 25 端口成功
220 Winmail Mail Server ESMTP ready------------------------- 显示服务器的标识名称 (Winmail管理工具->高级设置->系统参数->基本参数中可更改)
helo cnu.com------------------------------------------------向服务器标识用户身份,发信不要认证,跳过下面几步直接发送 mail from 命令
250 Winmail Mail Server
ehlo cnu.com------------------------------------------------ ESMTP命令,发信需要认证。
250-Winmail Mail Server
250-PIPELINING
250-AUTH=LOGIN PLAIN
250-AUTH LOGIN PLAIN
250-SIZE 20480000
250 8BITMIME
auth login------------------------------------------------- 进行用户身份认证
334 VXNlcm5hbWU6 
Y29zdGFAYW1heGl0Lm5ldA==----------------------------------- BASE64 加密后的用户名
334 UGFzc3dvcmQ6 
MTk4MjIxNA==----------------------------------------------- BASE64 加密后的密码
235 auth successfully-------------------------------------- 身份认证成功
(535 auth failure------------------------------------------ 身份认证失败)
发到本系统中域名下的账户可跳过身份认证。
mail from:<test1@domain.com>------------------------------ mail from 地址 test1@domain.com
250 ok----------------------------------------------------- 命令执行成功
rcpt to:<test2@domain.com>-------------------------------- 递送给地址 test2@domain.com
250 ok----------------------------------------------------- 命令执行成功
data-------------------------------------------------------数据传输初始化
354 go ahead----------------------------------------------- 开始传输数据
From: test1@domain.com
To: test2@domain.com
Date: Mon, 25 Oct 2004 14:24:27 +0800
Subject: test mail

Hi, test2
This is a test mail, you don't reply it.

.
------------------------------------------------------------数据内容,包括BASE64加密后的邮件内容, 以 CRLF.CRLF 结束数据传输
250 ok message accepted for delivery----------------------- 命令执行成功
quit------------------------------------------------------- 结束会话
221  Winmail MailServer
Connection closed by foreign host.------------------------- 断开连接

 

 

SMTP示例:


5.2.  Mail Forwarding

   When Alice sends a message to Bob at his almamater.edu.example
   account, the SMTP session from her SUBMIT server might look something
   like this:

      S: 220 almamater.edu.example ESMTP server ready
      C: EHLO example.com
      S: 250-almamater.edu.example
      S: 250-DSN
      S: 250-AUTH
      S: 250-SUBMITTER
      S: 250 SIZE
      C: MAIL FROM:<alice@example.com> SUBMITTER=alice@example.com
      S: 250 <alice@example.com> sender ok
      C: RCPT TO:<bob@almamater.edu.example>
      S: 250 <bob@almamater.edu.example> recipient ok
      C: DATA
      S: 354 okay, send message
      C: (message body goes here)
      C: .
      S: 250 message accepted
      C: QUIT
      S: 221 goodbye

   The almamater.edu.example MTA must now forward this message to
   bob@company.com.example.  Although the original sender of the message
   is alice@example.com, Alice is not responsible for this most recent
   retransmission of the message.  That role is filled by
   bob@almamater.edu.example, who established the forwarding of mail to
   bob@company.com.example.  Therefore, the almamater.edu.example MTA
   determines a new purported responsible address for the message,
   namely, bob@almamater.edu.example, and sets the SUBMITTER parameter
   accordingly.  The forwarding MTA also inserts a Resent-From header in
   the message body to ensure the purported responsible address derived
   from the RFC 2822 headers matches the SUBMITTER address.

      S: 220 company.com.example ESMTP server ready
      C: EHLO almamater.edu.example
      S: 250-company.com.example
      S: 250-DSN
      S: 250-AUTH
      S: 250-SUBMITTER
      S: 250 SIZE
      C: MAIL FROM:<alice@example.com>
              SUBMITTER=bob@almamater.edu.example
      S: 250 <alice@example.com> sender ok
      C: RCPT TO:<bob@company.com.example>
      S: 250 <bob@company.com.example> recipient ok
      C: DATA
      S: 354 okay, send message
      C: Resent-From: bob@almamater.edu.example
      C: Received By: ...
      C: (message body goes here)
      C: .
      S: 250 message accepted
      C: QUIT
      S: 221 goodbye

5.3.  Mobile User

   Alice is at the airport and uses her mobile e-mail device to send a
   message to Bob.  The message travels through the carrier network
   provided by mobile.net.example, but Alice uses her example.com
   address on the From line of all her messages so that replies go to
   her office mailbox.

   Here is an example of the SMTP session between the MTAs at
   mobile.net.example and almamater.edu.example.

      S: 220 almamater.edu.example ESMTP server ready
      C: EHLO mobile.net.example
      S: 250-almamater.edu.example
      S: 250-DSN
      S: 250-AUTH
      S: 250-SUBMITTER
      S: 250 SIZE
      C: MAIL FROM:<alice@example.com>
              SUBMITTER=alice@mobile.net.example
      S: 250 <alice@example.com> sender ok
      C: RCPT TO:<bob@almamater.edu.example>
      S: 250 <bob@almamater.edu.example> recipient ok
      C: DATA
      S: 354 okay, send message
      C: Sender: alice@mobile.net.example
      C: Received By: ...
      C: (message body goes here)
      C: .
      S: 250 message accepted
      C: QUIT
      S: 221 goodbye

   Note that mobile.net.example uses the SUBMITTER parameter to
   designate alice@mobile.net.example as the responsible submitter for
   this message.  Further, this MTA also inserts a Sender header to
   ensure the purported responsible address derived from the RFC 2822
   headers matches the SUBMITTER address.

   Likewise, conventional ISPs may also choose to use the SUBMITTER
   parameter to designate as the responsible submitter the user’s
   address on the ISP’s network if that address is different from the
   MAIL FROM address.  This may be especially useful for ISPs that host
   multiple domains or otherwise share MTAs among multiple domains.

   When the message is subsequently forwarded by the
   almamater.edu.example MTA, that MTA will replace the SUBMITTER
   parameter with bob@almamater.edu.example as in Section 5.2 and add
   its own Resent-From header.

5.4.  Guest E-Mail Service

   While on a business trip, Alice uses the broadband access facilities
   provided by the Exemplar Hotel to connect to the Internet and send
   e-mail.  The hotel routes all outbound e-mail through its own SMTP
   server, email.hotel.com.example.

   The SMTP session for Alice’s message to Bob from the Exemplar Hotel
   would look like this:

      S: 220 almamater.edu.example ESMTP server ready
      C: EHLO email.hotel.com.example
      S: 250-almamater.edu.example
      S: 250-DSN
      S: 250-AUTH
      S: 250-SUBMITTER
      S: 250 SIZE
      C: MAIL FROM:<alice@example.com>
              SUBMITTER=guest.services@email.hotel.com.example
      S: 250 <alice@example.com> sender ok
      C: RCPT TO:<bob@almamater.edu.example>
      S: 250 <bob@almamater.edu.example> recipient ok
      C: DATA
      S: 354 okay, send message
      C: Resent-From: guest.services@email.hotel.com.example
      C: Received By: ...
      C: (message body goes here)
      C: .
      S: 250 message accepted
      C: QUIT
      S: 221 goodbye

   Note that email.hotel.com.example uses the SUBMITTER parameter to
   designate a generic account guest.services@email.hotel.com.example as
   the responsible submitter address for this message.  A generic
   account is used since Alice herself does not have an account at that
   domain.  Furthermore, this client also inserts a Resent-From header
   to ensure the purported responsible address derived from the RFC 2822
   headers with the SUBMITTER address.

   As before, when the message is subsequently forwarded by the
   almamater.edu.example MTA, that MTA will replace the SUBMITTER
   parameter with bob@almamater.edu.example as in Section 5.2 and add
   its own Resent-From header.

5.5.  SUBMITTER Used on a Non-Delivery Report

   Alice sends an incorrectly addressed e-mail message and receives a
   non-delivery report from a SUBMITTER-compliant server.

      S: 220 example.com ESMTP server ready
      C: EHLO almamater.edu.example
      S: 250-example.com
      S: 250-DSN
      S: 250-AUTH
      S: 250-SUBMITTER
      S: 250 SIZE
      C: MAIL FROM:<> SUBMITTER=mailer-daemon@almamater.edu.example
      S: 250 OK
      C: RCPT TO:<alice@example.com>
      S: 250 OK
      C: DATA
      S: 354 OK, send message
      C: (message body goes here)
      C: .
      S: 250 message accepted
      C: QUIT
      S: 221 goodbye

 

SMTP协议在发送SMTP和接收SMTP之间的会话是靠发送SMTP的SMTP命令和接收SMTP反馈的应答来完成的。在通讯链路建立后,发送SMTP发送MAIL命令指令邮件发送者,若接收SMTP此时可以接收邮件则作出OK的应答,然后发送SMTP继续发出RCPT命令以确认邮件是否收到,如果接收到就作出OK的应答,否则就发出拒绝接收应答,但这并不会对整个邮件操作造成影响。双方如此反复多次,直至邮件处理完毕。SMTP协议共包含10个SMTP命令,列表如下:

  SMTP命令说明

  HELLO<domain><CRLF>识别发送方到接收SMTP的一个HELLO命令

  MAILFROM:<reverse-path><CRLF><reverse-path>为发送者地址。此命令告诉接收方一个新邮件发送的开始,并对所有的状态和缓冲区进行初始化。此命令开始一个邮件传输处理,最终完成将邮件数据传送到一个或多个邮箱中。

  RCPTTO:<forward-path><CRLF><forward-path>标识各个邮件接收者的地址

  DATA<CRLF>

  接收SMTP将把其后的行为看作邮件数据去处理,以<CRLF>.<CRLF>标识数据的结尾。

  REST<CRLF>退出/复位当前的邮件传输

  NOOP<CRLF>要求接收SMTP仅做OK应答。(用于测试)

  QUIT<CRLF>要求接收SMTP返回一个OK应答并关闭传输。

  VRFY<string><CRLF>验证指定的邮箱是否存在,由于安全因素,服务器多禁止此命令。

  EXPN<string><CRLF>验证给定的邮箱列表是否存在,扩充邮箱列表,也常禁止使用。

  HELP<CRLF>查询服务器支持什么命令

  注:<CRLF>为回车、换行,ASCII码分别为13、10(十进制)。

  SMTP协议的每一个命令都会返回一个应答码,应答码的每一个数字都是有特定含义的,如第一位数字为2时表示命令成功;为5表失败;3表没有完成。一些较复杂的邮件程序利用该特点,首先检查应答码的首数字,并根据其值来决定下一步的动作。下面将SMTP的应答码列表如下:

  应答码说明

  501参数格式错误

  502命令不可实现

  503错误的命令序列

  504命令参数不可实现

  211系统状态或系统帮助响应

  214帮助信息

  220<domain>服务就绪

  221<domain>服务关闭

  421<domain>服务未就绪,关闭传输信道

  250要求的邮件操作完成

  251用户非本地,将转发向<forward-path>

  450要求的邮件操作未完成,邮箱不可用

  550要求的邮件操作未完成,邮箱不可用

  451放弃要求的操作;处理过程中出错

  551用户非本地,请尝试<forward-path>

  452系统存储不足,要求的操作未执行

  552过量的存储分配,要求的操作未执行
  
553邮箱名不可用,要求的操作未执行

  354开始邮件输入,以"."结束

  554操作失败

SMTP协议分析 XXX具有如下的规律:以2开头的表示成功,以4和5开头的表示失败,以3开头的表示未完成(进行中)。针对缺点2),标准化组织在兼容SMTP的前提下,提出了传送非7位ASCII码的方法,对应的RFC文档有两个:邮件首部的扩充对应于RFC1522,邮件正文的扩充对应与RFC1521(即MIME)。甲与乙书信往来,甲通过邮局向乙发信,邮局间转交邮件可 看成使用了SMTP协 议,至于书信的格式则会因为地区习惯等的不同而不同(中国人的书信格式和美国人的书信格式不同),这个书信格式则可看成是邮件格式标准。 阅读详情

相关推荐

39、SMTP协议扩展与安全漏洞剖析

本文详细剖析了SMTP协议的扩展功能及其存在的安全漏洞,涵盖访问控制、认证机制、拒绝服务、DNS相关漏洞、邮件中继、流量隐私等多个方面。文章还分析了常见的SMTP攻击类型,如账户破解、监听侦察等,并提出了具体的防范建议。通过加强认证、加密通信、访问控制、安全审计等措施,可有效提升邮件系统的安全性。

jj890的博客 182

解析邮件ESMTP安全传输的重要性

是对标准SMTP协议的扩展,增加了额外的功能,以便能够交换更复杂的电子邮件信息。与SMTP相比,ESMTP要求用户提供用户名和密码进行身份验证,以防止未经授权的访问。传输了很多次可以看到用到了各种协议,加密的,非加密的,无验证的,除了客户端连接内部服务器外,当然我们要确保邮件在外部传输,特别是服务器与服务器之间传输尽量是安全的SSL或者更高版本的TLS。最近有IT小伙伴咨询我们:“我们的邮件传输是否走了加密通道?它不需要验证用户帐户,因此在使用SMTP发送邮件时,不会要求用户提供用户名和密码进行身份验证。

weixin_67101003的博客 456

Android Profiler实战:如何用CPU分析工具揪出卡顿元凶(附线程状态解读)

本文深入解析Android Profiler中的CPU分析工具,重点聚焦线程活动监控。通过解读线程状态时间轴上的绿、黄、灰三色含义,并结合实战案例,指导开发者精准定位导致界面卡顿的CPU密集型或I/O阻塞代码,有效提升应用性能与用户体验。

weixin_29197699的博客 372

SMTP、ESMTP、POP3发送接收邮件

什么是 SMTPSMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25 端口监听连接请求。

~飞 鸟 (*^__^*) 天 堂~ 3290

从零构建AI辅助逆向分析环境:JADX-MCP与LLM的实战集成指南

本文详细介绍了如何从零构建AI辅助逆向分析环境,通过集成JADX-MCP与LLM技术,提升Android应用逆向工程效率。文章涵盖环境搭建、插件安装、MCP服务器配置及实战案例分析,帮助开发者快速掌握AI在代码理解、漏洞挖掘和自动化文档生成中的应用。

weixin_27875131的博客 839

NVMe-MI --- Message Servicing Model(消息服务模型)

本文主要介绍NVMe-MI消息服务模型,两个主要类别是请求消息和响应消息。并介绍带外机制消息服务状态机。

智小星的博客 2011

如何使用telnet给qq邮箱发邮件

qq邮箱使用了加密的smtp,所以首先要打开QQ邮箱进行设置,下面是开启SMTP的方法(应该前两排就够用了,我直接全打开了…) 打开qq邮箱之后就可以进行下一步操作啦。 首先cmd召唤出telnet – telnet smtp.qq.com 220 smtp.qq.com Esmtp QQ Mail Server (已经进来了) – helo smtp.qq.com 250 smtp.qq.co...

weixin_43915129的博客 1617

555时基芯片的5种经典电路设计:从方波发生器到PWM调光实战

本文深入解析了555时基芯片的5种经典电路设计,从基础的无稳态方波发生器、单稳态触发器,到实用的占空比可调PWM信号源,并重点介绍了如何引入TVS保护电路增强系统鲁棒性。最后通过一个带保护的PWM LED调光台灯实战项目,综合展示了信号生成、功率驱动与电路保护的核心技术,是电子爱好者掌握模拟电路设计与应用的绝佳指南。

weixin_29207439的博客 490

电子邮件基础

  上个世纪七十年代,电子邮件从实验室中诞生,随着网络技术的发展和普及,电子邮件在上世纪八十年代迎来了大爆发,逐渐称为一种主流的通讯工具,在即时通讯工具出现以前,电子邮件占领了网络通讯的主流  上个世纪七十年代,电子邮件从实验室中诞生,随着网络技术的发展和普及,电子邮件在上世纪八十年代迎来了大爆发,逐渐称为一种主流的通讯工具,在即时通讯工具出现以前,电子邮件占领了网络讯的。   在聊邮件传输协议之前,我专门去百度和谷歌上去找了一下关于电子邮件的定义,百度百科给出的定义是:电子邮件是一种利用电子手段提供信息交

sinat_41117967的博客 7311

Gemini 3.1 Flash本地部署实操:Ollama+Open WebUI零门槛运行指南

大型语言模型(LLM)本地运行是指将模型权重下载至本地设备,通过推理引擎完成离线推理的过程;其核心原理依赖量化压缩(如GGUF格式)与轻量级运行时(如Ollama)实现CPU/GPU高效加载;技术价值在于低延迟响应、数据隐私可控及免网络依赖;典型应用场景包括办公提效(邮件/周报生成)、学生学习辅助、产品原型验证等边缘AI任务;本文聚焦Gemini 3.1 Flash这一面向消费级硬件优化的轻量模型变体,结合Ollama模型管理与Open WebUI图形界面,提供从环境准备、模型拉取到流式对话的完整新手实操路

weixin_32238157的博客 490

从零组装一台会‘看’的无人机:手把手教你配置NUC机载电脑与D435深度相机(环境搭建篇)

本文详细介绍了如何从零开始组装一台具备视觉能力的智能无人机,重点讲解了NUC机载电脑与D435深度相机的配置方法。通过Ubuntu系统安装、ROS环境搭建、深度学习框架配置等步骤,帮助开发者实现无人机的自主避障和目标跟踪功能。文章还提供了性能优化和常见问题解决方案,是无人机视觉系统开发的实用指南。

weixin_30915275的博客 396

SMTP命令与ESMTP命令简介(附带命令通信)

什么是 SMTP SMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25 端口监听连接请求。 什么是 ESMTP ES

gscaiyucheng的专栏 8345

ThinkPHP+Layui开发的ERP管理系统

ERP采购生产销售系统,一款基于ThinkPHP+Layui开发的ERP管理系统,帮助中小企业实现ERP管理规范化,此系统能为你解决五大方面的经营问题:1.采购管理 2.销售管理 3.仓库管理 4.资金管理 5.生产管理,适用于:服装鞋帽、化妆品、机械机电、家具装潢、建材行业、快销品、母婴用品、办公用品、汽配汽修、生鲜农贸、手机通讯、数码家电、医药用品、制造业、信息技术服务行业等。提供全部无加密服务端和前端源代码,独立部署,不受限制。

u011092458的博客 788

SMTP;ESMTP

什么是 SMTP SMTP (Simple Mail Transfer Protocol) :电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25端口监听连接请求。 什么是 ESMTP ESMTP (Ex...

Jian Sun_的博客 3571

Unity之如何实现TTS文本转语音(真人发音)

微软Azure TTS 文本转语音 服务 将文本转换为逼真的语音的语音服务功能 支持个各国语言,各种中文各种方言,支持不同音色男音女音 支持离线和在线版本

TxNet 5479

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

SMTP 与 ESMTP

·SMTP协议: ·简单邮件传输协议(Simple Mail Transfer Protocol) ·SMTP是一个运行在TCP/IP之上的协议,用它发送和接收电子邮件 ·对应RFC(Request For Comments,请求评议)文档为RFC821 ·SMTP服务器默认监听端口25 ·由于SMTP自身并未蕴含排队机制,所以SMTP(发邮件)经常与另外的邮件传递服务(POP3,IMA

mhfh611的专栏 5569

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

邮件smtp协议 mail

邮件协议只要有POP3/SMTP和IMAP: 主要介绍SMTP: 1. SMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议...

phone1126的专栏 8981

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

java实现extended smtp_基于SMTP的JAVA邮件发送程序

这个程序没有使用JavaMail API,而是根据SMTP协议的要求直接处理协议的细节发送邮件,虽然比较麻烦了一些,但是对了解邮件协议的细节很有帮助的。分两部分,第一部分是SMTP命令介绍(这个从别的地方抄的,嘿嘿);第二部分通过一个实例真正理解一下发送邮件的过程。一:SMTP 命令简介什么是 SMTPSMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传...

weixin_42644249的博客 473

电子邮件客户端(通常指使用IMAP/POP3/SMTP/ESMTP协议收发电子邮件的软件)

通常指使用/ESMTP协议收发的。

weixin_40191861的博客 907

pop3 postfix 命令_SMTP/POP3/IMAP 命令简介

SMTP 命令简介什么是 SMTPSMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25 端口监听连接请求。什么是 ESMTPE...

weixin_42102220的博客 782

ESMTP

ESMTP (Extended SMTP),是扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户账户,而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。在所有的验证机制中,信息全部采用Base64编码。验证之后的邮件发送过程与 SMTP 方式没有两样。 Typical scenarios while

mhfh611的专栏 3098

SMTP 命令(可用MAIL替代)

转自:http://blog.chinaunix.net/u/12318/showart_65574.html SMTP 命令简介 什么是 SMTP SMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF...

weixin_34138255的博客 266

SMTP 命令简介

SMTP 命令简介 什么是 SMTPSMTP (Simple Mail Transfer Protocol) : 电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25 端口监听连接请求。 什么是 ES...

NyThing的Java日记 476

SMTP 命令 及其发送邮件的过程

为什么80%的码农都做不了架构师?>>> ...

weixin_33713707的博客 611
上一篇: flex细节
下一篇: ESMTP协议与SMTP协议
deepfuture
博客等级 码龄17年 210粉丝 1287原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值