Linux
系统Qmail邮件服务器安装过程解析
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
方式管理)
安装前准备工作
新建
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
安�b
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
安�b
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 �Ce �Cnodeps 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 �Ce
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
失败