设为首页收藏本站language 语言切换
查看: 2803|回复: 11
收起左侧

Linux系统Qmail邮件服务器安装过程解析

[复制链接]
 成长值: 63385
发表于 2010-8-20 18:09:32 | 显示全部楼层 |阅读模式
Qmail邮件服务器安装过程-

checkpassword-0.90(pop3验证用户程序)
cmd5checkpw-0.22.tar.gz
ucspi-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(自动回复程序)
qmailadmin-1.0.6.tar.gz(虚拟域web方式管理)

以上所有软件可从以网址下载

http://www.qmail.org
http://www.inter7.com/qmail

安装前准备工作

新建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
安装Qmail(qmail-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/ 使用Maildir的pop3收信方式)
# 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
#./vadduser test@test.com test
# 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启动文件



[pre]# vi /etc/rc.d/init.d/qmail #! /bin/sh case "$1" in start) echo -n "start qmail:" /var/qmail/rc & echo "." echo -n "start smtp service:" /usr/local/bin/tcpserver -H -R -l 0 -t 1 -c 100 -x /etc/tcp.smtp.cdb -u 512 -g 505 0 smtp /var/qmail/bin/qmail-smtpd test.com /home/vpopmail/bin/vchkpw /bin/true /bin/md5checkpw/bin/true & echo "." echo -n "start pop3 service:" /usr/local/bin/tcpserver -l test.com -U -c 100 -H -R 0 pop3 /var/qmail/bin/qmail-popup test.com  /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir & echo "." ;; stop) echo -n "stop qmail:" echo "." ;; *) exit 1 ;; esac exit 0 # chmod 755 /etc/rc.d/init.d/qmail            # /etc/rc.d/init.d/qmail start[/pre]
启动文件中的用户组为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失败

Web管理测试
发表于 2010-10-13 14:08:39 | 显示全部楼层
沙发 2010-10-13 14:08:39 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2010-10-20 15:39:21 | 显示全部楼层
板凳 2010-10-20 15:39:21 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2011-6-30 22:27:13 | 显示全部楼层
地板 2011-6-30 22:27:13 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2011-7-7 19:26:26 | 显示全部楼层
学习了,支持鸿鹄!!
5# 2011-7-7 19:26:26 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2011-8-12 10:47:39 | 显示全部楼层
6# 2011-8-12 10:47:39 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2011-11-30 07:18:39 | 显示全部楼层
7# 2011-11-30 07:18:39 回复 收起回复
回复 支持 反对

使用道具 举报

 成长值: 63415
发表于 2011-11-30 07:38:15 | 显示全部楼层
8# 2011-11-30 07:38:15 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2012-5-28 10:16:01 | 显示全部楼层
9# 2012-5-28 10:16:01 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-3-10 05:26:17 | 显示全部楼层
好东西要顶!!!楼主辛苦啦!!!!
12# 2014-3-10 05:26:17 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-3 06:54 , Processed in 0.094527 second(s), 12 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表