服务器 频道

Linux qmail安装指南<2>

  第四节:安装qmail 

  除非你确实熟悉各个软件和系统结构,否则请按照如下步骤一步一步安装软件,此文将引导你安装一套完整的邮件系统。这个安装过程基

本上你只需要复制粘贴就可以完成。

  安装daemontools 

  daemontools是一个收集管理UNIX进程的工具.用它来监听qmail-send,qmail-smtpd,qmail-pop3d.

  参考:http://cr.yp.to/daemontools.html 

  #安装:

  cd /home/pkg

  tar -zxvf daemontools-0.76.tar.gz

  cd admin/daemontools-0.76

  patch -p1 < /home/pkg/netqmail-1.05/other-patches/daemontools-0.76.errno.patch

  package/install 

  # 验证daemontools已经正常运行:

  sleep 5

  ps ax | grep svscan 

  安装ucspi-tcp 

  ucspi-tcp软件包由一组工具组成。它们用来简单的建立客户机-服务器tcp后台程序。TcpServer是一个比inetd安全性更好的选择。它内

建有基于规则的连接控制,能完善地在达到预定义的最大系统负载时将连接推迟,这点比 inetd好。Tcpserver也被推荐与qmail一同使用,因

为它们是同一个作者编的程序。

  参考:http://cr.yp.to/ucspi-tcp.html

  #安装:

  cd /home/pkg

  tar zxvf ucspi-tcp-0.88.tar.gz

  cd ucspi-tcp-0.88

  patch -p1 < ../ucspi-tcp-0.88.errno.patch 

  make

  make setup check 

  安装qmail 

  参考:http://www.qmail.org

  http://www.lifewithqmail.org/

  这个toaster补丁,是下面这几个补丁的组合:

  smtp auth (SMTP认证)

  spf (发信人DNS检查)

  qmail-queue (如果要使用病毒扫描引擎则需要这个补丁)

  maildir++ patch 

  support oversize dns packets (not necessary if you use dnscache) 

  chkuser (检查本地vpopmail用户表,信头的语法,这个补丁需要在安装vpopmail后被安装。)

  spam throttle 

  qregex (匹配badmailfrom和badmailto文件里的规则)

  big concurrency (set the spawn limit above 255) 

  #安装:

  #创建所需要的用户

  mkdir /var/qmail

  groupadd nofiles

  useradd alias -g nofiles -d /var/qmail/alias -s /sbin/nologin

  useradd qmaild -g nofiles -d /var/qmail -s /sbin/nologin

  useradd qmaill -g nofiles -d /var/qmail -s /sbin/nologin

  useradd qmailp -g nofiles -d /var/qmail -s /sbin/nologin

  groupadd qmail

  useradd qmailq -g qmail -d /var/qmail -s /sbin/nologin

  useradd qmailr -g qmail -d /var/qmail -s /sbin/nologin

  useradd qmails -g qmail -d /var/qmail -s /sbin/nologin

  #顺便添加vpopmail用户

  groupadd vchkpw -g 89

  useradd vpopmail -u 89 -g vchkpw

  #准备安装qmail

  cd /home/pkg

  tar -xzf toaster-scripts-0.7.tar.gz

  cd netqmail-1.05/netqmail-1.05/

  # 搜索函数straynewline中的451改为553 

  vi qmail-smtpd.c

  # 当你的服务器收到无效格式的邮件时,会发送:"I am not going to accept that message at the moment,you can try again later",

对方服务器收到后,几秒钟后又会发送同样的邮件给你,造成多次的重复。 

  # 改为553后,你的服务器将直接发送:"I am not going to accept that message,don''t try sending it again.",告诉对方的服务器不

