硬件环境: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-
从上面的机制中可以看到,通过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的邮件列表管理软件,它具有邮件列表管理器所应该具有的所有基本功能,例如订阅者地址列表管理、自动消息退回处理和消息发布和归档等等。