Qmail下的控制文件

运维 系统运维
在所有文件当中,控制文件的地位毫无争议,他记录了数据库的物理结构。如果没有这些文件,那么qmail将拒绝执行,他们有哪些、作用分别是什么?

 

一、qmail-inject

  qmail-inject接受本地邮件消息后检测邮件头是否符合RFC822标准,并传送给qmail-queue排进队列

  defaultdomain

  用来向那些没有使用正确的username@hostname.domain格式的邮件中增加邮件地址的,默认情况下,

  如果主机地址中没有结束符".",qmail-inject将给主机名后添加defaultdomain的内容,如果该文

  件不存在,将使用me文件中的值代替.

  例如:defaultdomain值为linuxfane.com

  本地产生了一封发送给rainbow@rainbow的邮件,那么qmail-inject将用linuxfane.com来补全这个

  后缀,变成rainbow@rainbow.linuxfane.com

  defaulthost

  用来定义主机名,用来向地址中不含主机名的邮件补足邮件地址的。类似于defaultdomain。

  例如:defaulthost值为linuxfane.com

  那么发送给 rainbow的消息,将被qmail-inject用defaulthost的值来补足为rainbow@linuxfane.com,

  以便于qmail-send快速分辨是否属于本地地址。

  idhost

  用来指定邮件中Message-ID:头字段的主机名

  例如:idhost值为linuxfane.com

  那么邮件头中如下:

  Message-ID:<1234567890.12345.qmail@linuxfane.com>;

  如果idhost值为rainbow.linuxfane.com

  那么邮件头中如下:

  Message-ID:<1234567890.12345.qmail@rainbow.linuxfane.com>;

  plusdomain

  用来将其值添加在任何一个以一个+号结尾的地址

_________________________________________________________________

二、 qmail-qmqpc

  qmail-qmqpc是快速邮件排队协议(QMQP)使用的程序,QMQP是一个QMAIL专用协议,用在工作站级QMAIL

  服务器向中心服务器发送队列。

  qmqpservers

  用来指定qmail-qmqpc使用的上级服务器

  通常该功能应用很少,我认为qmail-qmqpc用法就是代替qmail-queue来直接传给上级服务器。

_________________________________________________________________

三、 qmail-remote

  qmail-remote通过SMTP协议向远程主机传送邮件。

  helohost

  该文件用来指定qmail-remote程序与远程邮件主机SMTP会话中的主机名。

  smtproutes

  用来指定到固定目的的静态SMTP路线。

  例子:smtproutes内容如下

  rainbow.linuxfane.com:mail8.rainbow.jp

  :fw.rainbow.linuxfane.com:8088

  ***行的存在会将发给rainbow.linuxfane.com的邮件重定向到mail8.rainbow.jp主机

  第二行的存在会将任何不符合之前行条件的邮件重定向到fw.rainbow.linuxfane.com的8088端口,让

  邮件安全的穿越防火墙

  qmmail-remote将按照smtproutes中的行序来进行处理

  timeoutconnect

  用来指定qmail-remote尝试同一个远程邮件主机建立一个SMTP会话的时间。默认值状态下如果超出60

  秒没有得到远程邮件主机的回应,那么将断开连接。

  timeoutremote

  用来指定qmail-remote在一个SMTP连接已经建立后,远程邮件主机的每一个回应的时间数。默认值为

  1200秒。

_________________________________________________________________

四、qmail-send

  qmail-send用来检测队列中每一个邮件的状态,并调用相应的程序进行处理。例如一个目的为本地的

  邮件将会被qmail-send调用qmail-lspawn处理。

  bouncefrom | bouncehost

  默认情况下,退回给原始发送方的邮件的发件人地址为MAILER-DAEMON@HOSTNAME,如果你想修改

  MAILER-DAEMON这段,那么就修改bouncefrom文件吧。

  如果想修改MAILER-DAEMON@HOSTNAME中HOSTNAME这段,那么就修改bouncehost文件。

  例如:bouncefrom内容为SERVER-MANAGER | bouncehost文件内容为mail8.rainbow.jp

  那么一封因为邮件地址不存在而被退回的通知邮件的发件人将是 SERVER-MANAGER@mail8.rainbow.jp

  concurrencylocal

  用来决定qmail可以同时运行的本地投递进程的数目,默认值是10,标准安装的qmail***可设值是120。

  安装的时候可以通过修改conf-spawn来将其变为255以下任何数目。

  concurrencyremote

  用来决定qmail可以同时运行的远程投递进程的数目,默认值是20,就是说,qmail可以在同一时间内

  同时发送20封邮件,标准安装的qmail***可设值是120。安装的时候可以通过修改conf-spawn来将其

  变为255以下任何数目。

  doublebouncehost | doublebounceto

  这两个控制文件类似于bouncefrom和bouncehost的关系,也是doublebouncehost指定主机名,

  doublebounceto指定用户名。

  他们的功能是为一个被退回两次的邮件制定一条出路。

  例如:doublebouncehost内容为rainbow.linuxfane.com | doublebounceto内容为rainbow

  那么一个被退回2次的邮件将被发送给rainbow@rainbow.linuxfane.com

  没有这两个文件的时候,那么发送给postmaster@me文件中的域名

  envnoathost

  qmail-send用来给没有主机名的邮件收件人制定一个主机名的,通常这个文件并没有必要,qmail-send

  总是使用me文件中的域名。

  locals

  用来为qmail指明位于本地的邮件地址。qmail-send利用此文件来判断收件人地址是否是一个本地地址。

  例如:locals文件中写有rainbow.linuxfane.com

  那么qmail-send检测到队列中有发送给@rainbow.linuxfane.com的邮件的时候,就会调用qmail-lspawn

  来进行本地投送。

  me

  如果没有me文件,那么你的qmail将拒绝执行。me文件用来指定本地邮件服务器的主机名。

  以上列出的许多控制文件在没有被创建的时候,qmail都会用me中的值来代替。

  percenthack

  在UUCP协议中带有%并在该文件中列出的地址将会被转换为一个标准的DNS格式主机名。

  queuelifetime

  用来指定一个邮件在队列中的***存活时间,默认是604800秒,当一个邮件达到这个时间线后,qmail将

  ***一次尝试发送这封邮件,如果依然失败,会将其从队列中删除。

  virtualdomains

  让qmail接受本地邮件以外,还接受该文件中指定的域或者邮件地址,就是常说的虚拟域支持。

