动态网站制作指南
[  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 操作系统 > Linux教程
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Linux教程 ]的信息

本月文章推荐
.在Linux上搭建 一个简单的vsftpd.
.Linux 网管 123 --- 1. 前言 2. .
.新手看招:在Linux操作系统下创建.
.自己动手提高ubuntu系统的性能.
.如何同时启动6个X控制台.
.Linux系统设置编译器路径的几种方.
.第二届年度红帽创新奖颁予创新科.
.Eclipse编程工具 在Ubuntu下的外.
.Linux下安装和使用杀毒软件AntiV.
.Linux Quota mini-HOWTO 磁盘空间.
.学习园地:编译Linux系统内核的方.
.Ethernet HOWTO Linux以太网-HOW.
.通过COM口管理Linux服务器.
.The Linux BootPrompt-HowTo 中译.
.新手学堂:在SUSE Linux下安装VN.
.红帽宣布2008年波士顿红帽峰会的.
.Linux GNOME与KDE开源桌面环境正.
.新手学堂:当前Linux系统运行的各.
.Linux 指令篇:文件系统--mount.
.LINUX动态链接库高级应用.

Linux下构架qmail邮件系统

文章类别:Linux教程 | 发表日期:2005-4-15 |


(一)特点简介
安全性 为了验证Qmail的安全性,Qmail的支持者甚至出资$1000悬赏寻找 Qmail的安全漏洞,一年以后,该奖金没有被领取,而被捐献给自由软件基金会 。目前,Qmail的作者也出资$500来寻求Qmail的安全漏洞。

速度:Qmail在一个中等规模的系统可以投递大约百万封邮件,甚至在一 台486一天上能处理超过10万封邮件,起支持并行投递。Qmail支持邮件的并行投 递,同时可以投递大约20封邮件。目前邮件投递的瓶颈在于SMTP协议,通过STMP 向另外一台互联网主机投递一封电子邮件大约需要花费10多秒钟。Qmail的作者 提出了QMTP(Quick Mail Transfer Protocol)来加速邮件的投递,并且在Qmail中得到支持。 Qmail的设计目标是在一台16M的机器上最终达到每天可以投递大约百万级数目的 邮件。

可靠性:为了保证可靠性,Qmail只有在邮件被正确地写入到磁盘才返回 处理成功的结果,这样即使在磁盘写入中发生系统崩溃或断电等情况,也可以保 证邮件不被丢失,而是重新投递。

特别简单的虚拟域管理,甚至有一个第三方开发的称为vchkpw的add-on来支持虚 拟POP域。使用这个软件包,POP3用户不需要具有系统的正式帐户。

使用ezmlm支持用户自控制的邮件列表功能。

邮件用户和系统帐户隔离,为用户提供邮件帐户不需要为其设置系统帐户 ,从而增加了安全性。
(以上摘自网上,由于没有找到原作者的署名,如果原作者碰巧看到,请与我联系,谢谢)
(二) 软件
* qmail-1.03.tar.gz qmail基本系统包
* ucspi-tcp-0.88.tar.gz tcpserver服务程序
* daemontools-0.76.tar.gz 监视工具
* checkpassword-0.90.tar.gz pop3验证用户程序
* cmd5checkpw-0.22.tar.gz 系统验证程序
* vpopmail-5.2.0.tar.gz 虚拟域用户pop3支持
* vqsignup-0.5.tar.gz web方式用户注册
* sqwebmail-3.3.7.tar.gz webmail
* qmailadmin-0.42.tar.gz 虚拟域web方式管理
* ezmlm-0.53.tar.gz 邮件列表管理
* autorespond-1.0.0.tar.gz 自动回复程序
* qmail-smtpd-auth-0.30.tar.gz SMTP认证补丁程序
(三) 安装配置
①. 安装环境准备
  设置服务器工作环境和编译环境;并且准备好所有的软件包;然后设置qmail运行时候的用户和组。
mkdir /var/qmail
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 nofiles -d /var/qmail qmailq
useradd -g nofiles -d /var/qmail qmailr
useradd -g nofiles -d /var/qmail qmails
## 参考网址
## http://cr.yp.to/

