QMAIL终极安装指南

12/3/2006来源:Qmail人气:5539

安装平台:linux

版本:qmail-1.03

安装的机器: 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方式用户注册

软件来源:

http://www.qmail.org

http://www.inter7.com/qmail

每个包安装前务必先仔细阅读INSTALL和FAQ,很多问题在FAQ都有解决方法。


安装步骤:


1. #mkdir /var/qmail

2. # 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. #tar xzvf qmail-1.03.tar.gz

进入qmail目录后,仔细阅读一下README和INSTALL文件.然后开始编译qmail

#make setup check

4. #cd qmail-1.03

#./config

5. 建立系统别名

# (cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)

# chmod 644 ~alias/.qmail*


6. # cp /var/qmail/boot/home /var/qmail/rc

  # chmod 755 /var/qmail/rc


   编辑 /var/qmail/rc

   修改其中 ./Mailbox 成为 ./Maildir ,如下:


   # !/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 q


   其中 splogger qmail 指令是用來將记录文件记录于 / 中。

   建立样板

   $ /var/qmail/bin/maildirmake /etc/skel/Maildir

   $ echo ./Maildir/ > ~/.qmail

   注意 Maildir 必须为该使用者所有,可以 chown 变更,並以 chmod 700 Maildir 设定权限。


当前位置 > 技术首页 > 操作系统 > Unix/Linux

QMAIL终极安装指南

时间:2001/01/17 13:55 Linux伊甸园

 


7. 安裝 ucspi-tcp-0.88

   # tar zxvf ucspi-tcp-0.88.tar.gz

   # cd ucspi-tcp-0.88

   # make

   # make setup check

   执行文件将被安装于 /usr/local/bin 中。


8. 安裝 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

9. 安裝 daemontools

   # tar zxvf daemontools-0.70.tar.gz

   # cd daemontools-0.70

   # make

   # make setup check

   执行文件將安裝於 /usr/local/bin 中

安装本工具后可以用

# mkdir /var/run/qmail

# supervise /var/run/qmail /var/qmail/rc

来启动qmail,可以用svc来关闭活重起qmail,用svstat监视qmail运行情况,(qmail FAQ)


10. 安装 vpopmail

# groupadd vchkpw

# useradd -g vchkpw vpopmail

# mkdir ~vpopmail/etc

# echo ":allow" > ~vpopmail/etc/tcp.smtp

# tar zvfz vpopmail-4.9.6-1.tar.gz

# cd vpopmail-4.9.6-1

# ./configure --enable-roaming-users=y --enable-default-domain=mydomain.com --enable-passwd=n

# make

# make install-strip


# crontab -e

40 * * * * /home/vpopmail/bin/clearopensmtp 2>%26amp;1 > /dev/null


# cd /home/vpopmail/bin

# ./vadddomain mydomain.com mydomain

append mydomain.com to /var/qmail/control/rcpthosts

11.停止sendmail 服务

   # killall -TERM sendmail (Linux)

   接着以 qmail 之 sendmail libraby 取代原有之 sendmail

   # mv /usr/lib/sendmail /usr/lib/sendmail.old

   # mv /usr/sbin/sendmail /usr/sbin/sendmail.old

   # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail

   # ln -s /var/qmail/sbin/sendmail /usr/sbin/sendmail

移除 sendmail 启动程序,以 Linux 为例:

   移除 inetd.conf 中的 sendmail 之設定,以及 /etc/rc.d/init.d 下的 sendmail 启动文件。(Linux)


12.启动qmail SMTP , POP3 daemon 系统服务


   建立 SMTP 转信规则

   建立 /etc/tcp.smtp 內容為

   :allow

   此为接受任何Client端所发出之转送信件

   若要拒絕某些IP所發出之Relay則改為 /etc/tcp.smtp如下

   1.2.3.4:allow,RELAYCLIENT=""

   127.:allow, RELAYCLIENT=""

   如此,除1.2.3.4及127.*之外的所有位址,都將被拒绝转送信件。

   

   接下來,转换 tcp.smtp 成为cdb 格式。

   # /usr/local/bin/tcPRules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp


   注意:若对 tcp.smtp 有任何变更,都必須经过 tcprules 转换成为 cdb 才会生效。

   另外,tcp.smtp 若為空白,則表示拒绝所有的转送,因为预设的规则为deny。

   至此,转送规则已建立,稍后将依此规则启动 qmail-smtpd。


   設定 SMTP 及 POP3 daemon 之启动

   请移除 inetd.conf 中有关 smtp 及 pop3 的设定 (加上 # 号)

   编辑 /etc/services,改为以下設定:


   smtp 25/tcp mail

   # pop-3 110/tcp #pop version 3

   # pop-3 110/udp

   pop3 110/tcp

   pop3 110/udp


   启动 SMTP:

   /usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb \

   -u UID -g GID 0 smtp /var/qmail/bin/qmail-smtpd 2>%26amp;1 \

   | /var/qmail/bin/splogger smtpd 3 %26amp;


   其中UID和GID為前述新增 qmail 系統帐号之 qmaild 之 User ID,以及 nofiles 之 group ID。

   /var/qmail/bin/splogger那一行会將log文件写在 /var/log/maillog。


   启动 POP3:

   编辑启动文件加入以下設定:

   tcpserver -H -R 0 pop3 \

/var/qmail/bin/qmail-popup mail.mydomain.com \

/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir %26amp;


在/etc/rc.d/init.d下建立文件qmail,内容如下:

-------------------------------------------

#! /bin/sh


case "$1" in

start)

echo -n "start qmail:"

/var/qmail/rc %26amp;

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>%26amp;1 \

    | /var/qmail/bin/splogger smtpd 3 %26amp;

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 %26amp;

echo "."

;;

stop)

echo -n "stop qmail:"

echo "."

;;

*)

exit 1

;;

esac


exit 0

-----------------------------------------------------

# cd ../rc3.d

# ln -s ../init.d/qmail S98qmail

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


3.1. Before we can make and install there are a few things to consider..

a. do you have a vpopmail user and installed vchkpw

b. where is your cgi bin directory

c. where is your ezmlm directory

d. where is your autorespond directory

If you are missing any one of those you can stop reading this now and go install it!!


3.2 install


# ./configure

# make

# make install-strip


浏览器中打开路径http://mail.mydomain.com/cgi-bin/qmailadmin

用户postmaster;域mydomain.com;口令:mydomain

WebMail -- 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

浏览器中打开路径http://mail.mydomain.com/cgi-bin/sqwebmail


vqsignup

# tar xvfz vqsignup-0.4.tar.gz

# cd vqsignup-4.0

按照INSTALL安装

参考文献


   Adam McKenna所撰写qmail-HOWTO (http://www.flounder.net/qmail/qmail-howto.html)

   qmail FQA (內含于qmail 1.03 Source Code)

   http://www.qmail.org/

http://www.linuxaid.com.cn/solution/ 上有几篇比较好的安装文档

http://www.linuxforum.net/cgi-bin/perl/wwwthreads.pl上的qmail讨论也不错

,