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
【編輯推薦】