当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux下构架qmail邮件系统

Unix/Linux
查看linux 下已经安装的软件包信息
linux 系统中软件raid 配置方法
linux 下MySQL服务器的启动与停止
linux 系统下FTP服务器配置方法
Linux系统下如何挂载U盘,硬盘,光驱
linux 系统下DHCP服务器 配置方法
Linux系统下软件的安装与卸载
在Fedora 9中启用ext4文件系统的方法
linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享
Linux查看文件夹大小的命令
LINUX系统grub常见错误分析
llinux fdisk分区工具 使用方法
linux 系统telnet乱码
rhythmbox 乱码的解决方法
linux单网卡绑定多ip
tar.gz 和tar.bz2 详细解释
linux学习笔记
linux系统rpm安装包详解
linux 服务器常用维护命令
出现The file /boot/grub/stage1 not read cor 解决办法

Unix/Linux 中的 Linux下构架qmail邮件系统


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 94 ::
收藏到网摘: n/a

  (一)特点简介
安全性 为了验证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 [email protected]
chmod 6755 ~vpopmail/bin/vchkpw<