Linux 系统Qmail邮件服务器安装过程解析
Qmail邮件服务器安装过程-
 
checkpassword-0.90pop3验证用户程序)
 
cmd5checkpw-0.22.tar.gz
 
ucspi-tcp-0.88tcpserver等服务程序)
 
qmail-smtpd-auth-0.30.tar.gzsmtp补丁程序)
 
qmail-1.03.tar.gzQmail基本系统包)
 
vpopmail- 5.2.1 .tar.gz(虚拟域用户pop3支持)
 
ezmlm-0.53.tar.gz(邮件列表管理软件)
 
autorespond.tar.gz(自动回复程序)
 
qmailadmin- 1.0.6 .tar.gz(虚拟域web方式管理)
 
安装前准备工作
 
新建qmail 安装目录
 
# mkdir /var/qmail:
 
添加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
 
安裝qmail基本系统:
 
安装checkpassword-0.90(/bin)
 
# cd /usr/local/src
 
# tar xzvf checkpassword-0.90.tar.gz
 
# cd checkpassword-0.90
 
# patch -p1 <../patch/checkpassword-0.90.errno.patch
 
# make
 
# make setup check
 
安裝cmd5checkpw-0.22.tar.gz
 
# tar zxvf cmd5checkpw-0.22.tar.gz
 
# mkdir /usr/man
 
# mkdir /usr/man/man8
 
# cd cmd5checkpw-0.22
 
# make
 
# make install
 
安装ucspi-tcp-0.88(/usr/local/bin)
 
# cd /usr/local/src
 
# tar xzvf ucspi-tcp-0.88.tar.gz
 
# cd ucspi-tcp-0.88
 
# patch -p1 < ../patch/ucspi-tcp-0.88.a_record.patch
 
# patch -p1 < ../patch/ucspi-tcp-0.88.errno.patch
 
# patch -p1 < ../patch/ucspi-tcp-0.88.nodefaultrbl.patch
 
# make
 
# make setup check
 
安装Qmailqmail-1.03.tar.gz
 
# tar xzvf qmail-1.03.tar.gz
 
SMTP补丁及其它补丁:
 
# tar zxvf qmail-smtpd-auth-0.30.tar.gz
 
# cd qmail-smtpd-auth-0.30
 
# cp base64.c base64.h README.auth ../qmail-1.03/
 
# patch -d ../qmail-1.03 < auth.patch
 
# cd qmail-1.03
 
# patch -p1 < ../patch/qmail-103.patch
 
# patch -p1 < ../patch/qmailqueue-patch
 
# patch -p1 < ../patch/qmail-maildir++.patch
 
# patch -p1 < ../patch/qmail-1.03.errno.patch
 
# patch -p1 < ../patch/qmail-1.03.qmail_local.patch
 
# vi qmail-smtpd.c //将函数straynewline中的451改为553
 
//451改为553是为避免当其它服务器给你发来无效格式的邮件时,你的服务器陷入循环应答。
 
# make setup check
 
#./config-fast test.com
 
建立系统别名:
 
# cd ~alias;touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
 
# echo test.com > /var/qmail/control/helohost \\主机名(解决新浪拒收邮件问题)
 
# chmod 644 ~alias/.qmail*
 
# echo "127.0.0.1:allow,RELAYCLIENT=""" > /etc/tcp.smtp
 
# chmod 4755 /bin/checkpassword
 
# sed 's/Mailbox/Maildir\//' /var/qmail/boot/home >/var/qmail/rc
 
(修改/var/qmail/rc./Mailbox 改成./Maildir/ 使用Maildirpop3收信方式)
 
# chmod 755 /var/qmail/rc 
 
停止sendmail 服務
 
# /etc/rc.d/init.d/sendmail stop
 
# rpm –e –nodeps sendmail
 
Qmail Web管理系统
 
安装虚拟域
 
# groupadd vchkpw
 
# useradd -g vchkpw vpopmail
 
# mkdir ~vpopmail/etc
 
# echo "127.0.0.:allow,RELAYCLIENT=\"\"" > ~vpopmail/etc/tcp.smtp
 
# echo ":allow" >/etc/tcp.smtp
 
# /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
 
# cd /usr/local/src
 
# tar xzvf vpopmail- 5.2.1 .tar.gz
 
# cd vpopmail- 5.2.1
 
#./configure --enable-roaming-users=y --enable-default-domain=test.com --enable-passwd=n
 
# make
 
# make install-strip
 
# crontab –e
 
40 * * * * /home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null
 
# cd /home/vpopmail/bin
 
#./vadddomain test.com eitop
 
# chmod 6755 /home/vpopmail/bin/vchkpw
 
安装邮件列表
 
# tar xzvf ezmlm-0.53-idx-0.41.tar.gz
 
# cd ezmlm-0.53-idx-0.41
 
# make
 
# make man
 
# make setup
 
安装自动回复程序
 
# tar zxvf autorespond.tar.gz
 
# make(gcc -Wall -o autorespond autorespond.c)
 
# make install(cp autorespond /usr/local/bin/autorespond)
 
安装虚拟域web方式管理
 
# tar xzvf qmailadmin- 1.0.6 .tar.gz
 
# cd qmailadmin- 1.0.6
 
#./configure --enable-htmldir=/www/web1 --enable-cgibindir=/usr/local/apache2/cgi-bin
 
# make
 
# make install-strip
 
Qmail启动文件
 
启动文件中的用户组为vpopmail用户组
 
如果不能启动qmail,执行touch /etc/dnsrewrite
 
测试:
 
SMTP认证测试
 
su - qmaild -c "/var/qmail/bin/qmail-popup localhost /home/vpopmail/bin/vchkpw pwd"
 
su - qmaild -c "/var/qmail/bin/qmail-popup localhost /bin/checkpassword pwd"
 
user test
 
pass test
 
输入用户密码后出现回应,若出现test用户的home目录,SMTP成功;若提示:"-ERR authorization failed",则SMTP失败