SMTP简单邮件传输协议服务器教程

时间:2018-08-02 20:12:21 作者:南山一片云 合同范本 收藏本文 下载本文

“南山一片云”通过精心收集,向本站投稿了10篇SMTP简单邮件传输协议服务器教程,以下是小编整理后的SMTP简单邮件传输协议服务器教程,希望能够帮助到大家。

篇1:SMTP简单邮件传输协议服务器教程

SMTP:简单邮件传输协议(Simple Mail Transfer Protocol)

SMTP 是一种提供可靠且有效电子邮件传输的协议, SMTP 是建模在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。

SMTP 独立于特定的传输子系统,且只需要可靠有序的数据流信道支持。 SMTP 重要特性之一是其能跨越网络传输邮件,即“SMTP 邮件中继”。通常,一个网络可以由公用互联网上 TCP 可相互访问的主机、防火墙分隔的 TCP/IP 网络上 TCP 可相互访问的主机,及其它 LAN/WAN 中的主机利用非 TCP 传输层协议组成。使用 SMTP ,可实现相同网络上处理机之间的邮件传输,也可通过中继器或网关实现某处理机与其它网络之间的邮件传输。

在这种方式下,邮件的发送可能经过从发送端到接收端路径上的大量中间中继器或网关主机,

域名服务系统(DNS)的邮件交换服务器可以用来识别出传输邮件的下一跳 IP 地址。

协议结构

SMTP 命令是发送于 SMTP 主机之间的 ASCII 信息,可能命令如下所示:

命令描述DATA开始信息写作EXPN 在指定邮件表中返回名称HELO 返回邮件服务器身份HELP 返回指定命令中的信息MAIL FROM 在主机上初始化一个邮件会话NOOP除服务器响应确认以外,没有引起任何反应QUIT终止邮件会话RCPT TO 指明谁收到邮件RSET重设邮件连接SAML FROM 发送邮件到用户终端和邮箱SEND FROM 发送邮件到用户终端SOML FROM 发送邮件到用户终端或邮箱TURN接收端和发送端交换角色VRFY 校验用户身份

篇2:SMTP简单邮件传输协议邮件服务器

SMTP:简单邮件传输协议(Simple Mail Transfer Protocol)

SMTP 是一种提供可靠且有效电子邮件传输的协议, SMTP 是建模在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。

SMTP 独立于特定的传输子系统,且只需要可靠有序的数据流信道支持。 SMTP 重要特性之一是其能跨越网络传输邮件,即“SMTP 邮件中继”。通常,一个网络可以由公用互联网上 TCP 可相互访问的主机、防火墙分隔的 TCP/IP 网络上 TCP 可相互访问的主机,及其它 LAN/WAN 中的主机利用非 TCP 传输层协议组成。使用 SMTP ,可实现相同网络上处理机之间的邮件传输,也可通过中继器或网关实现某处理机与其它网络之间的邮件传输。

在这种方式下,邮件的发送可能经过从发送端到接收端路径上的大量中间中继器或网关主机。域名服务系统(DNS)的邮件交换服务器可以用来识别出传输邮件的下一跳 IP 地址。

协议结构

SMTP 命令是发送于 SMTP 主机之间的 ASCII 信息,可能命令如下所示:

命令描述DATA开始信息写作EXPN 在指定邮件表中返回名称HELO 返回邮件服务器身份HELP 返回指定命令中的信息MAIL FROM 在主机上初始化一个邮件会话NOOP除服务器响应确认以外,没有引起任何反应QUIT终止邮件会话RCPT TO 指明谁收到邮件RSET重设邮件连接SAML FROM 发送邮件到用户终端和邮箱SEND FROM 发送邮件到用户终端SOML FROM 发送邮件到用户终端或邮箱TURN接收端和发送端交换角色VRFY 校验用户身份

关 键 字:邮件 服务器

篇3:SMTP协议简介邮件服务器

SMTP被用来在因特网上传递电子邮件,文件RFC821规定了该协议的所有细节。但是你只须记住下面的内容--该协议的基本命令和方法就行了。

协议的原理很简单。无非是一个客户端计算机向服务器发送命令,然后服务器向客户端计算机返回一些信息。客房端发送的命令以及服务器的回应都是字符串,你并不需要特别的软件就能读出它们。如果你仔细看过WinsockTerminal示例程序的源代码,你就会发现这一点。现在让我们用这个示例程序来向自己发一封电子邮件吧。

