Bill's Linux Qmail Toaster |
版本: 0.8.6 更改记录 上次修改: Mar 08, 2006 14:56
|
本文使用 Dan Bernstein的描述 http://cr.yp.to/qmail/toaster.html
回到顶端
本文档将指导你建立基于Linux Qmail "Toster"的邮件服务器 所有安装步骤能够在大多数流行的Linux发行版上运行, 对于其它的Unix版本也许不需太多的修改就能正常工作。
如下是Qmail Toaster的一些特性:
Qmail SMTP 邮件服务器包含SMTP-AUTH (Plain, Login, CRAM-MD5), TLS (SSL) 支持, 和病毒/垃圾扫描.本文档没有包含对于Qmail的完整的指南,如果您需要,可以参考 Life With Qmail, 或者其它的文档或指南. 本文只是我把那些我自己用到的Qmail的 基本命令/链接/安装步骤整合在一起,感觉有点只是"Copy & Paste"的工作。如果这些内容不够用,请花时间对于 所安装的各个软件包仔细阅读,除此之外没有别的办法。
POP3 服务器,支持CRAM-MD5, APOP, 和SSL
IMAP 服务, 支持IMAPS(SSL)
WebMail 服务
用户限额 (可通过webmail察看)
Autoresponder
邮件列表
基于Web的邮件管理
返回顶端
如果您要安装Qmail邮件服务器,您应该熟悉Unix系统管理、基本邮件和网站协议等。当然您也没必要是 大拿,但是您应当会使用Patch工具和编译原代码, 使用Apache建立网站,以及编辑配置文件。 如果您需要的是想轻松地挥动鼠标就完成,那么本文档可能不太适用。
本文档不提供相应的保证和承诺,如果您的系统因此而影响正常的业务, 那您自己应该承当相关的责任。
我们所能提供的是对这些安装包的一个邮件列表, 另外还有其它一些内容,请参考本文的附件部分
我们也提供相关的商业支持. 点击 http://merchbox.com/qmail.php 察看更多的信息
返回顶端
您应当安装一个较新的Linux发行版本,对于安装Qmail来说没有什么大问题。只要在安装系统时候选择安装"Apache", "PHP", 在安装操作系统时如果如果没有完整安装,可能系统缺少某些开发库文件,象:gdbm, stunnel, kerberos和openssl等。对于支持RPM 发行版的系统,可以通过yum来确保所需要的软件包完整安装:
yum install gcc g++ gcc-g++ gdbm gdbm-devel openssl openssl-devel stunnel krb5-devel bzip2 bzip2-develSELinux: 一些 setuid 程序, 例如QmailAdmin, 不能工作在SELinux下面. 必须禁用它,如果已经安装,例如在FC4下,检查 /etc/sysconfig/selinux, 确认设置为"SELINUX=disabled", 然后重启服务器。
别名(Aliases) 一些发行版设置了rm, mv, cp的别名,在安装过程中可能有不便之处,我建议将相关的别名去掉:
unalias rm mv cp本文原始版本使用Redhat Linux9.0, 但是我现在只用Debian,我也建议大家使用它, 一旦你习惯了apt, 你不会再选择其它的!
返回顶端
在Debian平台最简单的办法来确保所有安装包都正确安装可以通过如下的命令:
apt-get install libgdbm-dev gcc g++ patch make libc-dev stunnel libssl-dev apache php4 wget bzip2另外,你也需要如下的命令安装其它几个额外的软件包:
apt-get install man telnet host好多的Debian软件包依赖于邮件传输代理(MTA), Debian缺省使用Exim4, Exim4的存在使得Qmail不能正确安装, Lots of Debian packages require an MTA, and Debian defaults to exim4. This obviously can be a problem for qmail. 可以通过如下命令来绕过:
# 安装 equivsCourier-imap's 启动脚本使用一个不同的Lock目录, 如果不存在手动创建它:
apt-get install equivs# 生成一个虚拟mta包
cd /tmp
cp /usr/share/doc/equivs/examples/mail-transport-agent.ctl .
equivs-build mail-transport-agent.ctl# 删除 exim4
dpkg --ignore-depends=exim4 -r exim4
dpkg --ignore-depends=exim4-daemon-light -r exim4-daemon-light# and install the dummy mta package
dpkg -i /tmp/mta-local_1.0_all.deb
mkdir /var/lock/subsysCourier's 使用gmake来编译(Debian平台上), 使用alias创建一个make的别名:
alias gmake='make'配置Apache's (译者注: 英文原文中对应部分不太适用,如有需要请参考原文):
编辑 /etc/apache/httpd.conf修改Apache配置文件中的DocumentRoot为系统所用的实际路径.
- 此处略去... ...
SpamAssassin 需要多个perl库模块. 如果系统使用SpamAssassin, 按照如下步骤安装:
apt-get install libdigest-sha1-perl libnet-dns-perl \ClamAV 需要 zlib 和 zlib-dev 支持:
libmail-spf-query-perl libgeo-ipfree-perl razor pyzor libnet-ident-perl \
libio-socket-ssl-perl libarchive-tar-perl libio-zlib-perl \
libsys-hostname-long-perl
apt-get install zlib1g zlib1g-dev libbz2-dev libgmp3 libgmp3-dev返回顶端
本文档使用与Life With Qmail同样的许可, 具体描述可参考:
http://www.opencontent.org/opl.shtml
安装之前,要确保DNS(MX记录)已正常设置和解析. 例如,对于域名 "nixway.net", 你可以通过如下步骤检查你的DNS工作是否正常:
[shupp@ns1 toaster]$ host -t mx nixway.net
nixway.net. mail is handled by 10 mail.nixway.net.
[shupp@ns1 toaster]$ host -t a mail.nixway.net
mail.nixway.net. has address xxx.xxx.xxx.xxx
如果系统中运行有其它邮件服务,在安装Qmail时候可能有问题,通过如下步骤来删除:
rpm -e --nodeps sendmail postfix作为邮件服务器, 除非是系统必须运行的(如SSH, crond等),我建议关掉inetd和xinetd中的服务,来关掉那些 不需要的端口。
返回顶端
我把所有的下载软件包放在/var/src. 如果你想放在其它的位置,在如下方框内输入,本文中所有的路径将会更新.
有些软件包之间版本有依赖关系, 请按如下链接下载!
mkdir -p /var/src/tar返回顶端
cd /var/src/tarwget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
wget http://shupp.org/software/netqmail-1.05.tar.gz
wget http://shupp.org/patches/qmail-toaster-0.8.1.patch.bz2
wget http://shupp.org/software/vpopmail-5.4.13.tar.gz
wget http://shupp.org/patches/vpopmail-5.4.13-cumulative-1.patch
wget http://shupp.org/software/autorespond-2.0.4.tar.gz
wget http://shupp.org/patches/autorespond-2.0.4-2.0.5.patch
wget http://shupp.org/software/qmailadmin-1.2.9.tar.gz
wget http://shupp.org/software/qmailadmin-help-1.0.8.tar.gz
wget http://cr.yp.to/software/ezmlm-0.53.tar.gz
wget http://shupp.org/software/ezmlm-idx-0.443.tar.gz
wget http://shupp.org/software/courier-imap-4.0.6.tar.bz2
wget http://shupp.org/software/courier-authlib-0.58.tar.bz2
wget http://shupp.org/software/squirrelmail-1.4.5.tar.bz2
wget http://shupp.org/software/quota_usage-1.3-1.2.7.tar.gz
wget http://shupp.org/software/toaster-scripts-0.8.tar.gzcd ../
tar -xzf tar/netqmail-1.05.tar.gz
cd netqmail-1.05
./collate.sh
daemontools 是一组管理UNIX服务的工具. 它将会监控qmail-send, qmail-smtpd, 和qmail-pop3d服务.
请参考: http://cr.yp.to/daemontools.html
安装:
mkdir -p /package为确保deamontools运行, 请运行 `ps ax` 确保 '/bin/sh /command/svscanboot' 和 'svscan /service' 正确运行.
chmod 1755 /package
cd /package
tar -xpzf /var/src/tar/daemontools-0.76.tar.gz
cd admin/daemontools-0.76
patch -p1 < /var/src/netqmail-1.05/other-patches/daemontools-0.76.errno.patch
package/install# 添加 "clear" 服务
cd ../
mkdir clear
touch clear/run
touch clear/downcat > clear/run <<EOF
#!/bin/sh
yes '' | head -4000 | tr '\n' .# When you want to clear the service errors, just run this:
# svc -o /service/clear
EOFchmod +x clear/run
chmod a-w clear/downln -s /package/admin/clear /service/clear
返回顶端
ucspi-tcp 包含 tcpserver 和 tcpclient, 是一个用来建立客户-服务器应用的命令行工具。
请参考: http://cr.yp.to/ucspi-tcp.html
安装:
cd /var/src/返回顶端
tar -xzf tar/ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < /var/src/netqmail-1.05/other-patches/ucspi-tcp-0.88.errno.patch
make
make setup check
请参考: http://www.qmail.org/
将要应用的Patch是如下Patch的组合:
安装:
mkdir /var/qmail# 注: RedHat/Fedora 平台上安装TLS Patch需要建立几个include文件的连接, 如果make时报错可以运行如下命令:
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 qmailscd /var/src
tar -xzf tar/toaster-scripts-0.8.tar.gz
cd netqmail-1.05/netqmail-1.05/
ln -s /usr/kerberos/include/com_err.h /usr/kerberos/include/krb5.h \配置:
/usr/kerberos/include/profile.h /usr/include/
# 删除旧的sendmail链接:
rm /usr/sbin/sendmailmake
make setup check
# 注: qmail的Patch将在Vpopmail(chkuser patch需要)安装之后安装# turn on SPF checking
echo 3 > /var/qmail/control/spfbehavior# 设置邮件服务器主管理员的邮件地址.
# 这个地址将会作为root, postmaster 和mailer-daemon邮件的接受地址.
# 使用你自己的邮件地址替换下面的"[email protected]"
(cd ~alias; echo "[email protected]" > .qmail-postmaster ;\
echo "[email protected]" > .qmail-mailer-daemon ;\
echo "[email protected]" > .qmail-root )
chmod 644 ~alias/.qmail*# 在下已行中使用你邮件服务器的主机名来替换"full.hostname"
./config-fast full.hostname
# 把 qmail的man信息添加到MANPATH
- Edit /etc/man.config
- 添加一行 "MANPATH /var/qmail/man"
注: Debian平台需要使用MANDATORY_MANPATH而不是MANPATH
cd /var/src
cp toaster-scripts-0.8/rc /var/qmail/rc
chmod 755 /var/qmail/rc
mkdir /var/log/qmail
echo ./Maildir/ >/var/qmail/control/defaultdelivery
cp toaster-scripts-0.8/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
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail#Now create the supervise directories/scripts for the qmail services:
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 /var/src/toaster-scripts-0.8/send.run /var/qmail/supervise/qmail-send/run
cp /var/src/toaster-scripts-0.8/send.log.run /var/qmail/supervise/qmail-send/log/run
cp /var/src/toaster-scripts-0.8/smtpd.run /var/qmail/supervise/qmail-smtpd/run
cp /var/src/toaster-scripts-0.8/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run
cp /var/src/toaster-scripts-0.8/pop3d.run /var/qmail/supervise/qmail-pop3d/run
cp /var/src/toaster-scripts-0.8/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run
cp /var/src/toaster-scripts-0.8/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run
cp /var/src/toaster-scripts-0.8/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
#使daemontools启动Qmail服务
ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service#确保qmailctl已经正常运行
sleep 5
qmailctl stat
返回顶端
Vpopmail是基于Qmail支持虚拟域名的软件包, 可以多域名管理, 用户的帐号信息保存在数据库(如MySQL)里
用户不需要维护系统的/etc/passwd帐号,
请参考: http://vpopmail.sf.net/
安装:
groupadd -g 89 vchkpw
useradd -u 89 -g vchkpw vpopmailcd /var/src
tar -xzf tar/vpopmail-5.4.13.tar.gz
cd vpopmail-5.4.13
patch -p0 < ../tar/vpopmail-5.4.13-cumulative-1.patch./configure --enable-logging=v
make
make install-strip
echo '127.:allow,RELAYCLIENT=""' > ~vpopmail/etc/tcp.smtp
(cd ~vpopmail/etc ; tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp)# install the vpopmail start script
cp ../toaster-scripts-0.8/vpopmailctl /var/qmail/bin/vpopmailctl
chmod 755 /var/qmail/bin/vpopmailctl
ln -s /var/qmail/bin/vpopmailctl /usr/bin
# 安装toaster 补丁(qmail chkuser 需要vpopmail库支持)
cd /var/src/netqmail-1.05/netqmail-1.05
bunzip2 -c ../../tar/qmail-toaster-0.8.1.patch.bz2 | patch -p0
make clean
make
qmailctl stop
make setup check# 注意: 如果重新安装qmail, 需要运行如下命令, 因为安装完后会赋给qmail
#chown -R vpopmail:vchkpw /var/qmail/spam
make cert
# 输入公司信息
make tmprsadh
# 注意: 所需时间较长# 通过`crontab -e` 将下一行添加到crontab, 每天系统会自动更新
01 01 * * * /var/qmail/bin/update_tmprsadh > /dev/null 2>&1# 启动Qmail进程
qmailctl start#使用daemontools来启动Qmail
ln -s /var/qmail/supervise/qmail-pop3d /var/qmail/supervise/qmail-pop3ds /service#校验系统是否已经正常运行
sleep 5
vpopmailctl stat
返回顶端
Courier-IMAP 提供对IMAP/IMAPS客户端支持.
请参考: http://www.courier-mta.org/imap/
安装 Courier 认证模块:cd /var/srcConfigure:
tar -xjf tar/courier-authlib-0.58.tar.bz2
cd courier-authlib-0.58
./configure
# NOTE: RedHat/Fedora 用户需要使用 "--with-redhat" 选项gmake
gmake install-strip
gmake install-configurecp courier-authlib.sysvinit /etc/init.d/courier-authlib
chmod 755 /etc/init.d/courier-authlib
ln -s ../init.d/courier-authlib /etc/rc0.d/K30courier-authlib
ln -s ../init.d/courier-authlib /etc/rc1.d/K30courier-authlib
ln -s ../init.d/courier-authlib /etc/rc2.d/S80courier-authlib
ln -s ../init.d/courier-authlib /etc/rc3.d/S80courier-authlib
ln -s ../init.d/courier-authlib /etc/rc4.d/S80courier-authlib
ln -s ../init.d/courier-authlib /etc/rc5.d/S80courier-authlib
ln -s ../init.d/courier-authlib /etc/rc6.d/K30courier-authlib
编辑 /usr/local/etc/authlib/authdaemonrc启动 Authdaemon 服务
- 改变 authmodulelist="..." 为 authmodulelist="authvchkpw"
/etc/init.d/courier-authlib start安装 Courier-IMAP:
cd /var/src配置:
tar -xjf tar/courier-imap-4.0.6.tar.bz2
cd courier-imap-4.0.6
# build as vpopmail
chown -R vpopmail:vchkpw ../courier-imap-4.0.6
su vpopmail
# ...
./configure
# 注意: RedHat/Fedora 用户需要使用 "--with-redhat" 选项gmake
exit
gmake install-strip
gmake install-configurecp courier-imap.sysvinit /etc/init.d/courier-imap
chmod 755 /etc/init.d/courier-imap
ln -s ../init.d/courier-imap /etc/rc0.d/K30courier-imap
ln -s ../init.d/courier-imap /etc/rc1.d/K30courier-imap
ln -s ../init.d/courier-imap /etc/rc2.d/S80courier-imap
ln -s ../init.d/courier-imap /etc/rc3.d/S80courier-imap
ln -s ../init.d/courier-imap /etc/rc4.d/S80courier-imap
ln -s ../init.d/courier-imap /etc/rc5.d/S80courier-imap
ln -s ../init.d/courier-imap /etc/rc6.d/K30courier-imap
编辑 /usr/lib/courier-imap/etc/imapd启动 IMAP 服务编辑 /usr/lib/courier-imap/etc/imapd-ssl
- 更改 'IMAPDSTART=NO' 为 'IMAPDSTART=YES'
- 更改 'IMAPDSSLSTART=NO' 为 'IMAPDSSLSTART=YES'
# 可选: courier-imap首次启动时, SSL certificate 使用"localhost"作为"common name"
# 若需要请自行更改在/usr/lib/courier-imap/etc/imapd.cnf 中的CN一行
# 或者pop3d.cnf, 如果你使用courier的pop3ds.
# 以使你的服务器名与common name匹配.
/etc/init.d/courier-imap start
返回顶端
SquirrelMail 基于IMAP的webmail
请参考: http://www.squirrelmail.org/
注意: 假定你的Apache的ServerRoot 为 /var/www, DocumentRoot 为 /var/www/html, 并且你的apache运行用户为apache:apache
安装:
cd /var/src
tar -xjf tar/squirrelmail-1.4.5.tar.bz2
cd squirrelmail-1.4.5
cd plugins
tar -xzf ../../tar/quota_usage-1.3-1.2.7.tar.gz
cp quota_usage/config.php.sample quota_usage/config.php
cd ../
./configure
# 如下几个选项需要注意:
- 在 Server Settings (2), 更改 Server Software 为 "courier" (a)
- 在主菜单, 选择 General Options (4), 更改 Data Direcotry (2) 为 "/var/www/data/"
- 在主菜单, 选择 Plugins, 激活 quota_usage plugin, 以及其它你想要的
- 保存设置
- 退出
# 将 data 目录移动到 /var/www, 并将权限改为Apache执行的 user:group :
mv data /var/www/
chown -R apache:apache /var/www/data# 安装 squirrelmail
cd ../
mv squirrelmail-1.4.5 /var/www/html/
返回顶端
Autorespond 兼容 autoresponder/vacation, 与vdelivermail and qmailadmin很好地工作.
请参考: http://qmailadmin.sf.net/
安装:
cd /var/src
tar -xzf tar/autorespond-2.0.4.tar.gz
cd autorespond-2.0.4
patch -p1 < ../tar/autorespond-2.0.4-2.0.5.patch
make
make install
返回顶端
Ezmlm-idx是邮件列表管理工具.
请参考: http://www.ezmlm.org/
安装:
cd /var/src
tar -xzf tar/ezmlm-0.53.tar.gz
tar -xzf tar/ezmlm-idx-0.443.tar.gz
mv ezmlm-idx-0.443/* ezmlm-0.53/
cd ezmlm-0.53
patch -p0 < idx.patch
make
make setup
返回顶端
Qmailadmin 通过web来完成几乎所有的Qmail邮件管理任务(除添加,删除domain之外).
请参考: http://sourceforge.net/projects/qmailadmin
安装:
cd /var/srcQmail Toaster安装就完成了! 可通过如下步骤来测试.
tar -xzf tar/qmailadmin-1.2.9.tar.gz
cd qmailadmin-1.2.9
./configure --enable-help --enable-htmldir=/var/www/html --enable-cgibindir=/var/www/cgi-bin
make
make install-stripcd ../
tar -xzf tar/qmailadmin-help-1.0.8.tar.gz
cd qmailadmin-help-1.0.8
mkdir /var/www/html/images/qmailadmin/help
cp -rp * /var/www/html/images/qmailadmin/help
返回顶端
接下来可以添加一个虚拟域, 'test.com', 用来测试发送/接受邮件. 用你DNS设置的域名来替换 'test.com'.
# 添加一个虚拟域
/home/vpopmail/bin/vadddomain test.com [password]
如上命令为test.com域创建了一个缺省帐号 "postmaster". 这个帐号也是qmailadmin缺省的具有管理权限的帐号. 使用qmailadmin时候用此帐号登录来管理Qmail:
http://mail.test.com/cgi-bin/qmailadmin
创建一个测试用户具有6MB的限额, 来测试系统的限额支持:
/home/vpopmail/bin/vadduser -q 6MB [email protected] [password]# 通过如下命令校验用户设置, 创建文件"maildirsize"
/home/vpopmail/bin/vuserinfo [email protected]
现在,使用[email protected]登录到SquirrelMail:
http://mail.test.com/squirrelmail-1.4.5/
给自己发送一封邮件. 如果能够收到, 说明系统运行正常.
通过如下命令测试POP3服务, 通过telnet到端口 110 登录.
# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
+OK Hello there.
user [email protected]
+OK Password required.
pass [password]
+OK logged in.
quit
+OK Bye-bye.
Connection closed by foreign host.
通过同样的办法测试IMAP服务:
# telnet localhost 143
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
* OK Courier-IMAP ready. Copyright 1998-2001 Double Precision, Inc. See COPYING for distribution information.
a001 login [email protected] [password]
a001 OK LOGIN Ok.
a001 logout
* BYE Courier-IMAP server shutting down
a001 OK LOGOUT completed
Connection closed by foreign host.
返回顶端
如下4个工具用来保护你的邮件服务器,用以抵抗病毒,攻击和垃圾邮件过滤.
SpamAssassin 是领先的开源垃圾扫描过滤软件. 请参考 http://www.spamassassin.org/ for more details. The easiest way to install SpamAssassin is from CPAN:
安装:
cd /root
perl -MCPAN -e shell
o conf prerequisites_policy ask
install Mail::SpamAssassin
quit# 通过daemontools来运行spamd
mkdir -p /var/qmail/supervise/spamd/log
mkdir -p /var/log/spamd
chown qmaill /var/log/spamd
cp /var/src/toaster-scripts-0.8/spamd.run /var/qmail/supervise/spamd/run
cp /var/src/toaster-scripts-0.8/spamd.log.run /var/qmail/supervise/spamd/log/run
chmod 755 /var/qmail/supervise/spamd/run
chmod 755 /var/qmail/supervise/spamd/log/run
cp /var/src/toaster-scripts-0.8/local.cf /etc/mail/spamassassin/local.cf
mkdir /etc/mail/spamassassin/.spamassassin/
chown vpopmail /etc/mail/spamassassin/.spamassassin/
ln -s /var/qmail/supervise/spamd /service
ClamAV是开源的杀毒软件, 通过simscan来调用. 更多的信息请参考 http://clamav.sf.net/
注意: 系统需要安装 gmp-devel包来校验病毒数据库的数字签名.
安装:
groupadd clamav
useradd -g clamav clamav
cd /var/src/tar
wget http://shupp.org/software/clamav-0.88.tar.gz
wget http://shupp.org/patches/clamav-0.88-stderr.patch
wget http://shupp.org/patches/clamav-0.88-conf.patch
wget http://shupp.org/patches/clamav-0.88-freshclamconf.patch
cd ../
tar -xzf tar/clamav-0.88.tar.gz
cd clamav-0.88
patch -p0 < ../tar/clamav-0.88-stderr.patch
patch -p0 < ../tar/clamav-0.88-conf.patch
patch -p0 < ../tar/clamav-0.88-freshclamconf.patch
./configure
make
make install# 设置 freshclam
touch /var/log/freshclam.log
chmod 600 /var/log/freshclam.log
chown clamav /var/log/freshclam.log
cp /var/src/toaster-scripts-0.8/freshclam /etc/init.d/freshclam
chmod 755 /etc/init.d/freshclam
ln -s ../init.d/freshclam /etc/rc0.d/K30freshclam
ln -s ../init.d/freshclam /etc/rc1.d/K30freshclam
ln -s ../init.d/freshclam /etc/rc2.d/S80freshclam
ln -s ../init.d/freshclam /etc/rc3.d/S80freshclam
ln -s ../init.d/freshclam /etc/rc4.d/S80freshclam
ln -s ../init.d/freshclam /etc/rc5.d/S80freshclam
ln -s ../init.d/freshclam /etc/rc6.d/K30freshclam# 使用daemontools运行clamd
mkdir -p /var/qmail/supervise/clamd/log
mkdir -p /var/log/clamd
chown clamav /var/log/clamd
cp ../toaster-scripts-0.8/clamd.run /var/qmail/supervise/clamd/run
cp ../toaster-scripts-0.8/clamd.log.run /var/qmail/supervise/clamd/log/run
chmod 755 /var/qmail/supervise/clamd/run
chmod 755 /var/qmail/supervise/clamd/log/run# 启动 clamd 和 freshclam
ln -s /var/qmail/supervise/clamd /service
/etc/init.d/freshclam start
ripmime 是提取邮件的MIME附件的工具, qscanq将调用它来扫描邮件. 请参考 http://www.pldaniels.com/ripmime/ for more details
安装:
cd /var/src/tar
wget http://shupp.org/software/ripmime-1.4.0.6.tar.gz
cd ..
tar -xzf tar/ripmime-1.4.0.6.tar.gz
cd ripmime-1.4.0.6
make
make install
本Toaster已经安装好相应的patch(qmail-queue patch)来支持simscan, 这是一个新的调用qmail病毒/垃圾扫描器的工具. 好处在于阻止病毒进入邮件队列(在进入邮件队列之前就被拒绝). 完全不同于qmail-scanner, qmail-scanner是通过隔离病毒(垃圾)邮件而不是在SMTP时候直接拒绝. 更多的信息请参考http://inter7.com/?page=simscan .
安装:
cd /var/src/tar
wget http://shupp.org/software/simscan-1.1.tar.gz
cd ../
tar -xzf tar/simscan-1.1.tar.gz
cd simscan-1.1./configure --enable-user=clamav \
--enable-clamav=y \
--enable-spam=y \
--enable-spam-passthru=y \
--enable-per-domain=y \
--enable-ripmime \
--enable-attach=y \
--enable-received=ymake
make install-strip# 为simscan添加缺省规则
echo ":clam=yes,spam=yes,spam_passthru=yes,attach=.vbs:.lnk:.scr:.wsh:.hta:.pif" > /var/qmail/control/simcontrol
# 更新 /var/qmail/control/simcontrol.cdb
/var/qmail/bin/simscanmk
# 将接收到的版本信息放在/var/qmail/control/simversions.cdb
/var/qmail/bin/simscanmk -g# 启用simscan
echo ':allow,QMAILQUEUE="/var/qmail/bin/simscan"' >> ~vpopmail/etc/tcp.smtp
qmailctl cdb
Qmail MRTG是一个很好的图形化工具来跟踪你邮件服务器的运行状态.
请参考 http://inter7.com/?page=qmailmrtg7 .
注意: qmailmrtg7 需要先安装 MRTG .
安装:
cd /var/src/tar
mkdir /var/www/html/qmailmrtgwget http://shupp.org/software/qmailmrtg7-4.2.tar.gz
wget http://shupp.org/patches/qmailmrtg7-4.2-cfg.patch
cd ../
tar -xzf tar/qmailmrtg7-4.2.tar.gz
cd qmailmrtg7-4.2
patch -p0 < ../tar/qmailmrtg7-4.2-cfg.patch
make
make install
# 编辑 qmail.mrtg.cfg 文件,更改相关的为你自己主机名
cp qmail.mrtg.cfg /etc/
indexmaker --section=title /etc/qmail.mrtg.cfg > /var/www/html/qmailmrtg/index.html# 运行mrtg 3 次,直到所有的初始化错误都不再出现
env LANG=C mrtg /etc/qmail.mrtg.cfg
env LANG=C mrtg /etc/qmail.mrtg.cfg
env LANG=C mrtg /etc/qmail.mrtg.cfg
# 将如下两行添加到系统的 crontab
0-55/5 * * * * env LANG=C /usr/bin/mrtg /etc/qmail.mrtg.cfg > /dev/null
Qmailadmin can set per domain limits/defaults, which is really useful for hosting companies with different mail packages. This is covered in detail in the INSTALL file of qmailadmin (/var/src/qmailadmin-1.2.9/INSTALL).