郵件管理篇 VmailMgr
2024-07-21 02:36:06
供稿:網(wǎng)友
VmailMgr介紹
VmailMgr全稱(chēng)是Virtual Mail ManaGeR(虛擬郵件治理器),是專(zhuān)門(mén)配合Qmail的一個(gè)軟件包,利用它可以實(shí)現(xiàn)以下功能:
* 增強(qiáng)Qmail的口令驗(yàn)證功能,使用戶(hù)可以通過(guò)POP3及IMAP訪問(wèn)自己的虛擬郵箱;
* 基于CDB的用戶(hù)口令治理方式,尤其是在用戶(hù)數(shù)量較大時(shí)可以大大提高口令驗(yàn)證速度;
* 提供了豐富的工具進(jìn)行虛擬域、虛擬用戶(hù)及別名(Aliases)的治理;
* 提供一組功能強(qiáng)大的CGI,可以直接通過(guò)網(wǎng)頁(yè)進(jìn)行增加用戶(hù)、刪除用戶(hù)和修改密碼等各種治理工作;
* 提供一組php函數(shù),可以靈活地編寫(xiě)PHP文件,并通過(guò)網(wǎng)頁(yè)進(jìn)行各種治理工作;
* 通過(guò)后臺(tái)進(jìn)程確保CGI和PHP代碼操作的安全。
VmailMgr安裝
最新版本的VmailMgr 可在www.Vmailmgr.org或http://em.ca/~brUCeg/vmailmgr/ 下載。假如下載RPMS包,至少要下載Vmailmgr和 Vmailmgr-daemon 包。
筆者推薦大家從源代碼安裝,其安裝方法如下:
(做為非root 用戶(hù))
tar zxf
cd
./configure
make
(做為root 用戶(hù))
make install
VmailMgr使用
安裝VmailMgr完成后,開(kāi)始使用虛擬域之前,還有幾個(gè)必要的步驟,我們以建立一個(gè)虛擬用戶(hù)"me@mydomain.org"(其別名是"myself@mydomain.org"和"myname@mydomain.org")為例,一步步地進(jìn)行介紹。
1.首先要為這個(gè)虛擬域做域名解析。在DNS服務(wù)器上將MX記錄指向郵件服務(wù)器,假如想使虛擬域可以基于ip地址正常工作,還需要在DNS服務(wù)器上做一條PTR記錄,例如:假如nslookup 10.56.33.122 返回 mail.mydomain.com,那么為了使用"虛擬域",對(duì)應(yīng)于IP地址的PTR是:"mail.mydomain.com:myuser"。
2. 建立該虛擬域的基本用戶(hù)。這個(gè)用戶(hù)的UNIX登錄口令也將作為進(jìn)行該虛擬域的郵件系統(tǒng)治理超級(jí)用戶(hù)口令,所有該虛擬域的虛擬用戶(hù)的郵件都將保存在這個(gè)用戶(hù)的目錄下,所以這個(gè)目錄要留有足夠的空間。例如,我們建立了用戶(hù)"v" 做為虛擬域的基本用戶(hù),用戶(hù)目錄在"/home/vmailuser"。
3.告訴Qmail 識(shí)別這個(gè)虛擬域。這需要修改Qmail在"/var/qmail/control"目錄下的兩個(gè)設(shè)置文件: "rcpthosts"和"virtualdomains"。
1)在"rcpthosts"中加入"mydomain.org"。
2)在"virtualdomains"中加入"mydomain.org:v"。
假如想使用"anything.mydomain.org"的形式, 可按如下修改:
3)在 "rcpthosts"中加入".mydomain.org"。
4)在"virtualdomains"加入".mydomain.org:v"。
4.修改Qmail-popup/Qmail-
POP3D的口令校驗(yàn)方式,使用VmailMgr 提供的"checkvpw"。具體的修改方法依靠于Qmail的安裝方式。
1)將Qmail-popup/Qmail-POP3D 命令行中的"checkpassWord"換成"checkvpw"(Qmail-popup/Qmail-
POP3D命令行可能在"/etc/inet.conf"中或者在一個(gè)"tcpserver"命令中 )。
2)打入以下命令:
′echo checkvpw > /var/qmail
/control/checkpassword′
5. 加入虛擬用戶(hù)及別名。
首先以剛才創(chuàng)建的基本用戶(hù)身份登錄(如, "su - v"),然后就可以使用Vmailmgr提供的命令進(jìn)行用戶(hù)及別名的建立。例如下面的命令將建立一個(gè)用戶(hù)me及他的兩個(gè)別名myself和myname:
1)執(zhí)行命令:"vadduser me"(將提示要求輸入口令)
2)執(zhí)行命令:"vaddalias me myself"
3)執(zhí)行命令:"vaddalias me myname"
完成以上步驟后,你還需要?dú)⒌舨⒅匦聠?dòng)"Qmail-send",讓它讀新建的"virtualdomains"表,安裝過(guò)程就完成了。可以通過(guò)下面兩種方式進(jìn)行使用訪問(wèn):
一種是以"userSEPvirtual.domain.org"形式登錄,"user"是虛擬用戶(hù)名;SEP分隔符,可以是"@"或者 ":"(可在"/etc/vmailmgr/"目錄下設(shè)置);"virtual.domain.org"是虛擬域的域名,與 "/var/qmail/control/
virtualdomains"文件中相同。
第二種方式是以郵箱的內(nèi)部形式訪問(wèn)——"baseuser-user",這里的"user"是虛擬用戶(hù)名,而"baseuser"是該虛擬域的基本用戶(hù),也是該虛擬域的郵件系統(tǒng)治理者。
例如 "/var/qmail/control/
virtualdomains"含有:"mydomain.com:v"
已經(jīng)建立了基本用戶(hù)"v",并建立了虛擬用戶(hù)"me",在"/etc/vmailmgr/"中的"分隔符"變量包含"@:",那么這個(gè)虛擬用戶(hù)的郵件可以用 "me@mydomain.com"、"me:mydomain.com"或者"v-me"方式訪問(wèn)。
VmailMgr對(duì)POP3 及IMAP的支持
要使Qmail的POP3支持VmailMgr的虛擬用戶(hù)認(rèn)證方式,需要在"/etc/qmail/control/checkpass
word"文件中加入"checkvpw",并重新啟動(dòng)POP3D。
VMailMgr支持Courier-IMAP, 但 Courier-IMAP卻不能自動(dòng)檢測(cè)到VMailMgr。這意味著我們要做一些工作以使它們兩者一起工作順暢。
*首先,你必須將′/usr/local/bin/authvmailmgr′拷貝到′/usr/
lib/courier-imap/libexec/authlib/authvmailmgr′。
* 然后,編輯′/usr/lib/courier
-imap/etc/imapd.config′文件中的"AUTHMODULES"聲明,并且添加′authvmailmgr′為第一個(gè)確認(rèn)系統(tǒng)。
VmailMgr的命令與系統(tǒng)配置
VmailMgr的系統(tǒng)參數(shù)都在 "/etc/vmailmgr/"目錄下以文件的形式進(jìn)行設(shè)置。可進(jìn)行設(shè)置的項(xiàng)很多,如口令的驗(yàn)證方法、默認(rèn)郵件大小、軟硬磁盤(pán)空間限額及用戶(hù)目錄名等。每一項(xiàng)對(duì)應(yīng)一個(gè)設(shè)置文件,假如沒(méi)有對(duì)應(yīng)的文件則采用系統(tǒng)默認(rèn)值。具體設(shè)置方法可參考VmailMgr文檔中的configuration.htm。
VmailMgr提供用戶(hù)認(rèn)證、治理,郵件治理的命令也很豐富,常用的命令見(jiàn)表2。其具體的使用方法可參考http://www.vmailmgr.org/docs/下的文檔。
表2 命令名稱(chēng)
用途
vmailmgrd
vmailmgr 的守護(hù)進(jìn)程
vsetup
建立一個(gè)虛擬域
vadduser
增加一個(gè)虛擬用戶(hù)
vdeluser
刪除一個(gè)虛擬用戶(hù)
vaddalias
增加一個(gè)別名
vdelalias
刪除一個(gè)別名
vpasswd
修改一個(gè)虛擬用戶(hù)的口令
vdeliver
通過(guò)vmailmgr 投遞郵件信息
vauthenticate
驗(yàn)證一個(gè)虛擬用戶(hù)
checkvpw
為虛擬和非虛擬用戶(hù)驗(yàn)證口令
vchattr
修改一個(gè)虛擬用戶(hù)的各項(xiàng)屬性