国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Mail服務器 > 正文

使用QMailadmin實現QMail郵件賬戶的Web管理_Mail服務器教程

2024-09-08 23:46:19
字體:
來源:轉載
供稿:網友
 

  摘要:本文在"通過vPOPmail實現QMail郵件賬戶的數據庫管理"一文的基礎上討論如何通過QMailadmin實現對存放在數據庫中的虛擬域郵件用戶賬號進行Web管理。通過QMailadmin管理員可以通過Web方式實現添加刪除用戶及修改用戶密碼等郵件用戶的管理,而用戶可以自行修改自己的密碼。

  硬件環境:HP Netserver E60 128M內存 單網卡

  軟件環境:

  Redhat6.2
  vPOPmail4.9.4
  QMail1.3
  MySQL-3.23.22-beta
  ucspi-tcp-0.88
  QMailadmin-0.38.tar.gz
  autorespond-1.0.0.tar.gz ezmlm-idx

  本文介紹如何采用Web方式實現對郵件用戶的管理,而避免了每次添加用戶都需 要登錄到郵件服務器的麻煩。Inter7開發了遵從GPL版權的QMailadmin來實現這個功能。

  要使用該軟件,郵件服務器的上必需運行有Apache的WWW服務器。

  1、下載必需的軟件包

  QMailadmin提供的功能必須在實現了虛擬域及虛擬用戶的賬號的Web方式以后,才能進行,如果你在服務器上還沒有實現"通過vPOPmail實現QMail郵件賬戶的數據庫管理",則請閱讀該文章,并完成了虛擬域及用戶的配置以后才能開始本文的工作。要實現QMailadmin的功能,需要下載下面新的軟件包:

  QMailadmin0.38.tar.gz    http://WWW.inter7.com/QMailadmin/ 
  autorespond-1.0.0.tar.gz    http://WWW.vPOPmail.cx/autorespond-1.0.0.tar.gz 

  autorespond用來支持實現郵件的自動回復,例如您的電子郵件地址為ideal@com.cn, 由于您最近出差,不能及時回復收到的郵件,則你可以使用該軟件包實現郵件的回復,當結合使用QMailadmin時,原理如下:

  當使用Web管理界面指定對某個用戶(如ideal)指定郵件自動回復,則在該用戶所在的域內, 創建一個文件名字為.QMail-ideal.
