qmail的运行程序

Qmail运行程序 <br />    Qmail的配置文件是由多个文件组成的,不是集中在一个文件中,每个文件控制相应部分的功能和属性,一个可执行程序可能有多个配置文件控制,所有的配置文件共同决定了qmail运行的实现和模式。这些配置文件都在qmail的control目录中,一般位于位于/var/qmail/control目录中。 <br />    1. badmailfrom <br />    这个配置文件是控制邮件系统拒绝接收的邮件地址和邮件域,主要是为了防止垃圾邮件。如果一个邮件地址或者邮件域被列入到这个文件中,系统 阅读详情

qmail是一个模块化设计的邮件系统,每一个子功能都是由一个运行程序来实现的,而每个程序的属性以及运行方式由一个或多个配置文件和环境变量来控制的。在qmail安装成功和启动以后,qmail的相关进程一直在内存中驻留,qmail会不断扫描邮件队列,并且把邮件投递到正确的目的地址。

qmail所有的运行程序都安装在/var/qmail/bin目录下。比较重要的运行程序如下:

1. qmail-smtpd
它的作用是接收远端主机投递的邮件,然后将邮件传递给qmail-queue进行处理。qmail-smtpd是通过SMTP协议和远端主机惊醒通讯的。qmail-smtpd并不是常驻内存的,他需要一个外部程序来激活,本文所做的系统是使用tcpserver来激活的。Tcpserver监视着系统的IP连接请求,如果检测到有SMTP的连接请求,tcpserver就会自动的激活qmail-smtpd,然后将IP连接的控制权交给qmail-smtpd,一旦qmail-smtpd和远端主机建立起SMTP连接后,远端主机就可以将邮件投递到本地的邮件服务器了。

2. qmail-inject
它的作用是接收本地生成并投递的邮件,并把邮件传递给qmail-queue来处理。在邮件传递给qmail-queue之前,qmail-inject先扫面邮件的邮件头,来查看邮件头是否符合RFC822标准,如果不符合它将会自动的更改和修正这个邮件的邮件头。

3. qmail-send
当一个邮件被放入邮件队列之后,qmail-send就开始对该邮件进行处理,。它会检查邮件队列中的每一个邮件的状态,对于没有投递过的和投递暂时失败的邮件,对于没有投递过和投递暂时失败的邮件,qmail-send会将目标地址是本地主机的传递给qmail-lspawn,目标地址是远端主机的传递给qmail-rspawn,对于投递永久失败的邮件,qmail-send将会把该邮件传递给qmail-clear,让这个程序永久删除这个邮件。qmail-send是一个常驻内存进程程序,如果qmail-send中止,qmail的其他进程将会自动中止。

4. qmail-clean
它的作用是从邮件队列中删除投递永久失败的邮件。qmail使用多种状态标示来标记邮件,每个邮件在每一次被处理后它的状态表示都会被改变。如果系统当机,系统重新启动以后,qmail-send仍然可以找到邮件队列中上次最后一次成功处理过的邮件的位置,并且从这里重新开始处理邮件队列。如果由于其他原因造成qmail-send不能处理的邮件队列,qmail-send会调用qmail-clean从邮件队列中删除邮件。qmail-clean也是常驻内存的进程。

5. qmail-rspawn
当qmail-send判明邮件目标地址是远端邮件服务器时,qmail-send就会将邮件交给qmail-rspawn,qmail-rspawn的作用是调度邮件的投递时间和顺序,然后激活qmail-remote来进行投递。qmail-rspawn还有一个作用是决定每一个邮件的目标邮件服务器,每次和远端邮件服务器的连接都会调用qmail-remote一次。qmail-rspawn也是常驻内存的进程。

6. qmail-lspawn
功能和qmail-rspawn类似,qmail-lspawn也是被qmail-send调度来投递邮件的,不过qmail-lspawn是负责目标地址是为本地邮件服务器的邮件。

7. qmail-remote
它的作用是通过SMTP协议将邮件投递到远端的用户。邮件是通过qmail-rspawn传递过来的,qmail-remote每次只可以同一个远端主机连接,不过在连接时qmail-remote可以投递这个远端主机上的多个接收者的邮件。投递当中的调度是由qmail-rspamwn来负责的。

8. qmail-local
它的作用是投递本地邮件服务器的邮件。这个程序通常是用来检测因为转发命令使用不当造成的邮件循环故障。

9. qmail-queue
他处理从qmail-inject和qmail-smtpd传递过来的邮件,并把这些邮件传递到邮件队列中,它会扫描每个邮件的发送者和接收者的地址,一般传递给qmail-queue的邮件的标示都是为0,如果为1时,它会认为这个邮件的发送者和接收者的地址要经过特殊格式的处理。
qmail基本介绍一『qmail运行程序- - 一组关于Qmail的文章,来自ChinaUNIX.net 首先是第一部分: qmail基本介绍一『qmail运行程序qmail是一个模块化设计的邮件系统,每一个子功能都是由一个运行程序来实现的,而每个程序的属性以及运行方式由一个或多个配置文件和环境变量来控制的。在qmail安装成功和启动以后,qmail的相关进程一直在内存中驻留,qmail会不断扫描邮件队列,并且把邮件投递到正确... 阅读详情

相关推荐

qmail队列清除办法之一

        今天上班一看,qmail的队列已经有5千多封了。都是一些发不出去的垃圾邮件队列。按照以往的做法是: 1) 停止QMAIL 2) find /var/qmail/queue/$i -type f -exec rm {} ; 3) 重启QMAIL. 队列中的邮件包含在以下目录中 /var/qmail/queue/{info,mess,remote,local}/hash/#number

试着怀疑一切^_^ 2305

Qmail安装及设定

