使用QMailadmin实现QMail邮件账户的Web管理

硬件环境:HPNetserverE60128M内存单网卡

软件环境:
  

以下为引用的内容:
  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.gzezmlm-idx

  
本文介绍如何采用Web方式实现对邮件用户的管理,而避免了每次添加用户都需要登录到邮件服务器的麻烦。Inter7开发了遵从GPL版权的QMailadmin来实现这个功能。
要使用该软件,邮件服务器的上必需运行有Apache的WWW服务器。

1、下载必需的软件包

QMailadmin提供的功能必须在实现了虚拟域及虚拟用户的账号的Web方式以后,才能进行,如果你在服务器上还没有实现"通过vPOPmail实现QMail邮件账户的数据库管理",则请阅读该文章,并完成了虚拟域及用户的配置以后才能开始本文的工作。要实现QMailadmin的功能,需要下载下面新的软件包:

QMailadmin0.38.tar.gzhttp://WWW.inter7.com/QMailadmin/

autorespond-1.0.0.tar.gzhttp://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参阅LifewithQMail的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/autorespond100005/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是一个由DanJ.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}QMailadminHTML模版存放目录路径

若您的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@mailsrc]#tarxvfzautorespond-1.0.0.tar.gz
  [root@mailsrc]#[root@WWWsrc]#cdautorespond-1.0.0
  [root@mailautorespond-1.0.0]#gcc-Wall-oautorespondautorespond.c
  [root@mailautorespond-1.0.0]#cpautorespond/usr/local/bin/
  
ezmlm的编译生成:

  [root@mailsrc]#tarxvfzezmlm-0.53.tar.gz
  [root@mailsrc]#cdezmlm-0.53
  [root@mailezmlm-0.53]#make
  [root@mailezmlm-0.53]#makeman
  [root@mailezmlm-0.53]#makeseup
  
QMailadmin的编译生成(这里是按照前两篇文章的缺省安装进行配置的):
  
  1
  [root@WWWQMailadmin-0.38]#./configure--enable-cgibindir=/usr/local/Apache/cgi
  -bin/--enable-cgipath=/cgi-bin/QMailadmin
  
  2
  [root@WWWQMailadmin-0.38]#makeclean
  
  3
  [root@WWWQMailadmin-0.38]#make
  