②. 安装tcpserver服务程序
tar xvf ucspi-tcp-0.88.tar
cd ucspi-tcp-0.88
make
make setup check
③. 系统验证程序(可选)
# tar zxvf cmd5checkpw-0.22.tar.gz
# mkdir /usr/man
# mkdir /usr/man/man8
# cd cmd5checkpw-0.22
# make
# make install
④. 安装pop3用户验证程序
tar xvf checkpassword-0.90.tar
cd checkpassword-0.90
make
make setup check
chmod 4755 /bin/checkpassword
⑤. qmail解包
# tar xvzf qmail-1.03.tar.gz
⑥. SMTP补丁
tar zxvf qmail-smtpd-auth-0.30.tar.gz
cd qmail-smtpd-auth-0.30
cp base64.c base64.h README.auth ../qmail-1.03/
patch -d ../qmail-1.03 < auth.patch
⑦. 安装qmail-1.03
cd qmail-1.03
make setup check
./config-fast $HOSTNAME
## 设定Qmail服务器主机名
cd ~alias;
touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
chmod 644 ~alias/.qmail*
echo "127.0.0.1:allow,RELAYCLIENT=""" > /etc/tcp.smtp
sed 's/Mailbox/Maildir//' /var/qmail/boot/home >/var/qmail/rc
chmod 755 /var/qmail/rc
csh -cf "/var/qmail/rc &"
⑧. 安装虚拟域用户pop3支持
groupadd vchkpw
useradd -g vchkpw vpopmail
su vpopmail
mkdir ~vpopmail/etc
echo "127.0.0.1:allow,RELAYCLIENT=""" > ~vpopmail/etc/tcp.smtp
echo ":allow" > /etc/tcp.smtp
/usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
tar xvzf vpopmail-5.2.1.tar.gz
cd vpopmail-5.2.1
## 修改头文件的连接数据库的主机,用户和密码
## 增加mysql的支持
## 分别拷贝include和lib到 /usr/local/include/mysql和 /usr/local/lib/mysql
./configure --enable-defaultquota=10485760 --enable-deliver-filter=y
--enable-default-domain=xxxx.com --enable-mysql=y
make
make install-strip
cd ~vpopmail/bin
./vadddomain xxxx.com
./vadduser test@xxxx.com
chmod 6755 ~vpopmail/bin/vchkpw
## 如果有必要的话,将cdb文件转换到mysql数据库中
# ./vconvert -c -s
this will convert them all from the vpasswd.cdb format to the default
single table database

# ./vconvert -c -s virtualdomain1 virtualdomain2 ...
will convert the list of virtual domains from vpasswd.cdb layout to
single table database

⑨. 更改Sendmail为Qmail
###Skip

# killall -TERM sendmail
# mv /usr/lib/sendmail /usr/lib/sendmail.org
# mv /usr/sbin/sendmail /usr/sbin/sendmail.org
# mv /etc/rc.d/init.d/sendmail /etc/rc.d/init.d/sendmail.org
# ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
# cp /root/qmail/qmail-start /etc/rc.d/init.d/ -f
# cp /root/qmail/databytes /var/qmail/control/ -f
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc3.d/S98qmail

⑩. 制作Qmail控制脚本

 #!/bin/sh
case "$1" in
start)
echo "starting qmail…………"
/var/qmail/rc &
echo "start smtp service…………."
/usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb 0 smtp
/var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger
smtpd 3 &
echo "start pop3 service:"
/usr/local/bin/tcpserver -H -R 0 pop3 /var/qmail/bin/
qmail-popup $HOSTNAME /home/vpopmail/bin/vchkpw
/var/qmail/bin/qmail-pop3d Maildir &
;;
stop)
echo "stop qmail:"
killall -9 tcpserver
killall -9 qmail-lspawn
;;
restart)
$0 stop
$0 start
;;
  *)
echo -n "Usage: $0 {start | stop | restart}"
exit 1
   ;;
esac
exit 0

⑾.安装监视工具
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运行情况
⑿.安装邮件列表管理
tar zxvf ezmlm-0.53.tar.gz
cd ezmlm-0.53
make
make man
make setup
⒀.安装自动回复程序
tar zxvf autorespond-2.0.2.tar.gz
make
make install
⒁. 安装虚拟域web方式管理
tar zxvf qmailadmin-0.81.tar.gz
cd qmailadmin-0.81
# 在安装前首先要考虑满足以下几项要求:
a.是否拥有一个vpopmail用户vchkpw
b.cgi-bin目录的所在位置
c.ezmlm目录的所在位置
d.autorespond目录的所在位置

./configure --enable-cgibindir=/home/boban/public_html/cgi-bin
make
make install-strip

