• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

qmail在Linux,Solaris系统安装详解

发布: 2007-7-02 21:50 | 作者: admin | 来源: | 查看: 9次 | 进入软件测试论坛讨论

领测软件测试网

安装平台:Linux,Solaris
版本: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方式用户注册
软件来源:


每个包安装前务必先仔细阅读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 設定權限。

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>&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 為例:
   移除 .netd.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>&1
   | /var/qmail/bin/splogger smtpd 3 &

   其中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 &

在/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 -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


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

浏览器中打开路径
用户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
浏览器中打开路径

vqsignup
# tar xvfz vqsignup-0.4.tar.gz
# cd vqsignup-4.0
按照INSTALL安装


參考文獻

   Adam McKenna所撰寫qmail-HOWTO ()
   qmail FQA (內含於 qmail 1.03 Source Code)
   

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网