技术在于专研
分类: LINUX
2007-09-24 09:59:56
qmail+vpopmail+sqwebmail是非常优秀的Web mail解决方案,本文将详细介绍具体的安装过程,希望可以帮助你顺利实现Web mail系统。
一. 安装环境
安装平台:RedHat Linux
安装的机器: mail.mydomain.com
软件包:
qmail-1.03 qmail基本系统
ucspi-tcp-0.88 tcpsever等服务程序
daemontools-0.70监视工具
checkpassword-0.81 pop3验证用户的程序
ezmlm-0.53 邮件列表管理
vpopmail-4.9.6-1虚拟域用户pop3支持
qmailadmin-0.35 虚拟域web管理
autorespond-1.0.0 自动回复程序
sqwebmail-1.2.0 webmail
vqsignup-0.4 web方式用户注册
软件来源:
注意:每个包安装前务必先仔细阅读INSTALL和FAQ,很多问题在FAQ都有解决方法。
二. 安装步骤
1. 安装qmail
1)创建qmail安装目录
#mkdir /var/qmail
2)添加qmail必需的用户和组
#groupadd nofiles
#useradd -g nofiles -d /var/qmail/alias alias
#useradd -g nofiles -d /var/qmail qmaild
#useradd -g nofiles -d /var/qmail qmaill
#useradd -g nofiles -d /var/qmail qmailp
#groupadd qmail
#useradd -g qmail -d /var/qmail qmailq
#useradd -g qmail -d /var/qmail qmailr
#useradd -g qmail -d /var/qmail qmails
3)解压、解包和编译
(假设这些包都下载到/var/tmp目录下)
#cd /var/tmp
#tar xzvf qmail-1.03.tar.gz
#cd qmail-1.03
进入qmail目录后,仔细阅读一下README和INSTALL文件.然后开始编译qmail
#make setup check
4)配置
#./config
5)建立系统别名
#(cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
#chmod 644 ~alias/.qmail*
可以在这些别名文件中指定管理用户来接受这些系统邮件,如
#echo 'admin' > ~alias/.qmail*
6)建立启动文件和用户的maildir
#cp /var/qmail/boot/home /var/qmail/rc
#chmod 755 /var/qmail/rc
编辑 /var/qmail/rc
修改其中./Mailbox成为./Maildir以支持maildir的pop收信方式,如下:
# !/bin/sh
# Using splogger to send the log through syslog.
# Using qmail-local to deliver messages to ~/Maildir by default.
exec env - PATH="/var/qmail/bin:$PATH"\
qmail-start ./Maildir splogger qmail
其中splogger qmail指令是用来将日志文件记录在/中。
建立maildir的方法:
$/var/qmail/bin/maildirmake /etc/skel/Maildir
$echo ./Maildir/ > ~/.qmail
注意Maildir必须为该使用者所有,可以chown变更,并以chmod 700 Maildir设定权限。
2. 安装ucspi-tcp-0.88
#tar zxvf ucspi-tcp-0.88.tar.gz
#cd ucspi-tcp-0.88
#make
#make setup check
执行文件将被安装在/usr/local/bin中。
3. 安装checkpassword
#tar zxvf checkpassword-0.81.tar.gz
#cd checkpassword-0.81
#make
#make setup check
#chmod og-rx /bin/checkpassword
执行文件checkpassword将被安装在/bin中。
如果不对/etc/passwd中的用户开放mail,则不需要装checkpassword,而只要装vpopmail就行了。
case "$1" in
start)
echo -n "start qmail:"
/var/qmail/rc &
echo "."
echo -n "start smtp service:"
/usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb \
-u UID -g GID 0 smtp /var/qmail/bin/qmail-smtpd 2>&1 \
| /var/qmail/bin/splogger smtpd 3 &
echo "."
echo -n "start pop3 service:"
tcpserver -H -R 0 pop3 \
/var/qmail/bin/qmail-popup mail.mydomain.com \
/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir &
echo "."
;;
stop)
echo -n "stop qmail:"
echo "."
;;
*)
exit 1
;;
esac
exit 0
-----------------------------------------------------
#cd ../rc3.d
#ln -s ../init.d/qmail S98qmail
(注:这里的启动文件没有写全)
8. qmailadmin--WEB方式管理qmail
1)ezmlm的安装
$make
$make man
#make setup
2)autorespond的安装
gcc -Wall -o autorespond autorespond.c
cp autorespond /usr/local/bin/autorespond
3)qmailAdmin的安装
在安装前首先要考虑满足以下几项要求:
a.是否拥有一个vpopmail用户vchkpw
b.cgi-bin目录的所在位置
c.ezmlm目录的所在位置
d.autorespond目录的所在位置
如果能够达到以上要求,可以继续安装
#./configure
#make
#make install-strip
检测安装是否正确:浏览器中打开路径
看根据前面设置的用户和密码是否能够成功登录进去。
9. SqWebmail--一种Webmail解决方案
1)安装SqWebmail
#tar xvfz sqwebmail-1.2.0.tar.gz
#cd sqwebmail-1.2.0
#./configure --without-authpam --without-authuserdb --enable-webpass=no /
--without-authpwd --without-authshadow
#make configure-check
#make (当我make的时候报错找不到db.h,cp /usr/include/db1/db.h /usr/include/db.h)
#make check
#make install-strip
#make install-configure
检测安装是否正确:浏览器中打开路径
2)安装vqsignup
#tar xvfz vqsignup-0.4.tar.gz
#cd vqsignup-4.0
按照INSTALL安装(?)
修改下面的这行
$(CC) $(FLAGS) -o $(BIN) $(OBJS) -L/home/vpopmail/lib -lvpopmail -lcrypt
修改 -L/home/vpopmail/lib 为真实的vpopmail lib的目录
b. 编译
#make
c. 安装
拷贝signup.cgi和signup.conf文件到cgi-bin目录下
切换目录到cgi-bin目录下
#chown vpopmail signup.cgi
#chgrp vchkpw signup.cgi
#chmod ug+s signup.cgi
#chmod ugo+r signup.conf
拷贝vqsignup_html目录到cgi-bin目录下,确信对所有用户可读
拷贝vqsignup.html文件到DocumentRoot目录下,确信能够被访问。
编辑cgi-bin目录下的vqsignup.conf文件
修改"add_domain"的所有行,加上你的真实的域,把其他的行删除掉
更改vqsignup_text/*.html文件,使包含"result_*"的行的路径指到正确的全路经。
修改vqsignup_text目录下所有的文件,使它们只包含你想支持的域,你也可以定制这些页面,使它们更加好看些。
修改DocumentRoot目录下vqsignup.html文件,使它只包含你想支持的域,你也可以定制这个页面,使它更加好看些。
d. 测试
用你的浏览器访问 web server/your sub dir/vqsignup.htm, 试着注册新用户,如果成功的话,
那么就恭喜你了。如果有错误,请返回安装步骤仔细查看文件的权限和vqsignup.html里的值是否正确。