检测安装是否正确,看根据前面设置的用户和密码是否能够成功登录进去。

⒂. 安装SqWebMail包
tar zxvf sqwebmail-3.3.7.tar.gz
cd sqwebmail-3.3.7
./configure --without-authpam --without-authuserdb
--without-authpwd --without-authshadow --without-authldap
--without-authdaemon --with-authvchkpw
--enable-imageurl=/images
--enable-cgibindir=/www/html/cmgmail/cgi-bin
--enable-imagedir=/www/html/cmgmail/images
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
# 运行验证程序
/usr/local/share/sqwebmail/libexec/authlib/authdaemond start
⒃. SqWebmail中文化
cd sqwebmail/html/
# 进入sqwebmail网页的目录
make clone from=en-us to=zh-cn
echo cn50 zh-cn >zh-cn/LANGUAGE_PREF
echo zh_CN >zh-cn/LOCALE
echo gb2312 >zh-cn/CHARSET
echo chinese >zh-cn/ISPELLDICT
# 然后把zh-cn下面的网页统统给汉化就行啦
⒄. 安装vqsignup
tar xvfz vqsignup-0.5.tar.gz
cd vqsignup-0.5
/* 如果vpopmail安装在默认路径,一下不需要更改 */
# a. 修改Makefile文件: FLAGS=-I/home/vpopmail/include
# 修改-I/home/vpopmail/include指到真实的vpopmail/include目录;
# 修改下面的这行
# $(CC) $(FLAGS) -o $(BIN) $(OBJS) -L/home/vpopmail/lib -lvpopmail -lcrypt
# 修改 -L/home/vpopmail/lib 为真的vpopmail/lib的目录
/* 或者可以在make之前设置该环境变量 */

./configure --enable-cgibindir=/home/boban/public_html/cgi-bin --enable-htmldir=/home/boban/public_html/vmail
make
make check
make install-strip
# 编辑cgi-bin目录下的vqsignup.conf文件
# 修改"add_domain"的所有行,加上你的真实的域,把其他的行删除掉。
# 更改vqsignup_text/*.html文件,使包含"result_*"的行的路径指到正确的全路经。
# 修改vqsignup_text目录下所有的文件,使它们只包含你想支持的域,你也可以定制这些页面,使它们更加好看些。
# 修改DocumentRoot目录下vqsignup.html文件,使它只包含你想支持的域,你也可以定制这个页面,使它更加好看些。
# d. 测试试着注册新用户。

以上在本人PC电脑RedHat 7.3下和RedHat 6.2下分别通过测试!!

[补充说明]


对于以下几行的注释
========================
## 修改头文件的连接数据库的主机,用户和密码
## 增加mysql的支持
## 分别拷贝include和lib到 /usr/local/include/mysql和 /usr/local/lib/mysql
========================
正确理解是:
修改的头文件是vpopmail源代码下的vauthmysql.h,另外应该是将include下面的文件拷贝到/usr/local/include/mysql下,而非整个目录;lib也是同样道理。

上一篇:配置linux与win2000/XP/NT 双重引导 人气:8715
下一篇:linux的运行模式:runlevel 人气:7272
点击此处浏览全部Linux的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-5-16 轩溪下载系统 v3.78 build 0515
2008-5-16 普沙B2B 浙江省商贸网 v2.0
2008-5-16 asp抓蜘蛛的小程序 v1.0
2008-5-16 齐齐乐网私服发布站 仿haosf新版
2008-5-16 IssTech信息反馈系统 v1.0
2008-5-16 自由领域大头贴(js接口版) 修正版
2008-5-16 医院网站系统
2008-5-16 智拓-分类信息管理系统 v5.0
2008-5-16 千博企业网站管理系统静态HTML专
2008-5-7 Windows XP SP3 官方英文版
2008-5-7 Windows XP SP3 官方香港中文版
2008-5-7 Windows XP SP3 官方繁体中文版
2008-5-7 Windows XP SP3 官方简体中文版
2008-4-30 Multiple Unzip Wizard 1.02
2008-4-30 Multiple Unrar Wizard 1.0.0
2008-4-30 WinZip Install/Try/Uninstall a
2008-4-30 ZIP压缩文件修复器WzipFix 2.0
2008-4-30 Pentazip 6.01 Build 189 For Wi
  发表评论
姓 名: 验证码: [ 全部贴吧 ] [ 浏览评论 ]
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報