欢迎来到天天文库
浏览记录
ID:5279225
大小:1.09 MB
页数:30页
时间:2017-12-07
《第4章自定义sendmail配置文件》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、下载下载第4章自定义sendmail配置文件sendmail程序是一个邮件传输代理和消息路由程序,它使用配置文件提供别名、转发邮件、自动路由到网络网关以及可伸缩的配置。Solaris环境提供大多数工作站可以使用的标准配置文件。第3章“设置和管理邮件服务”讲述如何使用标准的配置文件设置电子邮件系统。本章讲述如何自定义邮件发送配置文件使之符合特定工作站的需要。本章各小节描述以下主题:■sendmail的命令行参数。■可以修改的sendmail参数。■深入描述配置文件的信息。该部分为需要编写自己的配置文件的工作站提供信息。■
2、简述几种sendmail较少用到的功能。sendmail程序可以接受基于域的命名和任意命名文法(以前的方式)—使用指定的提示解决模糊性。sendmail还可以在完全不同的命名规则之间进行消息转换。在某些特定的情况下可以使用adhoc技术,如提供看起来像其他网络主机的本地的网络名时。例如,user@host是从左到右的文法,而host!user是从右到左的文法。4.1sendmail功能概述sendmail程序是一个消息路由程序,调用管理员选择的邮件处理程序发送消息。它从程序(如mail)收集消息,按照目的邮件处理程序的
3、要求编辑消息标题,并调用合适的邮件处理程序进行发送或网络传输排队。但是当向文件发送邮件时,sendmail直接发送。新的邮件处理程序增加了不同和方便性,可以很小的代价添加。4.1.1与外部世界的接口sendmail程序以三种方式与外界通讯:■使用约定的参数矢量/退出状态。■使用管道对。■基于TCP连接使用SMTP。1.参数矢量/退出状态与进程通讯的标准方法是使用“参数矢量”(命令名和参数)。参数矢量发送接收者列表,而消息体在标准输入发送。如果出现问题,收集邮件处理程序打印的任何信息并返回发送者。消息发送以后,收集来自邮
4、件处理程序的退出状态;如果合适则打印诊断信息。2.基于管道的SMTPSMTP协议可以用于运行和邮件处理程序交互的紧密结合的接口。同时还创建一个子进程,但是从参数列表不传送接收者名称到邮件处理程序。这些名称在命令中一次一个送到进程的标准输入。在标准输出出现的所有信息必须是标准的SMTP应答码。3.基于TCP连接的SMTP第4章自定义sendmail配置文件35下载该技术和基于管道使用SMTP类似,但是它使用TCP连接。基于TCP连接的SMTP通常用于连接到另一个系统中的sendmail进程。该方法可伸缩性很强,因为邮件处
5、理程序不需要在同一台机器上。4.1.2sendmail程序工作以下各小节详细描述sendmail如何工作。当一个发送程序希望发送消息,该程序使用前面描述的三种方法之一产生一个请求给sendmail。sendmail程序则依照以下这些步骤进行处理,它们将在下面的各小节详细描述:1)处理参数并解析地址2)搜集消息3)发送消息4)如果接收到来自邮件处理程序的指令,则消息在队列中等待重传。5)如果在处理中出现错误,该消息返回给发送者。1.参数处理和地址解析如果使用参数矢量调用或者通过管道连接sendmail,先扫描参数,处理指
6、定的选项。然后从命令行或者SMTP命令收集接收者的名称,创建接收者列表。在这一步骤中展开别名,包括邮件列表。在这一步骤中尽可能的验证远程接收者:检查文法并验证本地接收者。但是详细的主机名检测推迟到发送时进行。在验证本地接收者时还进行转发。在解析以后,sendmail程序在每个接收者后面添加名称。当名称为别名或转发名时,原来的名字保留在列表中,然后设置一个标志,告诉发送阶段忽略该接收者。该列表可以自由复制,防止“别名循环”以及复制消息发送到同一个接收者(因为可能有人在两个不同的组中)。注意当别名列表包含同一用户使用不同文
7、法的电子邮件地址时,用户可能接收同一邮件消息的多个复制。sendmail程序不可能总是能够区分电子邮件地址的彼此复制。2.消息调度sendmail程序然后调度消息,消息在开始处有消息头。消息体没有任何特殊格式要求,只需由文本行组成(换句话说不允许二进制数据)。消息头存储在内存中,消息体存储在临时文件中。为了简化程序接口,即使没有有效的名字,也进行消息调度。随后该消息带错误退回。3.消息发送对于接收者列表中的每个唯一的邮件处理程序和主机,sendmail调用合适的邮件处理程序。邮件处理程序每次都希望发送邮件给一个主机上的
8、所有用户,但是,邮件处理程序每次只接受一个接收者才能正确处理。消息发送给邮件处理程序,使用与提交消息到sendmail同样的三种接口之一。该消息的每个复制在开始处有一个自定义的头。邮件处理程序捕获并检测状态码,并在适当的时候给出适当的错误消息。退出码必须和系统标准一致或给出“Servicesunavailable”通用消息。4.重
此文档下载收益归作者所有