运行示例程序,单击“Connect”按钮,在“Connectto...”对话框中输入你的电子邮件服务器的地址,选择SMTP选项。最后按“Connect”按钮。如果连接成功,Winsock控件会产生Connected事件,在状态栏中也可看到连接成功的信息。在主文本窗口中你将看到从服务器返回的文本。该文本包含一个三位数的代码及描述,例如:

220-ns.cinfo.ruSendmail8.6.12/8.6.9readyatWed,22Apr22:54:41+0300

220ESMTPspokenhere

不必太过留意这些描述。因为这些描述可能会因服务器而异。你只须要知道代码所代表的意思就行了。代码220表示成功建立连接,服务器等待你的第一个命令。

向服务器传递的第一个命令是HELO.该命令包含一个参数,即你的邮箱名。

HELOoleg

注意:在RFC821中,HELO是一个可选择性命令,如果服务器不要求该命令的话,你可以把它忽略掉。

如果命令成功,服务器会返回一个代码为250的回应。下一步用MAILFROM命令告诉服务器你想发一封邮件。该命令以发信人的邮件地址为参数。

MAILFROM:oleg@vbip.com

发完命令后,如果服务器返回一个代码为250回应,你就可以向服务器发送RCPTTO命令了,

该命令以收信人地址为参数,一看便知是告诉服务器你想将邮件发到收信人地址处。

RCPTTO:somebody@domain.com

如果你想将邮件发给多个收件人的话。你需要多次使用RCPTTO命令,对每个命令,服务器都会返回代码为250的回应。

现在你可以向服务器发送邮件正文了。用DATA命令告诉服务器以下的内容为邮件正文。在你从服务器收到代码为354的回应后,你就可以发送邮件正文了。邮件按行发送,每行邮件以一个无回车的换行符结束(在VB中就是vbLf)示例程序知道何时使用换行符,何时使用回车加换行符。所以你只须按回车键就行了。下面是一个例子:

Subject:Myfirste-mailmessage.

Firstlineofamessage.

Secondline.

.

注意上面最后一行的最后一个字符是一个小数点。这是正文结束的标志。用VB代码表示就是vbLf&“.”&vbCrLf.服务器收到这个标志后,就会立即向你返回一个代码为250的回应以及该邮件的唯一ID号。

250WAA10568Messageacceptedfordelivery

任务完成了,你可以继续发送下封邮件,也可以断开同服务器的连接。如果要断开同服务器的连接就用QUIT命令。在这种情况下,服务器会返回一个代码为221的回应并断开连接。

QUIT

221ns.cinfo.ruclosingconnection

关 键 字:邮件 服务器

篇4:smtp协议手工使用邮件服务器

[xmail@xmail log]$ telnet smtp.263.net 25

Trying 211.150.96.25...

Connected to smtp.263.net.

Escape character is ’^]’.

220 Welcome to coremail System(With Anti-Spam) 2.1 for 263(040326)

HELO weiqiong@cctk.net

250 smtp.263.net

mail from:weiqiong@cctk.net

250 Ok

rcpt to:g2_t1@263.net

250 Ok

data

354 End data with .

haha

.

250 Ok: queued as B9E452FF3E

quit

221 Bye

Connection closed by foreign host.

2. soap中设置超时时间

soap_init(&soap);

soap.send_timeout = 10;

soap.recv_timeout = 10;

以秒为单位

soap_init(&soap);

soap_set_namespaces(&soap, abs_namespaces);

获取错误号字符串

*soap_faultcode(&soap), *soap_faultstring(&soap)

关 键 字:邮件 服务器

篇5:SMTP协议通讯模型邮件服务器

SMTP协议是TCP/IP协议族中的一员,主要对如何将电子邮件从发送方地址传送到接收方地址,也即是对传输的规则做了规定,SMTP协议的通信模型并不复杂,主要工作集中在发送SMTP和接收SMTP上:首先针对用户发出的邮件请求,由发送SMTP建立一条连接到接收SMTP的双工通讯链路,这里的接收SMTP是相对于发送SMTP而言的,实际上它既可以是最终的接收者也可以是中间传送者。发送SMTP负责向接收SMTP发送SMTP命令,而接收SMTP则负责接收并反馈应答,

