GoldStar Studio

 Index Next

qmail Vpopmail And sqwebmail HOWTO(1)

1:介绍

本HOWTO的目的是帮助你从头开始建立一个大容量(1000用户以上)、易管理、易扩充、分布式、用户界面友好的邮件系统。如果仅仅是为了支持内 部网络的很少用户,你可以选择sendmail,甚至是基于NT平台的任何共享的邮件服务器软件,它们更加易与操作和设定。作为一种尝试,当然你也可以选 择本系统,但是你必须对Linux系统有相当的了解,至少是可以独立的配置一台Linux网络服务器。

本文档并不是简单的把相关软件的安装文档及FAQ汉化,相反的,本文档几乎不包括任何相关软件的安装文档及FAQ, 我认为作为一个qmail的使用者,他应该做到以下几点:

  • 熟悉了所有Dan Bernstein(qmail的作者)发布的文档;
  • 熟悉www.qmail.org(qmail官方站点)的相关资源;
  • 尽量理解Life With qmail
  • 耐心阅读所有相关软件的安装文档及FAQ!

qmail是一个非常复杂的系统,尽管它本身非常简洁。如果你对它的复杂性不够了解,你可以对照一下Sendmail, qmail就是设计用来取代Sendmail的。尽管qmail的配置要比Sendmail简单的多,而且通过第三方编程人员的不断努力,附加的add-on使得qmail更加易于配置和管理,但是它确实是一个非常复杂的系统。它需要你具有丰富的*NIX平台 的管理经验,一旦你能正确的理解qmail,你就会发现,qmail确实是一个空前优秀的邮件系统。

本文档想起到一个“粘合剂”的作用,希望能够帮助qmail用户迅速实现一个以qmail为核心的大型邮件系统,并希望 能够针对各组件的协调工作问题给出一个可行的解决方案。

本文档及其所有的附加脚本都已经经过了作者本人的测试,如果在你的系统上不能工作或出现异常错误,你可以参见 1.7测试环境,对于其他的 *NIX 系统,我相信本文档的基本概念是正确的。

1.1:什么是qmail,为什么要用qmail?

以下是qmail的设计者(Dan Bernstein)对qmail的评价:

Qmail is a secure, reliable, efficient, simple message transfer agent. It is meant as a replacement for the entire sendmail-binmail system on typical Internet-connected UNIX hosts.

Secure: Security isn't just a goal, but an absolute requirement. Mail delivery is critical for users; it cannot be turned off, so it must be completely secure. (This is why I started writing qmail: I was sick of the security holes in sendmail and other MTAs.)

Reliable: qmail's straight-paper-path philosophy guarantees that a message, once accepted into the system, will never be lost. qmail also supports maildir, a new, super-reliable user mailbox format. Maildirs, unlike mbox files and mh folders, won't be corrupted if the system crashes during delivery. Even better, not only can a user safely read his mail over NFS, but any number of NFS clients can deliver mail to him at the same time.

Efficient: On a Pentium under BSD/OS, qmail can easily sustain 200000 local messages per day---that's separate messages injected and delivered to mailboxes in a real test! Although remote deliveries are inherently limited by the slowness of DNS and SMTP, qmail overlaps 20 simultaneous deliveries by default, so it zooms quickly through mailing lists. (This is why I finished qmail: I had to get a big mailing list set up.)

Simple: qmail is vastly smaller than any other Internet MTA. Some reasons why: (1) Other MTAs have separate forwarding, aliasing, and mailing list mechanisms. qmail has one simple forwarding mechanism that lets users handle their own mailing lists. (2) Other MTAs offer a spectrum of delivery modes, from fast+unsafe to slow+queued. qmail- send is instantly triggered by new items in the queue, so the qmail system has just one delivery mode: fast+queued. (3) Other MTAs include, in effect, a specialized version of inetd that watches the load average. qmail's design inherently limits the machine load, so qmail-smtpd can safely run from your system's inetd.

Replacement for sendmail: qmail supports host and user masquerading, full host hiding, virtual domains, null clients, list-owner rewriting, relay control, double-bounce recording, arbitrary RFC 822 address lists, cross-host mailing list loop detection, per-recipient checkpointing, downed host backoffs, independent message retry schedules, etc. In short, it's up to speed on modern MTA features. qmail also includes a drop-in ``sendmail'' wrapper so that it will be used transparently by your current UAs.

实际上,由于采用maildir,qmail使得分布式邮件系统更易实现,为支持大规模和超大规模用户, 邮件存储方式为必然的分布式存储。

同sendmail相比,qmail比较简洁,但通过addd-on,qmail的特性已同sendmail不相上下, 而性能更是比sendmail高出许多!同时没有令管理员头痛的复杂的离谱的配置过程及安全漏洞。同其他 邮件系统相比,优势更是明显。