在进行make这一步时,可能会出现如下的错误:
  
  gcc-g-O2-oQMailadminQMailadmin.oalias.oautorespond.oforward.omailinglist.osysadmin.ouser.outi-l.oauth.otemplate.ocommand.oshow.ocgi.olimits.
  odotQMail.o-L/home/vPOPmail/lib-lvPOPmail-lnsl-lm-lcrypt
  /home/vPOPmail/lib/libvPOPmail.a(vauth.o):Infunction`vauth_open':
  /usr/src/vPOPmail-4.9.4/vauth.c:59:undefinedreferenceto`MySQL_init'
  /usr/src/vPOPmail-4.9.4/vauth.c:61:undefinedreferenceto`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@WWWQMailadmin-0.38]#makeinstall-strip
 

时间: 2024-12-22 16:13:19

使用QMailadmin实现QMail邮件账户的Web管理的相关文章

Qmail邮件服务器安装过程

软件列表:  checkpassword-0.90(pop3验证用户程序)cmd5checkpw-0.22.tar.gzucspi-tcp-0.88(tcpserver等服务程序)qmail-smtpd-auth-0.30.tar.gz(smtp补丁程序)qmail-1.03.tar.gz(Qmail基本系统包)vpopmail-5.2.1.tar.gz(虚拟域用户pop3支持)ezmlm-0.53.tar.gz(邮件列表管理软件)autorespond.tar.gz(自动回复程序)qmaila

Qmail邮件系统维护管理的技术文档

从安装到管理维护qmail邮件系统,已经积累了一点点维护经验,分享一下自己总结的经验,该文档会一直更新. 1)Qmail control文件详解 在平时维护和管理qmail邮件系统的时候,为了提高qmail的安全性,性能和处理邮件的速度,经常要修改control目录下面的控制文件,一般位于/var/qmail/control目录里面. 1.concurrencyremote 该文件指定qmail可以同时运行的本地投递进程数,默认为10,最大设定为120. 2.concurrencylocal 改

Gmail认证出现漏洞 任何人可劫持任意邮件账户

巴基斯坦白帽黑客学生获谷歌2万美元漏洞奖励--发现了Gmail验证过程中可致电子邮件账户被劫持的漏洞. 谷歌喜欢给新手程序员.白帽黑客和安全研究人员机会参与漏洞奖励项目,来证明他们的技术和能力,已经是众所周知的事实了. 谷歌Play.Chrome Web 商店或iTunes上现有或最新的应用.插件.软件和操作系统,都是谷歌邀请全球研究人员挖掘漏洞的目标.作为回报,成功挖出漏洞者将会收获一定奖励.此类项目的核心宗旨,就是让谷歌的应用和系统更加安全. 然而,具备谷歌漏洞奖励项目(VRP)中选资格并非

web方式实现经过身份验证的对postfix邮件接收发送的管理

本篇笔者将介绍使用web方式实现对postfix邮件接收发送的管理,且需要经过身份验证 一:修改主机名: [root@lyt ~]# vim /etc/sysconfig/network [root@lyt ~]# vim /etc/hosts [root@lyt ~]# service sendmail stop [root@lyt ~]# chkconfig sendmail off       #关闭sendmail [root@lyt ~]# init 6     #重启计算机 二:搭建

如何获取notes中的邮件账户列表,它是存在配置文件中还是存在邮件数据库中呢?

问题描述 想获取notes中的邮件账户列表,请各位高手指点一下. 解决方案 解决方案二:得到所有用户账户使用情况,导出到excelsubaaaOnErrorGotoerrhandleDimssAsNewNotesSessionDimdbdirAsNotesDbDirectoryDimdbAsNotesDatabaseDimxlAppAsVariant,xlsheetAsVariant,rowsAsInteger,colsAsIntegerservername=Evaluate(|@servern

Sendmail、Qmail邮件服务的安全防护实战

作为本系列的第一部分,本文将详细介绍企业开源电子邮件系统的安全原理及 Sendmail.Qmail 邮件服务的安全防护实战. 企业开源电子邮件系统模型基本可分为邮件传递代理 MTA.邮件存储和获取代理 MSA 以及邮件客户代理 MUA 三大模块,下面就邮件系统的组成作介绍. 邮件传递代理(MTA) 企业 Linux 开源系统下的邮件传递代理(Mail Transfer Agent)通常使用 Sendmail,该系统几乎在任何 UNIX 平台上都有相应的版本.另外,还有 D.J. Bernstei

苹果iphone6s删除邮件账户 iphone6s怎么注销邮件账户教程

iphone6s删除邮件账户流程: 1.在苹果iphone6s[设置]-[邮件.通讯录.日历]效果如下图所示. 2.然后在打开进入到的界面中点击"账户"需要注销的邮件账户 3.接着选择进行注销账户. 4.然后会弹出一个确认删除邮件帐户提醒,我们点击确认. 5.完成删除,打开APP邮件,恢复到原来的页面. 好了通过上面的方法我们就可以删除iphone6s邮件账户删除指的是删除与iphone绑定不会删除你的帐箱帐号的哦.

Qmail-Scanner 2.10发布 qmail邮件扫描工具

Qmail-Scanner(又称为scan4virus)是一个辅助工具,用于扫描qmailhttp://www.aliyun.com/zixun/aggregation/12489.html">邮件服务器的所有网关电子邮件的内容.它典型的功能是用于反病毒保护功能,通常是与商业病毒扫描一起结合使用.它也可以被用来作为审计或备份的归档工具.Qmail-Scanner集成到比一些其它基于UNIX的病毒扫描器还更低等级的邮件服务器中,且能产生更好的性能.它能够进行本地发送/接收电子邮件的扫描,而且

如何实现邮件服务的日常管理

实现邮件服务的日常管理 1.邮件客户端支持的邮件协议 * Outlook 2003 :MAPI,SMTP,P0P3,IMAP4,HTTP * Outlook Express :SMTP,POP3,IMAP4,NNTP * Outlook Web Access :HTTP SMTP协议:Simple Mail Transfer Protocol,通常用于把电子邮件从客户端传输到服务器,或从某一台服务器传输到另一台服务器 POP3协议:Post Office Protocol,是一种离线邮件协议,采