可大致用下面的通讯模型示意图来表示:

关 键 字:邮件 服务器

篇6:smtp协议手工使用服务器教程

[xmail@xmail log]$ telnet smtp.263.net 25

Trying 211.150.96.25...

Connected to smtp.263.net.

Escape character is ’^]’.

220 Welcome to coremail System(With Anti-Spam) 2.1 for 263(040326)

HELO weiqiong@cctk.net

250 smtp.263.net

mail from:weiqiong@cctk.net

250 Ok

rcpt to:g2_t1@263.net

250 Ok

data

354 End data with .

haha

.

250 Ok: queued as B9E452FF3E

quit

221 Bye

Connection closed by foreign host.

2. soap中设置超时时间

soap_init(&soap);

soap.send_timeout = 10;

soap.recv_timeout = 10;

以秒为单位

soap_init(&soap);

soap_set_namespaces(&soap, abs_namespaces);

获取错误号字符串

*soap_faultcode(&soap), *soap_faultstring(&soap)

篇7:SMTP协议的命令和应答服务器教程

从前面的通讯模型可以看出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操作失败

篇8:SMTP结构及原理服务器教程

◆ SMTP的基本结构

SMTP (Simple Mail Transfer Protocol)协议是为了保证电子邮件的可靠和高效传送,TCP/IP 协议的应用层中包含有SMTP协议,但事实上它与传输系统和机制无关,仅要求一个可靠的数据流通道。它可以工作在TCP上,也可以工作在NCP, NITS 等协议上。在TCP上,它使用端口25进行传输。SMTP的一个重要特点是可以在可交互的通信系统中转发邮件。

1. SMTP的模型

SMTP提供了一种邮件传输的机制,当收件方和发件方都在一个网络上时,可以把邮件直传给对方;当双方不在同一个网络上时,需要通过一个或几个中间服务器转发。SMTP首先由发件方提出申请,要求与接收方SMTP建立双向的通信渠道,收件方可以是最终收件人也可以是中间转发的服务器,

收件方服务器确认可以建立连接后,双发就可以开始通信。下面是SMTP的模型示意图。

发件方SMTP向收件方发处MAIL命令,告知发件方的身份;如果收件方接受,就会回答OK。发件方再发出RCPT命令,告知收件人的身份,收件方SMTP确认是否接收或转发,如果同意就回答OK;接下来就可以进行数据传输了。通信过程中,发件方SMTP与收件方SMTP 采用对话式的交互方式,发件方提出要求,收件方进行确认,确认后才进行下一步的动作。整个过程由发件方控制,有时需要确认几回才可以。

为了保证回复命令的有效,SMTP要求发件方必须提供接收方的服务器及邮箱。邮件的命令和答复有严格的语法定义,并且回复具有相应的数字代码。所有的命令由ASCII码组成。命令代码是大小写无关的,如MAIL和 mail pmAIL是等效的。

篇9:IIS配置SMTP服务器服务器教程

Windows 用户

安装设置服务端

Windows XP和2000本身就拥有构件SMTP服务器的功能,只是一般还没有安装,选择“控制面板→添加/删除程序→添加/删除Windows组件”,弹出“Windows组件向导”对话框,在其中双击“Internet信息服务(IIS)”项,就会打开详细选择项,选中“SMTP Service”,按“确定”,插入Windows XP安装盘进行安装(如图1)。

安装好SMTP服务器后,选择“控制面板→性能和维护→管理工具→Internet信息服务”打开Internet信息服务设置窗口,在窗口左侧点击本地计算机名,展开本地计算机目录,可以看到有两个分支“Wed站点”和“默认SMTP虚拟服务器”。在“默认SMTP虚拟服务器”上点击鼠标右键选择“属性”,打开“默认SMTP虚拟服务器属性”窗口。

“常规”选项卡主要设置IP地址,单击IP地址下拉项选择“127.0.0.1”,表示指向本地计算机IP地址,其他项使用默认即可。如果你是局域网接入,拥有固定IP地址,那么IP地址就应该选择相应的地址(如图2)。

“访问”选项卡中设置访问权限。单击“身份验证”,选择“匿名访问”,表示任何用户都可以发送,其他两项不用选择;单击“连接控制”中的“连接”和“中段限制”中的“中断”,选中“仅以下列表除外”,表示可以许接入所有用户的访问,