_________________________________________________________________

五、 qmail-smtpd

  qmail-smtpd接受远程主机的邮件并转交给队列处理程序qmail-queue来处理。

  badmailfrom

  用来指定不喜欢的发件人的邮件地址或者是域名

  例如:badmailfrom中写有

  advt@msn.com

  @hotmail.com

  如果advt@msn.com给该邮件主机送信时,将得到code 553,告知其是一个不受欢迎的发件人。

  而所有来自hotmail.com的发件人也将得到同样的code 553。

  databytes

  用来指定该邮件服务器可以接受邮件的***字节数。

  例如:databytes指定为8000000

  那么如果有人给该主机发送的邮件字节数超过了这个商业上默认的***容忍限度,将得到code 552,告知

  其邮件大小超出了该邮件主机所能容忍的限度。

  恐怖的是,默认状态下,这个文件并没有,如果有人用你服务器上的两个不存在的地址作为FROM/TO发一

  个100M的邮件

  localiphost

  用来为使用ip来标示目的主机的邮件消息指定本地主机名的

  例如:rainbow.linuxfane.com的ip地址为198.17.1.2 | localiphost内容为rainbow.linuxfane.com

  那么一封发送给rainbow@[198.17.1.2]的邮件的地址会被转换为rainbow@rainbow.linuxfane.com

  rcpthosts | morercpthosts

  这两个文件用来指定qmail可以接收的除本地主机名外的其他域名

  他们的作用是相同的,不过因为rcpthosts中的域名不能超过50行,所以才出现了morercpthosts文件

  timeoutsmtpd

  用来指定qmail-smtpd等待远程SMTP主机发送数据的时间线。默认的情况下,如果连接建立后1200秒内没有

  接受到远程SMTP主机的任何信息,那么将关闭这个连接。

  smtpgreeting

  用来指定SMTP连接的欢迎标志

  例如:smtpgreeting值为 welcome connect to out open relay mail server - ad.rainbow.linuxfane.com

  那么建立一个smtp连接的时候将会看到如下信息:

  Trying 198.17.x.x...

  Connected to ad.rainbow.linuxfane.com.

  Escape characteris ^].

  220 welcome connect to out open relay mail server - ad.rainbow.linuxfane.com ESMTP

【编辑推荐】

  1. Qmai的配置
  2. Qmail的安装
  3. Qmail的使用技巧
  4. Sendmail Qmail Postfix 大比拼
  5. sendmail的安装方法
  6. Linux下的邮件服务器 Qmail
责任编辑:zhaolei 来源: 网络转载
相关推荐

2011-01-18 15:54:32

2011-03-04 09:40:36

Vsftpd文件

2011-01-19 14:31:15

Qmail安装设定

2011-01-19 14:20:53

Qmail安装

2011-01-19 14:39:59

Qmail技巧

2011-01-19 15:40:25

Qmail安全

2011-01-21 18:08:22

Qmail

2011-02-21 16:14:38

Qmail

2011-01-19 15:33:07

Qmail邮件队列清除

2011-02-21 13:14:29

Qmail

2011-01-19 09:57:48

Postfix控制

2016-12-30 09:23:06

Linux代码文件

2011-02-21 16:04:40

Qmail

2011-01-19 16:31:15

Qmail

2011-02-21 15:47:18

2011-01-19 15:52:18

Qmail错误代码

2010-10-26 10:24:06

Oracle控制文件

2011-02-21 15:17:45

Qmail

2011-02-21 14:10:33

QmailSMTP

2011-01-19 11:10:30

点赞
收藏

51CTO技术栈公众号