要再发这封无效的信件。 

  # RedHat/Fedora用户可能需要为TLS补丁链接一个include文件

  # 输入如下命令:

  ln -s /usr/kerberos/include/com_err.h /usr/include/

  # 删除sendmail的链接

  rm -rf /usr/sbin/sendmail

  #qmail编译安装

  make

  make setup check

  #注:qmail的补丁在vpopmail安装之后再打。 

  # 用你自己的主机名代替下面的mail.domain.com

  ./config-fast mail.domain.com 

  #设置管理员的邮箱地址。

  #发往root/postmaster/mailer-daemon地址的邮件将会由定义的管理员邮箱接收。

  #将如下的“admin@domain.com"替换成你的管理员邮箱。

  cd /var/qmail/alias

  echo "admin@domain.com" > .qmail-postmaster

  echo "admin@domain.com" > .qmail-mailer-daemon

  echo "admin@domain.com" > .qmail-root

  chmod 644 /var/qmail/alias/.qmail*

  #开启SPF设置

  echo ./Maildir/ >/var/qmail/control/defaultdelivery 

  echo 3 > /var/qmail/control/spfbehavior

  #添加qmail的帮助手册

  echo MANPATH /var/qmail/man >> /etc/man.config

  #为qmail服务建立监控目录和日志文件:

  mkdir -p /var/qmail/supervise/qmail-send/log

  mkdir -p /var/qmail/supervise/qmail-smtpd/log

  mkdir -p /var/qmail/supervise/qmail-pop3d/log

  mkdir -p /var/qmail/supervise/qmail-pop3ds/log

  cp /home/pkg/toaster-scripts-0.7/send.run /var/qmail/supervise/qmail-send/run

  cp /home/pkg/toaster-scripts-0.7/send.log.run /var/qmail/supervise/qmail-send/log/run

  cp /home/pkg/toaster-scripts-0.7/smtpd.run /var/qmail/supervise/qmail-smtpd/run

  cp /home/pkg/toaster-scripts-0.7/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run

  cp /home/pkg/toaster-scripts-0.7/pop3d.run /var/qmail/supervise/qmail-pop3d/run

  cp /home/pkg/toaster-scripts-0.7/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run

  cp /home/pkg/toaster-scripts-0.7/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run

  cp /home/pkg/toaster-scripts-0.7/pop3ds.log.run /var/qmail/supervise/qmail-pop3ds/log/run

  echo 20 > /var/qmail/control/concurrencyincoming

  chmod 644 /var/qmail/control/concurrencyincoming

  chmod 755 /var/qmail/supervise/qmail-send/run

  chmod 755 /var/qmail/supervise/qmail-send/log/run

  chmod 755 /var/qmail/supervise/qmail-smtpd/run

  chmod 755 /var/qmail/supervise/qmail-smtpd/log/run

  chmod 755 /var/qmail/supervise/qmail-pop3d/run

  chmod 755 /var/qmail/supervise/qmail-pop3d/log/run

  chmod 755 /var/qmail/supervise/qmail-pop3ds/run

  chmod 755 /var/qmail/supervise/qmail-pop3ds/log/run

  mkdir -p /var/log/qmail/smtpd

  mkdir -p /var/log/qmail/pop3d

  mkdir -p /var/log/qmail/pop3ds

  chown -R qmaill /var/log/qmail

  #启动脚本:

  cd /home/pkg

  cp toaster-scripts-0.7/rc /var/qmail/rc

  chmod 755 /var/qmail/rc

  cp toaster-scripts-0.7/qmailctl /var/qmail/bin/

  chmod 755 /var/qmail/bin/qmailctl

  ln -s /var/qmail/bin/qmailctl /usr/bin

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

  rm -rf /usr/lib/sendmail

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

  # 用daemontools来启动qmail-send和qmail-smtpd

  ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service 

  #命令:

  # 启动,停止,重启,查看队列等

  qmailctl start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help 

  # 检查服务

  netstat -an | grep 25

  ps -ef | grep qmail

  ps -efl | grep "service errors" | grep -v grep 

  #日志:

  /var/log/maillog

  /var/log/qmail/current

  /var/log/qmail/pop3d/current

  /var/log/qmail/pop3ds/current

  /var/log/qmail/smtpd/current

  我建议重新回顾一下刚才我们所做的步骤以熟悉对qmail的安装. 下面我们将开始vpopmail的安装.

0
相关文章