“邮件”选项卡中设置邮件传输条件及限制,“限制邮件大小为”等四个选项可以使用默认值,无须更改;

“将未传递报告的副本发送到”可将发送不成功的邮件返回发件人,并且写明不成功的原因;“死信目录”设置没有发送成功的邮件被存放的位置。

“传输”选项中设置邮件传递时间,这里不用修改,使用默认值;“LDAP路由”选项用来指定服务器使用的目录服务器标识和属性,这里也不用启动它。

“安全”选项中设置使用发送服务器的有权用户,默认用户是“Administrators”,你可以单击“添加”添加使用用户。

一切设置好后,你就拥护了自己的邮件发送服务器了!下面我们来看看在Outlook Express和Foxmail中如何设置使用自己的SMTP来发信。

设置客户端软件

打开Outlook Express,选择“工具→账号→邮件”,选中帐号点“属性”,在“服务器”标签下的“发送邮件(SMTP)”中输入“127.0.0.1”,即本机地址(如图3),“我的服务器需要身份验证”不选择。

在Foxmail中选择需要设置本机发信的帐号,然后选择“帐号→属性→邮件服务器”,在“发送邮件服务器”中输入“127.0.0.1”(如图4),“SMTP邮件服务器需要身份验证”也不要选择上。

撰写发送邮件和我们平时操作一样,没有什么区别。写好后点发送,邮件会在瞬间发送完毕。

篇10:SMTP服务扩展服务器教程

SMTP提供一种可靠的有效的传送机制,它用于传送电子邮件,虽然十几年来,它的作用已经有目共睹,可是对它功能的扩充也是必不可少的。对SMTP服务的扩展我们介绍一下:在SMTP转发的邮件中包括信封和内容这两种东西。我们写信也写信封和信皮,我们可以借生活中的信件来帮助理解。

(1)SMTP信封比较容易理解,它被作为一系列的SMTP协议单元传送,它包括发送者地址,传送模式,还有一个或多个接收者地址。如果有不清楚的地方,请参阅《SMTP协议标准》。

(2)至于内容,它是由两部分组成的,一部分是信头,一部分是信体,信头是由一个个的域/值对(一个域,一个值)组成的,如果信体有结构的话,它的结构是以MIME构造的,

内容从根本上来说是文本的,一般也是由ASCII码构成的,但是由于使用了MIME,所以这个限制应该也是没有了,但信头却不行,一般都应该使用ASCII码表示。虽然SMTP协议是一个不错的协议,可是对它的扩展还是不可避免,本文主要说明了一种扩展方法,使用这种扩展方法,服务器和用户之间可以相互知道对方使用了扩展,使用了多少,如果进行通信。

这里我们希望让大家知道网络协议中的一个经验:参数越多,死得越快;参数越少,越能持久。参数太多了,根本不利于使用,无法推广,早晚会被别的协议取代。这也符合科学的基础原理,简单。这说明在实现时一定要小心,如果不小心会便得到的远远小于付出的,有时根本不能提供任何益处。

下面我们看一下EHLO命令,支持SMTP服务扩展的客户应该以EHLO命令开始SMTP会话,而不是通常的HELO命令。如果服务器也支持,那就返回确认响应,如果不支持就返回失败响应。因为引入了EHLO命令,因此会话开始的第一条命令可以是HELO或EHLO。

因此引入了新的参数,所以SMTP的MAILFROM和RCPTTO命令行长度也能再是512字节了,但是引入新参数的长度必须加以说明,以便实现者准备缓冲区。

SMTP简单邮件传输协议邮件服务器

反垃圾邮件防火墙与防毒墙服务器教程

提高Exchange 收件箱10兆邮件限制服务器教程

FTP服务器关于权限的问题服务器教程

关于Apache服务器如何实现用户验证服务器教程

三代防火墙体系结构演变介绍服务器教程

VMware Server的工作原理服务器教程

找出通病 通杀国内防火墙服务器教程

防毒防盗,安全先从注册表开刀服务器教程

防火墙路由、专业防火墙应用对比分析服务器教程

SMTP简单邮件传输协议服务器教程(整理10篇)

欢迎下载DOC格式的SMTP简单邮件传输协议服务器教程,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档