下面我們首先討論QMail的郵件投遞機制:

  QMail的投遞機制為:當接受到一個信件后,由QMail-lspawn控制郵件投遞機制;它首先察看QMail-users機制(QMail-users是一個給用戶指派-assign-地址的系統),若收信人地址沒有定義在assign文件中(/var/QMail/assign參閱Life with QMail 的3.6QMail-users)則激活QMail-getpw程序,然后調用QMail-local來實現本地郵件投遞。QMail-local首先試著投遞郵件到localpart@host的地址,其中localpart為本地用戶名。若沒有找到,則進一步察看/var/QMail/alias中定義的別名,若存在對應的別名則投遞郵件到別名對應的用戶目錄下,否則退回郵件。

  若按照QMail-users機制在assign中找到對應于郵件目的地址的規則,則從users/assign得到相關信息,然后進行標準的.QMail文件操作。一般來說,.QMail-文件被用來完成郵件轉發、別名或調用其他程序如ezmlm等進行處理。若沒有找到匹配,則QMail-local查找.QMail-default文件,這是QMail-local郵件投遞機制中最后一步。 VPOPmail利用該文件來調激活vdelivermail 程序,該程序以兩個參數被調用,第一個當前沒有作用,主要是用作向后兼容的;第二個參數是用來在一個虛擬域用戶沒有被找到時的缺省投遞,一般來說,缺省投遞可以是將郵件投遞到某個目錄或某個郵件地址或返回無此用戶的返回信件(第二個參數若為bounce-no-mailbox,則返回無此用戶的信件;若第二個參數為/home/vPOPmail/domains/domain.com.cn/0/test,則當沒有對應于郵件投遞目的地址時,該郵件將被投遞到test@com.cn的用戶)。
 
  從上面的機制中可以看到,通過QMailadmin為ideal用戶創建郵件自動回復時會在用戶所在的域目錄中(如:/home/vPOPmail/domains/domains.com.cn中創建.QMail-ideal文件,當.QMail-local進入assign處理以后將會首先進行標準的.QMail文件操作,所以將會根據該文件進行郵件自動回復。現在我們看看.QMail-ideal的文件內容:

  |/usr/local/bin/autorespond 10000 5 /home/vPOPmail/domains/domain.com.cn/AU
TORESPONGDING/message /home/vPOPmail/domains/domain.com.cn/AUTORESPONGDING &ideal@net.cn

  其中|表示調用一個程序來處理該郵件這里是調用autorespond來處理;10000表示允許處理信件的總時間;5表示在這段時間內的最大郵件數;
/home/vPOPmail/domains/domain.com.cn/AU

  TORESPONGDING/message指示自動回復的郵件內容的消息文件;
 
  /home/vPOPmail/domains/domain.com.cn/AUTORESPONGDING指定log文件位置。其中&ideal@nte.cn表示同時將郵件轉發給&ideal@net.cn,也可以在添加自動回復時不指定轉發。

  ezmlm-0.53.tar.gzhttp://WWW.ezmlm.org/
 
  ezmlm-0.53是一個由Dan J. Bernstein編寫的基于QMail的郵件列表管理軟件,它具有郵件列表管理器所應該具有的所有基本功能,例如訂閱者地址列表管理、自動消息退回處理和消息發布和歸檔等等。 

  2、QMailadmin的安裝配置選項

  在編譯該軟件包以前,需要根據自己的需要對軟件包進行編譯配置,下面我們就討論所有的配置選項含義如下(配置選項的使用方法為:./configure
conf_option=chosen):

  若您的服務器的cgi-bin不在標準的位置,則使用該配置選項指定正確的cgi-bin目錄的位置:
  --enable-cgibindir={dir} WWW服務器的cgi-bin目錄路徑

  若您不希望郵件管理界面的HTML模版存放在/usr/local/share/QMailadmin,則使用該選項:
  --with-htmllibdir={dir} QMailadmin HTML 模版存放目錄路徑

  若您的QMail路徑不是缺省的/var/QMail,則使用該選項指定正確的QMail安裝路徑:
  --enable-QMaildir={dir} QMail的安裝路徑

  若訪問WWW服務器時的cgi-bin路徑不是/cgi-bin/cgi_program則需要指定該配置選項:
  --enable-cgipath={/cgi-bin/QMailadmin} 

  若vPOP用戶不是缺省的vchkpw用戶,則使用該選項指定正確的用戶名:
  --enable-vPOPuser={vPOPuser} 

  若autorespond安裝路徑不是缺省的/user/local/bin,則使用該選項指定路徑:
  --enable-autoresponder-bin={path} 

  若ezmlm 安裝路徑不是缺省的 /user/local/bin/ezmlm,則使用該選項指定路徑:
  --enable-ezmlmdir={dir}

  若希望限定系統的最大POP用戶數量則使用該選項指定:

  --enable-maxPOPusers=unlimited -1為沒有限制,0則是關閉該功能使用該選項指定系統的最大別名(alias)數:

  --enable-maxaliases=unlimited -1為沒有限制,0則是關閉該功能使用該選項指定系統的最大郵件轉發(forward)數:

  --enable-maxforwards=unlimited -1為沒有限制,0則是關閉該功能使用該選項指定系統的最大郵件自動回復(autoresponder)數:

  --enable-maxautorepsonders=unlimited -1為沒有限制,0則是關閉該功能使用該選項來設定系統最大的郵件列表數量:

  --enable-maxmailinglists=unlimited 缺省為沒有限制。 

  3、QMailadmin及相關軟件包的編

  autorespond的編譯生成:

  [root@mail  src]# tar xvfz autorespond-1.0.0.tar.gz
  [root@mail  src]# [root@WWW src]# cd autorespond-1.0.0
  [root@mail autorespond-1.0.0]# gcc -Wall -o autorespond autorespond.c
  [root@mail  autorespond-1.0.0]# cp autorespond /usr/local/bin/

ezmlm的編譯生成:
  [root@mail  src]# tar xvfz ezmlm-0.53.tar.gz    
  [root@mail  src]# cd ezmlm-0.53
  [root@mail  ezmlm-0.53]# make
  [root@mail  ezmlm-0.53]# make man
  [root@mail  ezmlm-0.53]# make seup

  QMailadmin的編譯生成(這里是按照前兩篇文章的缺省安裝進行配置的):

  1
  [root@WWW QMailadmin-0.38]# ./configure --enable-cgibindir=/usr/local/Apache/cgi
-bin/ --enable-cgipath=/cgi-bin/QMailadmin

  2
  [root@WWW QMailadmin-0.38]# make clean

  3
  [root@WWW QMailadmin-0.38]# make

  在進行make這一步時,可能會出現如下的錯誤:

  gcc -g -O2 -o QMailadmin QMailadmin.o alias.o autorespond.o forward.o mailing list.o sysadmin.o user.o util.o auth.o template.o command.o show.o cgi.o limits.
  o dotQMail.o -L/home/vPOPmail/lib -lvPOPmail -lnsl -lm -lcrypt
  /home/vPOPmail/lib/libvPOPmail.a(vauth.o): In function `vauth_open':
  /usr/src/vPOPmail-4.9.4/vauth.c:59: undefined reference to `MySQL_init'
  /usr/src/vPOPmail-4.9.4/vauth.c:61: undefined reference to `MySQL_real_connect'
  ... ... 

  你需要使用vi修改/usr/src/QMailadmin-0.38/Makefile文件,將:
COMMONLDADD = -L/home/vPOPmail/lib -lvPOPmail

  修改為:
  COMMONLDADD = -L/usr/local/lib/MySQL/ -lMySQLclient -L/home/vPOPmail/lib -lvPOPmail

  注: "/usr/local/lib/MySQL/"為你按照缺省路徑安裝MySQL時的路徑,若你的系統將MySQL安裝在別的路徑,則需要在這里指定正確的MySQL庫的安裝路徑,即尋找libMySQLclient.a的路徑

  4
  [root@WWW QMailadmin-0.38]# make install-strip

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 无极县| 浑源县| 共和县| 喀什市| 且末县| 金门县| 遵义县| 长岭县| 栾川县| 隆子县| 铁力市| 锡林郭勒盟| 五指山市| 鄂托克前旗| 津南区| 大悟县| 会理县| 青海省| 山东| 东阳市| 博兴县| 铜山县| 雅安市| 山东省| 海南省| 布拖县| 东明县| 江安县| 山阴县| 梅州市| 梁山县| 大渡口区| 治多县| 什邡市| 杭锦后旗| 三江| 丰都县| 乌鲁木齐市| 灵川县| 同心县| 泌阳县|