linuxqmail:在LINUX环境中安装Qmail的经历




  安装平台:Linux
  版本:qmail-1.03
  安装机器: mail.mydo.com
  
  软件Software包:
  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方式用户注册
  
  软件Software来源:
  http://www.qmail.org
  http://www.er7.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 up 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 up check
     執行檔將被安裝於 /usr/local/bin 中
  
  8. 安裝 checkpassword
     # tar zxvf checkpassword-0.81.tar.gz
     # cd checkpassword-0.81
     # make
     # make up 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 up 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-do=mydo.com --enable-passwd=n
  # make
  # make -strip
  
  # crontab -e
  40 * * * * /home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null
  
  # cd /home/vpopmail/bin
  # ./vadddo mydo.com mydo
  append mydo.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>&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.mydo.com
  /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir &
  
  在/etc/rc.d/init.d下建立文件qmail,内容如下:
  -------------------------------------------
  #! /bin/sh
  
   "$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.mydo.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 up
  
  2 autorespond
  gcc -Wall -o autorespond autorespond.c
  cp autorespond /usr/local/bin/autorespond
  
  3 qmailAdmin
  
  3.1. Before we can make and there are a few things to consider..
  
  a. do you have a vpopmail user and ed 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
   it!!
  
  3.2
  
  # ./configure
  # make
  # make -strip
  
  浏览器中打开路径http://mail.mydo.com/cgi-bin/qmailadmin
  用户postmaster;域mydo
Tags:  linux安装 linux安装环境 qmail安装 linuxqmail

延伸阅读

最新评论

发表评论