1.2:什么是vpopmail,为什么要用vpopmail?

vpopmail是www.inter7.com推出的qmail add-on,主要解决qmail、postfix系统中的虚拟域 问题,qmail本身支持虚拟邮件域,但是使用不很方便,vpopmail使得虚拟域更易于使用和维护,而且, 由于vpopmail支持Oracle、Sysbase、MySQL及LDAP方式的用户信息存储,使得建立和维护一个拥有 几K、几M、几十M甚至更多用户的大型分布式系统成为可能。

vpopmail的主要优势体现在用户信息存于数据库或LDAP 目录,使得提取及共享用户信息变的简单,其 缺点是用户信息过于简单,不如http://www.nrg4u.com/提供的LDAP patch。vpopmail 的LDAP支持 不同于LDAP patch,vpopmail可存取的LDAP 目录中的条目远远少于 LDAP patch。

虽然vpopmail不支持丰富的用户信息,但若想整体的使用sqwebmail,vpopmail仍是最佳选择。同其相比,VMailMgr同样不支持丰富的用户信息,LDAP patch 虽提供了丰富的用户信息,但是缺乏成熟的 Web 客户端。

1.3:什么是qmailadmin,为什么要用qmailadmin?

qmailadmin是兼容于vpopmail的用户管理界面,使用qmailadmin将使你方便的管理邮件用户及邮件列表。qmailadmin需要autorespond及ezmlm的支持,若想充分发挥它的功能,还需要ezmlm-idx。

autorespond:使qmailadmin可以管理用户的自动回复

ezmlm:一个优秀的邮件列表管理器 by Dan Bernstein。

ezmlm-idx:ezmlm的add-on,by Fred Lindberg 。

1.4:什么是ezmlm,为什么要用ezmlm?

ezmlm是基于qmail的一个高效、易用的邮件列表管理器,用户可以使用它创建自己的邮件列表。ezmlm 非常可靠,即使面临系统突然断电的严重问题,它也不会丢失信件。ezmlm可以处理超大规模的邮件列表而不 会受系统资源的限制。

ezmlm-idx是对ezmlm的扩展,它修订了ezmlm的部分功能并提供了扩展的其他丰富功能,使得管理和创建邮件列表更加简单、有效。特别是,它提供了MySQL和pgSQL的支持,使得更加容易同其他应用共享邮件列表的信息。

1.5:什么是vqsignup,为什么要用vqsignup?

vqsignup是一个基于vpopmail/qmail的处理新用户请求的系统,它允许用户通过Web页面申请自己的 基于vpopmail/qmail的邮件账号。作为一个大型系统,这实在是一个必不可少的功能。

1.6:什么是sqwebmail,为什么要用sqwebmail?

sqwebmail是一个邮件系统的Web界面,通过它,用户可以通过Web界面来收发邮件。

sqwebmail的特性是稳定和快速,同IMP相比,它的负载可以更大。

sqwebmail整体是完全可定制的,你可以自己决定Web界面的显示方式,而不是使用默认提供的丑陋的界面。

对于qmail+vpopmail的基本系统,选择sqwebmail是必然的。

1.7:测试环境

本HOWTO是在RedHat 7.1系统上完成的,我认为,它的大部分都可以不加修改的应用到RedHat 6.X环境,由于RedHat 7.1的目录结构有所改动,应用于其他系统时务必确认一下几点:

MySQL的库文件位置

Apache的发布目录

其他Linux的发行版、FreeBSD、SunOS和所有 *NIX系统都可以使用此HOWTO,但是你有必要了解你的系统的特色和阅读所有需安装部件的文档以查找对应你的系统需修改的代码和需设置的变量。

1.8:本HOWTO的发展历史

1.1:规范化文档,各章节的更新独立进行,只有发生重大改变才更新主版本号。

1.0:首次发布,不很完善。

1.9:何处可得到最新版本?

本文档最新版本从http://hleil.126.com可以得到。

由于文档格式变化,所有更新都是对子章节的更新,已更新的子章节在目录中添加Update!来表示!时间为一个月。

所有新添加的章节在目录中添加New!来表示!时间为一个月。

1.10:版权声明

本文档著作权属于 hleil<hleil@163.com>。

任何人可以在遵从GNU Free Documentation License条款的前提下发布此文档,任何修改必须通知 作者本人,并公开其修改内容。

可以在以下位置得到GNU Free Documentation License

1.11:致谢

作者感谢所有对此文档及其相关内容提出疑问及报告错误的网友,是他们促进了本文档的完善,使本文档 具有更好的可用性。

同时感谢为此文档提供免费存储空间的相关所有网站。



Valid XHTML 1.0 StrictCopyright © 2001-2006 GoldStar Studio. All rights reserved.

鲁ICP备11008313号