个人qmail安装及设定过程,希望对大家有用 1. 如何获得Qmail?      可以通过访问www.qmail.org或mirror站点下载qmail-1.03.tar.gz,以及获得    更多qmail的资料.  2 安装Qmail    获得qmail-1.03.tar.gz后,用tar命令解包    #tar xzvf qmail-1.03.tar.gz    进入qmai

1627

关于qmail的笔记

qmail笔记和摘抄

luna33的专栏 712

qmail

Qmail的特点 安全性 为了验证Qmail的安全性,Qmail的支持者甚至出资$1000悬赏寻找Qmail的安全漏洞,一年以后,该奖金没有被领取,而被捐献给自由软件基金会。目前,Qmail的作者也出资$500来寻求Qmail的安全漏洞。 速度:Qmail在一个中等规模的系统可以投递大约百万封邮件,甚至在一台486一天上能处理超过10万封邮件,起支持并行投递。Qm

不用此栏 1200

清除QMAIL邮件队列

1 ) 停止QMAIL    service qmailctl stop 2) mv /var/qmail/queue/lock /var/qmail/     find /var/qmail/queue/ -type f -exec rm {} \;     m

ANLJF的专栏 1854

FreeBSD下Qmail安装

FreeBSD下Qmail安装[PHP]ucspi-tcp cd /usr/ports/sysutils/ucspi-tcp make install clean daemontools cd /usr/ports/sysutils/daemontools make install clean mkdir /var/service chmod 755 /var/service ee /etc/rc

seanyu的专栏 1807

Qmail实例配置详解

Qmail 1.03+Courier+vpopmail+mysql+qmailadmin+webmail安装指南 对这个演示的补充说明-- Qmail 1.03+Courier+vpopmail+mysql安装指南请到http://gujian.sege.com.cn/mail2000 去看这个文档的演示,用户名:hup密码: 12345         摘要: 本文对Qmail用户实现M

天行健 3917

qmail之邮件转发规则

  在QMAIL中要闹清楚邮件转发规则,要依次明白三个方面的咚咚。   1 rcpthosts 文件 /var/qmail/control/rcpthosts   2 tcp.smtp  文件  /etc/tcp.smtp或者是/home/vpopmail/etc/tcp.smtp   3 smtp 认证       下面,我来一个一个地谈这三个咚咚,注意,我是说,我先要把这三个反面各自独立来谈,谈各自的功能和使用方法,后面我将把这三个方面结合起来谈,那才是在实战中要明白和要用到的最重要的东西。 1  rc

ANLJF的专栏 1576

QMail管理技巧

QMail管理技巧1、有哪些站点正使用QMAIL: 2、QMAIL下的主要配置文件(/var/qmail/control目录下): 3、如何限制邮箱大小 4、SMTP转发限制 5、处理队列中的邮件: 6、在邮件队列中快速删除从一个地方发过来但又不存在的邮件 7、LOG中的时间日志: 8、如何收取一个域名的部份帐号 9、删除队列中的大量广告信息 10、如何临时收取一个域的邮件 11、为何显示没有此用

qq_16490557的专栏 609

程序员眼中的qmail(qmail源代码分析)(qmail-send)

Programmer:夜未眠Date:Apr 28,2003Comefrom: ChongQing Gearbox co.,ltd这份文件还不完善,如果您完善了它请发一份给我: beggar110@163.com这份文件是给想深入了解qmail和想hacker qmail的人读的,如果你只是想建立一个能够运作的mail服务器,没有必要读下去了。它将浪费你很多的时间。如果你对qmail控制文件还不是

天行健 2959

qmail邮件系统(六)qmail的日志和管理

出处:www.chinaunix.net 作者:peng QQ: 螃蟹 16360544 qmail安装 http://bbs.chinaunix.net/viewthread.php?tid=66064&page=1&authorid=1813767 前面几篇介绍了一

Welcome to My Zone 2272

qmail配置文件

 qmail配置文件 来源: ChinaUnix博客  日期: 2007.07.20 15:20 (共有0条评论) 我要评论 <br />qmail的配置文件是由多个文件组成的,不是集中在一个文件中,每个文件控制相应部分的功能和属性,一个可执行程序可能有多个配置文件控制,所有的配置文件共同决定了qmail运行的实现和模式。这些配置文件都在qmail的control目录中,一般位于位于/var/qmail/control目录中。<br />1.        badmailfrom<br />这个配置文件是控

ANLJF的专栏 1391

Linux配置Qmail

1、条件   我们拥有:   * 一个顶级的域名:ta139.com   * 一台运行RedHat Linux 6.2的服务器,主机名www.ta139.com   * 域名解析将mail exchanger设置为mail.ta139.com,与www.ta139.com为同一台主机 2、目标   * 将mail.ta139.com作为邮件服务器;   * 实现类似user@ta139.com

qq_16490557的专栏 2213

Qmail 日志文件格式

       这几天由于工作需要,在弄有关Qmail的东东,在此转载一些有关Qmail log文件格式的文章,以备后用:一 读qmail日志    一旦消息被记录,就应该监控记录以发现问题。下面看一个qmail的mail日志文件:-------------------------------------------------------------------------------------

程序 生活 2367

QMAIL控制文件详解

 2002-06-07 04:58 发布者:rainbow 阅读次数:941  文档 :QMAIL控制文件详解 做成日期 :2002.02.19 做成者 :姚遠方 (RainBow) 最终修正日 :2002.06.03 最终修正者 :姚遠方 (RainBow) ----------------------------------------------------------------- 目录

天行健 1712
上一篇: APACHE实现负载均衡
下一篇: 清理qmail邮件队列
Aniya
博客等级 码龄16年 115粉丝 261原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值