806 lines
32 KiB
Plaintext
806 lines
32 KiB
Plaintext
Qmail VMailMgr and Courier-Imap HOWTO
|
||
|
||
Dan Kuykendall <dan@kuykendall.org>
|
||
|
||
v1.5, 12 March 2002
|
||
|
||
|
||
This document is about building a mail server that will support virtual
|
||
domain hosting and provide smtp, pop3 and imap services, using a powerful
|
||
alternative to sendmail.
|
||
|
||
-----------------------------------------------------------------------------
|
||
Table of Contents
|
||
1. Introduction
|
||
1.1. What is Qmail and why should I use it?
|
||
1.2. What is VMailMgr and why should I use it?
|
||
1.3. What is Courier-imap and why should I use it?
|
||
1.4. Description of the components
|
||
1.5. Working configurations
|
||
1.6. History
|
||
1.7. New versions
|
||
1.8. Comments
|
||
1.9. Version History
|
||
1.10. Copyrights and Trademarks
|
||
1.11. Acknowledgements and Thanks
|
||
|
||
|
||
2. Component installation
|
||
2.1. Preparations
|
||
2.2. Install support packages
|
||
2.3. Install Qmail
|
||
2.4. Install Courier-imap
|
||
2.5. Install VMailMgr
|
||
|
||
|
||
3. Putting it all together
|
||
3.1. Basic Qmail config
|
||
3.2. Tell Qmail to use VMailMgr for authentication
|
||
3.3. Setup Courier-imap for VMailMgr
|
||
3.4. Setup virtual domain with VMailMgr
|
||
3.5. Starting the daemons
|
||
3.6. Some considerations left
|
||
3.7. Mail clients
|
||
3.8. Known bugs
|
||
3.9. The final word
|
||
|
||
|
||
|
||
1. Introduction
|
||
|
||
Qmail, VMailMgr and Courier-IMAP are a very powerful and easy to use
|
||
solution, but they are not what I would consider easy to setup. I hope this
|
||
document helps with that.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.1. What is Qmail and why should I use it?
|
||
|
||
Here is the authors (Dan Bernstein) blurb:
|
||
|
||
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.
|
||
|
||
It offers POP3, and IMAP (with the help of Courier-IMAP) so that you can use
|
||
any mail client you prefer.
|
||
|
||
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.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.2. What is VMailMgr and why should I use it?
|
||
|
||
VMailMgr is:
|
||
|
||
A password checking interface between qmail-popup and qmail-pop3d which
|
||
replaces the usual checkpassword, as well as an authentication module for
|
||
Courier IMAP, that provide access to the virtual mailboxes by one of three
|
||
methods:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>IP-based virtual server access (invisible to the POP3 user)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>username-based access (username-virtualuser)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>hostname-based access (virtualuser@virtual.host or virtualuser:
|
||
virtual.host)
|
||
|
||
|
||
You should use it if:
|
||
|
||
You prefer to have the users manage their own domains email accounts, and
|
||
store their email in their own home dir. (This makes setting up disk space
|
||
quotas much easier)
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.3. What is Courier-imap and why should I use it?
|
||
|
||
Courier-IMAP is:
|
||
|
||
A server that provides IMAP access to Maildir mailboxes. This IMAP server
|
||
does NOT handle traditional mailbox files (/var/spool/mail, and derivatives),
|
||
it was written for the specific purpose of providing IMAP access to Maildirs.
|
||
|
||
You should use it because:
|
||
|
||
By default Qmail uses the newer more efficient Maildir format for storing
|
||
email, and Courier-imap is the only imap server I am aware of that supports
|
||
Maildir. So in short, if you use Qmail, and want imap support, you have to
|
||
use it.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.4. Description of the components
|
||
|
||
The email system you hopefully will get after having read this HOWTO is
|
||
composed of several parts, the patched Qmail rpms are key to using this
|
||
document. I recommend using the software versions I tried, they will probably
|
||
compile without many problems and result in a fairly stable daemon. If you
|
||
are courageous, you can try to compile all the
|
||
latest-stuff-with-tons-of-new-features, but don't blame me if something fails
|
||
;-). However, you may report other working configurations to be included in
|
||
future versions of this document. All of the steps were tested on a RedHat
|
||
Linux 7.2 box, so the HOWTO is somewhat specific, but you should be able to
|
||
use it for other linux distributions as well.
|
||
|
||
You do not necessarily have to install in all components. I tried to
|
||
structure this HOWTO so that you can skip the parts you are not interested
|
||
in.
|
||
|
||
The document is neither a user manual to Qmail, VMailMgr nor Courier-imap.
|
||
Its prime intention is to save email admins some headaches when installing
|
||
their server and to do my little contribution to the linux community.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.5. Working configurations
|
||
|
||
Though this document is only able to cover a snapshot in time on a limited
|
||
number of setups, I am pretty confident that it can help you get your email
|
||
system up and running. Combinations that work for me are:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>RedHat 7.2, Qmail 1.03+patches-18, VMailMgr 0.96.9, Courier-imap 1.4.3
|
||
|
||
<EFBFBD><EFBFBD>*<2A>RedHat 6.2, Linux 2.2.14, Qmail 1.03+patches-12, VMailMgr 0.96.6,
|
||
Courier-imap 0.31
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Mandrake 7.0, Linux 2.2.13, Qmail 1.03+patches-12, VMailMgr 0.96.6,
|
||
Courier-imap 0.31
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Debian Potato, Qmail 1.03, VMailMgr 0.96.9, Courier-imap 1.4.3
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
1.6. History
|
||
|
||
This document was started on April 18, 2000 by Dan Kuykendall after several
|
||
installs of Qmail and VMailMgr. Then even more setups when Courier-imap
|
||
support was ready.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.7. New versions
|
||
|
||
The newest version of this can be found on my homepage [http://
|
||
www.clearrivertech.com/linux/HOWTO] http://www.clearrivertech.com/linux/HOWTO
|
||
as SGML source, as HTML and as TEXT. Other versions may be found in different
|
||
formats at the LDP homepage [http://www.linuxdoc.org/] http://
|
||
www.linuxdoc.org/.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.8. Comments
|
||
|
||
Comments on this HOWTO may be directed to the author Dan Kuykendall ([mailto:
|
||
dan@kuykendall.org] dan@kuykendall.org).
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.9. Version History
|
||
|
||
v0.1 (April 18, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Preview version, wasn't in HOWTO format.
|
||
|
||
|
||
v1.0 (April 18, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Minor corrections.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Added details and put into HOWTO format.
|
||
|
||
|
||
v1.1 (April 19, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Minor corrections.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Restructured RPM install step.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Added source compile and install steps.
|
||
|
||
|
||
v1.2 (April 19, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Minor corrections.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Fixed source compile locations and install steps.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Added source compile and install steps.
|
||
|
||
|
||
v1.3 (April 19, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Minor corrections.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Built proper SGML version (using LinuxDoc DTD).
|
||
|
||
|
||
v1.4 (April 23, 2000)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Updated the Courier-IMAP setup information for new VMailMgr version.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Switched the license to the GNU FDL.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Other minor additions and corrections.
|
||
|
||
|
||
v1.5 (March 11, 2002)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Updated the Courier-IMAP setup information for new VMailMgr version.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Updated links to various websites.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Other minor additions and corrections.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Switched SGML from LinuxDOC to DocBook.
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
1.10. Copyrights and Trademarks
|
||
|
||
Copyright (c) Dan Kuykendall. Permission is granted to copy, distribute and/
|
||
or modify this document under the terms of the GNU Free Documentation
|
||
License, Version 1.1 or any later version published by the Free Software
|
||
Foundation
|
||
|
||
A copy of the license is available at [http://www.gnu.org/copyleft/fdl.txt]
|
||
GNU Free Documentation License.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.11. Acknowledgements and Thanks
|
||
|
||
Thanks to everyone that gave comments as I was writing this. This includes
|
||
Bruce Guenter and other members of the vmailmgr-discuss list.
|
||
-----------------------------------------------------------------------------
|
||
|
||
2. Component installation
|
||
|
||
2.1. Preparations
|
||
|
||
You have two options
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Get and compile source rpms. This has the benefit of being able to review
|
||
the source before compiling, and compiling for your specific setup.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Or simply get the binary rpms. This has the benefit of simplicity, and
|
||
not having to worry about having the necessary libraries installed.
|
||
|
||
|
||
I recommend using Bruce Guenter's rpm releases, since they are well patched,
|
||
and its what I used for building my systems.
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.1.1. Get source rpms
|
||
|
||
You will need:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-tcp-0.88-1.src.rpm - [http://untroubled.org/rpms/ucspi-tcp/] http:/
|
||
/untroubled.org/rpms/ucspi-tcp/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-unix-0.34-1.src.rpm - [http://untroubled.org/ucspi-unix/] http://
|
||
untroubled.org/ucspi-unix/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>daemontools-0.70-3.src.rpm - [http://untroubled.org/rpms/daemontools/]
|
||
http://untroubled.org/rpms/daemontools/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>supervise-scripts-3.3-1.src.rpm - [http://untroubled.org/
|
||
supervise-scripts/] http://untroubled.org/supervise-scripts/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>qmail-1.03+patches-18.src.rpm - [http://untroubled.org/qmail+patches/
|
||
current/] http://untroubled.org/qmail+patches/current/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>vmailmgr-0.96.9-1.src.rpm - [http://www.vmailmgr.org/current/] http://
|
||
www.vmailmgr.org/current/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>courier-imap-1.4.3.tar.gz - [http://www.inter7.com/courierimap/] http://
|
||
www.inter7.com/courierimap/
|
||
|
||
|
||
For Courier-imap you must build the source rpm from the tar file
|
||
(instructions will follow).
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.1.2. Get binary rpms
|
||
|
||
Qmail does not come in binary form. Such packages are explicitly disallowed
|
||
by the author of Qmail, and frustrating as it may be, I understand his
|
||
reasoning.
|
||
|
||
Courier-imap does not come in binary form, unless you want to use the one I
|
||
built. If you want mine, visit [http://www.clearrivertech.com/linux/HOWTO/
|
||
supportfiles/] http://www.clearrivertech.com/linux/HOWTO/supportfiles/.
|
||
|
||
VMailMgr does not come in binary form that supports Courier-imap, unless you
|
||
want to use the one I built. If you want mine, email me, and I will send it.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-tcp-0.88-1.i386.rpm - [http://untroubled.org/rpms/ucspi-tcp/] http:
|
||
//untroubled.org/rpms/ucspi-tcp/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-unix-0.34-1.i386.rpm - [http://untroubled.org/ucspi-unix/] http://
|
||
untroubled.org/ucspi-unix/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>daemontools-0.70-1.i386.rpm - [http://untroubled.org/rpms/daemontools/]
|
||
http://untroubled.org/rpms/daemontools/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>supervise-scripts-3.3-1.noarch.rpm - [http://untroubled.org/
|
||
supervise-scripts/] http://untroubled.org/supervise-scripts/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>qmail-1.03+patches-18.src.rpm - [http://untroubled.org/qmail+patches/
|
||
current/] http://untroubled.org/qmail+patches/current/(*)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>vmailmgr-0.96.9-2.i386.rpm - [http://www.vmailmgr.org/current/] http://
|
||
www.vmailmgr.org/current/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>vmailmgr-courier-imap-0.96.9-2.i386.rpm - [http://www.vmailmgr.org/
|
||
current/] http://www.vmailmgr.org/current/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>courier-imap-1.4.3.tar.gz - [http://www.inter7.com/courierimap/] http://
|
||
www.inter7.com/courierimap/ (**)
|
||
|
||
|
||
* For qmail, you must always compile yourself due to the license
|
||
restrictions. ** For Courier-imap you must build the binary rpm from the tar
|
||
file (instructions will follow) or email me for my binary rpm.
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.1.3. Get deb packages
|
||
|
||
There are multiple locations for qmail and vmailmgr deb packages.
|
||
Courier-imap is part of the normal debian applications.
|
||
|
||
You can get them in the following locations:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://bagic.net/~billy/debs/] http://bagic.net/~billy/debs/ - by Hon
|
||
[mailto:billy@bagic.net] billy@bagic.net
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.tet.dk/] http://www.tet.dk/ - by Ole Barnkob Kaas [mailto:
|
||
admin@tet.dk] admin@tet.dk
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://smarden.org/pape/Debian/] http://smarden.org/pape/Debian/ - by
|
||
Gerrit Pape [mailto:pape@smarden.org] pape@smarden.org
|
||
|
||
|
||
The packages by Hon are current and even include support for courier-imap,
|
||
which was a great help for me, so I am going to use a combination of them for
|
||
my examples. You can of course choose the ones you want for yourself, but
|
||
your results may vary.
|
||
|
||
You will need:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-tcp_0.88-3_i386.deb - [http://bagic.net/~billy/debs/ucspi-tcp/
|
||
0.88-3/] http://bagic.net/~billy/debs/ucspi-tcp/0.88-3/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-unix_0.34-1_i386.deb - [http://bagic.net/~billy/debs/ucspi-unix/]
|
||
http://bagic.net/~billy/debs/ucspi-unix/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>The latest daemontools from - [http://smarden.org/pape/Debian/
|
||
daemontools.html] http://smarden.org/pape/Debian/daemontools.html
|
||
|
||
<EFBFBD><EFBFBD>*<2A>supervise-scripts_3.3-6_i386.deb - [http://share.runtime-collective.com/
|
||
~berkan/debian/dists/woody/misc/binary-i386/] http://
|
||
share.runtime-collective.com/~berkan/debian/dists/woody/misc/binary-i386/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>qmail_1.03-17_i386.deb - [http://bagic.net/~billy/debs/qmail/1.03-17/]
|
||
http://bagic.net/~billy/debs/qmail/1.03-17/(*)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>vmailmgr_0.96.9-3_i386.deb - [http://bagic.net/~billy/debs/vmailmgr/]
|
||
http://bagic.net/~billy/debs/vmailmgr/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>courier-imap - apt-get courier-imap
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
2.1.4. Get tarred sources (for non-RPM users)
|
||
|
||
If your system does not have, or you do not use RPMS, you can install from
|
||
source.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-tcp-0.88.tar.gz - [http://cr.yp.to/ucspi-tcp/] http://cr.yp.to/
|
||
ucspi-tcp/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>ucspi-unix-0.34.tar.gz - [http://untroubled.org/ucspi-unix/] http://
|
||
untroubled.org/ucspi-unix/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>daemontools-0.70.tar.gz - [http://cr.yp.to/daemontools] http://cr.yp.to/
|
||
daemontools
|
||
|
||
<EFBFBD><EFBFBD>*<2A>supervise-scripts-3.3.tar.gz - [http://untroubled.org/supervise-scripts/]
|
||
http://untroubled.org/supervise-scripts/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>(qmail) release-18.tar.gz - [http://untroubled.org/qmail+patches/current
|
||
/] http://untroubled.org/qmail+patches/current/ (*)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>vmailmgr-0.96.9.tar.gz - [http://www.vmailmgr.org/current/] http://
|
||
www.vmailmgr.org/current/
|
||
|
||
<EFBFBD><EFBFBD>*<2A>courier-imap-1.4.3.tar.gz - [http://www.inter7.com/courierimap/] http://
|
||
www.inter7.com/courierimap/
|
||
|
||
|
||
+----------------------------------------------------------------------------------------+
|
||
|(*) There may be minor differences in these instructions due to the use of the standard |
|
||
|Qmail package. Please review the documentation for Qmail and VMailMgr if any of |
|
||
|the files deviates from my instructions. |
|
||
+----------------------------------------------------------------------------------------+
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.2. Install support packages
|
||
|
||
2.2.1. Install with RPMS
|
||
|
||
2.2.1.1. Compiling SRC.RPM's
|
||
|
||
Simply run the following command for each package rpm --rebuild <
|
||
package.src.rpm> -Example-
|
||
rpm --rebuild ucspi-tcp-0.88-1.src.rpm
|
||
rpm --rebuild ucspi-unix-0.34-1.src.rpm
|
||
rpm --rebuild daemontools-0.70-3.src.rpm
|
||
rpm --rebuild supervise-scripts-3.3-1.src.rpm
|
||
You may get dependancy errors. If you do then install the package that is
|
||
being requested using the steps below. This may happen when you compile
|
||
daemontools before installing ucspi-tcp.
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.2.1.2. Installing RPM's
|
||
|
||
If you compiled the source rpms, the binaries will be located in /usr/src/
|
||
redhat/RPMS/i386/ or something similar.
|
||
|
||
Simply run the following command for each package rpm -ivh <location>/<
|
||
package.i386.rpm>
|
||
|
||
-Example-
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/ucspi-tcp-0.88-1.i386.rpm
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/ucspi-unix-0.34-1.i386.rpm
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/daemontools-0.70-3.i386.rpm
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/supervise-scripts-3.3-1.i386.rpm
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.2.2. Install with debs
|
||
|
||
Run the following commands for each package (as root) dpkg -i <package.deb>
|
||
|
||
-Example-
|
||
dpkg -i ucspi-tcp_0.88-3_i386.deb
|
||
dpkg -i ucspi-unix_0.34-1_i386.deb
|
||
dpkg -i daemontools_0.70-1_i386.deb
|
||
dpkg -i supervise-scripts_3.3-6_i386.deb
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.2.3. Install with source
|
||
|
||
Run the following commands for each package (As non-root user) tar zxf <
|
||
package.tar.gz> cd <newly created dir> ./configure make (As root) make setup
|
||
check (for ucspi-tcp and daemontools) or make install (for ucspi-unix and
|
||
supervise-scripts)
|
||
|
||
-Example-
|
||
(As non-root user)
|
||
tar zxf supervise-scripts-2.4.tar.gz
|
||
cd supervise-scripts-2.4
|
||
./configure
|
||
make
|
||
(As root)
|
||
make setup check or make install
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.3. Install Qmail
|
||
|
||
2.3.1. Install with RPMS
|
||
|
||
2.3.1.1. Compiling SRC.RPM's
|
||
|
||
After installing the support packages, Simply run the following command: rpm
|
||
--rebuild <package.src.rpm>
|
||
|
||
-Example-
|
||
rpm --rebuild qmail-1.03+patches-18.src.rpm
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.3.1.2. Installing RPM's
|
||
|
||
After compiling the source rpms, the binaries will be located in /usr/src/
|
||
redhat/RPMS/i386/ or something similar.
|
||
|
||
Simply run the following command for the qmail package rpm -ivh <location>/<
|
||
package.i386.rpm>
|
||
|
||
-Example-
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/qmail-1.03+patches-18.i386.rpm
|
||
|
||
* note start * - Remove sendmail and any dependant applications prior to
|
||
installing Qmail - by running the following command for each package - rpm -e
|
||
<packagename>* - - On my system I had to remove sendmail, so I typed - rpm -e
|
||
sendmail * note end *
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.3.2. Install with debs
|
||
|
||
Run the following commands for each package (as root) dpkg -i <package.deb>
|
||
|
||
-Example-
|
||
dpkg -i qmail_1.03-17_i386.deb
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.3.3. Install with source
|
||
|
||
Run the following command (As non-root user) tar zxf <package.tar.gz> cd <
|
||
newly created dir> (Now read the INSTALL file and follow the steps to install
|
||
Qmail) -Example-
|
||
(As non-root user)
|
||
tar zxf release-18.tar.gz
|
||
cd release-1.03
|
||
vi INSTALL (Read and follow steps)
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.4. Install Courier-imap
|
||
|
||
2.4.1. Install with RPMS
|
||
|
||
2.4.1.1. Compiling SRC.RPM's
|
||
|
||
Build the courier-imap rpms from the tar file rpm -ta
|
||
courier-imap-1.4.3.tar.gz
|
||
|
||
* note start * - This errors out if you compile as root, but if your not root
|
||
you - wont have permissions to /usr/src/redhat. You will want to build as a -
|
||
non-root user, so create a ".rpmmacros" file (for rpm v3 and later) in - your
|
||
home directory containing the line "%_topdir /path/to/home/redhat". - Then
|
||
create your own "redhat" directory containing all the subdirs that - /usr/src
|
||
/redhat contains. - You should never build RPMs as root unless you have to. *
|
||
note end *
|
||
|
||
* I will mention again, that I have built the binaries, and you can get them
|
||
at * * [http://www.clearrivertech.com/linux/HOWTO/supportfiles/] http://
|
||
www.clearrivertech.com/linux/HOWTO/supportfiles/. *
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.4.1.2. Installing RPM's
|
||
|
||
After compiling the source rpms, the binary will be located in /usr/src/
|
||
redhat/RPMS/i386/ or something similar.
|
||
|
||
Simply run the following command for each package rpm -ivh <location>/<
|
||
package.i386.rpm>
|
||
|
||
-Example-
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/courier-imap-1.4.3.i386.rpm
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.4.2. Install with debs
|
||
|
||
Run the following commands for each package (as root) apt-get <package.deb>
|
||
|
||
-Example-
|
||
apt-get courier-imap
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.4.3. Install with source
|
||
|
||
Run the following command (As non-root user) tar zxf <package.tar.gz> cd <
|
||
newly created dir> ./configure make (As root) make install
|
||
|
||
-Example-
|
||
(As non-root user)
|
||
tar zxf courier-imap-1.4.3.tar.gz
|
||
cd courier-imap-1.4.3
|
||
./configure
|
||
make
|
||
(As root)
|
||
make install
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.5. Install VMailMgr
|
||
|
||
2.5.1. Install with RPMS
|
||
|
||
2.5.1.1. Compiling SRC.RPM's
|
||
|
||
There is a problem compliling VMailMGR on RedHat 7.x distros (and maybe other
|
||
new ones as well). To solve this you must edit the source files These files
|
||
need to have an #include <string.h> added
|
||
lib/misc/exec.cc
|
||
lib/misc/keystrlist.cc
|
||
lib/misc/strlist.cc
|
||
lib/mystring/append.cc
|
||
authenticate/authvmailmgr.cc
|
||
The following needs to have an #include <stdlib.h>:
|
||
authenticate/vauthenticate.cc
|
||
authenticate/checkvpw.cc
|
||
The copies I have on [http://www.clearrivertech.com/linux/HOWTO/supportfiles/
|
||
rh72/] http://www.clearrivertech.com/linux/HOWTO/supportfiles/rh72/ are
|
||
already patched.
|
||
|
||
Simply run the following command rpm --rebuild <package.src.rpm> -Example-
|
||
rpm --rebuild vmailmgr-0.96.9-1.src.rpm
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.5.1.2. Installing RPM's
|
||
|
||
If you compiled the source rpm, the binaries will be located in /usr/src/
|
||
redhat/RPMS/i386/ or something similar.
|
||
|
||
Simply run the following command for each package rpm -ivh <location>/<
|
||
package.i386.rpm>
|
||
|
||
-Example-
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/vmailmgr-0.96.9-1.i386.rpm
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/VMailMgr-daemon-0.96.6-1.i386.rpm
|
||
rpm -ivh /usr/src/redhat/RPMS/i386/vmailmgr-courier-imap-0.96.9-2.i386.rpm
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.5.2. Install with debs
|
||
|
||
Run the following commands for each package (as root) dpkg -i <package.deb>
|
||
|
||
-Example-
|
||
dpkg -i vmailmgr_0.96.9-3_i386.deb
|
||
-----------------------------------------------------------------------------
|
||
|
||
2.5.3. Install with source
|
||
|
||
There is a problem compliling VMailMGR on RedHat 7.x distros (and maybe other
|
||
new ones as well). To solve this you must edit the source files These files
|
||
need to have an #include <string.h> added
|
||
lib/misc/exec.cc
|
||
lib/misc/keystrlist.cc
|
||
lib/misc/strlist.cc
|
||
lib/mystring/append.cc
|
||
authenticate/authvmailmgr.cc
|
||
The following needs to have an #include <stdlib.h>:
|
||
authenticate/vauthenticate.cc
|
||
authenticate/checkvpw.cc
|
||
The copies I have on [http://www.clearrivertech.com/linux/HOWTO/supportfiles/
|
||
rh72/] http://www.clearrivertech.com/linux/HOWTO/supportfiles/rh72/ are
|
||
already patched.
|
||
|
||
Run the following commands (As non-root user) tar zxf <package.tar.gz> cd <
|
||
newly created dir> ./configure make (As root) make install -Example-
|
||
(As non-root user)
|
||
tar zxf vmailmgr-0.96.9.tar.gz
|
||
cd vmailmgr-0.96.9
|
||
./configure
|
||
make
|
||
(As root)
|
||
make setup check or make install
|
||
That should do it.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3. Putting it all together
|
||
|
||
3.1. Basic Qmail config
|
||
|
||
You will need to add your domains to the /var/qmail/control/virtualdomains
|
||
file in the following format as is normal with qmail and VMailMgr.
|
||
domain1.com:user1 For more detailed setup and config documentation visit the
|
||
Qmail website [http://www.qmail.org] http://www.qmail.org and the VMailMgr
|
||
website [http://www.vmailmgr.org] http://www.vmailmgr.org
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.2. Tell Qmail to use VMailMgr for authentication
|
||
|
||
By default qmail uses checkpassword for authentication, to tell Qmail to use
|
||
VMailMgr for authentication type the following command:
|
||
echo checkvpw > /var/qmail/control/checkpassword
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.3. Setup Courier-imap for VMailMgr
|
||
|
||
Copy the VMailMgr auth libs to courier's directory. If you installed from
|
||
RPM, then the vmailmgr-courier-imap RPM will have done this for you.
|
||
Otherwise use this command:
|
||
cp /usr/bin/authvmailmgr /usr/lib/courier-imap/libexec/authlib/
|
||
|
||
Edit /usr/lib/courier-imap/etc/imapd and add authvmailmgr as the only entry
|
||
in AUTHMODULES
|
||
|
||
For more detailed setup and config documentation visit the Courier-imap
|
||
website [http://www.inter7.com/courierimap/] http://www.inter7.com/
|
||
courierimap/
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.4. Setup virtual domain with VMailMgr
|
||
|
||
With the user account that will be managing the domain go to their home dir
|
||
and type:
|
||
vsetup
|
||
|
||
This will setup the users home dir with the necessary structure to handle
|
||
incoming email. You will probably want to create a email account by typing
|
||
|
||
vadduser emailuser
|
||
|
||
For more detailed setup and config documentation visit the VMailMgr website
|
||
[http://www.vmailmgr.org] http://www.vmailmgr.org
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.5. Starting the daemons
|
||
|
||
Starting the Qmail daemon. Qmail installs itself to autostart by some
|
||
mysterious (to me) way. If you like init scripts you can get Larry
|
||
Doolittle's ([ldoolitta@ajlab.org] ldoolitta@ajlab.org) init.d script at
|
||
[http://qmail.area.com/init.d-script] http://qmail.area.com/init.d-script If
|
||
you have the Larry's init.d script just do this.
|
||
/etc/rc.d/init.d/qmail start
|
||
|
||
Start VMailMgr daemon
|
||
/etc/rc.d/init.d/vmailmgrd start
|
||
|
||
Start Courier-imap damon
|
||
/etc/rc.d/init.d/courier-imap start
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.6. Some considerations left
|
||
|
||
Qmail and the Maildirs may cause some email apps that run locally to not
|
||
work. Visit the Qmail website [http://www.qmail.org] http://www.qmail.org for
|
||
details on email apps that have been patched to work with Maildirs.
|
||
|
||
Courier-imap is not as widely used as Cyrus or UWash imap servers. As such,
|
||
you may suffer from minor incompatibilities. Courier-imap is extremely well
|
||
written, and tries to comply with the imap definition even if it means some
|
||
imap clients wont work well. For details visit the Courier-imap website
|
||
[http://www.inter7.com/courierimap/] http://www.inter7.com/courierimap/.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.7. Mail clients
|
||
|
||
With the solution you should now have setup you will need to know that user
|
||
accounts will be user@domain.com Netscape does not like this, so for netscape
|
||
use user:domain.com
|
||
|
||
I would like to suggest that you also checkout phpGroupWare at [http://
|
||
www.phpgroupware.org] http://www.phpgroupware.org. I have built in support
|
||
for vmailmgr into it already and it can give you an end result of a full
|
||
Groupware solution to fend of MS Exchange/Outlook or Lotus Domino.
|
||
|
||
If you decide to use a web based mail client, you will probably want to
|
||
adjust courier-imaps MAXPERIP setting. By default it is 4, which is a bit
|
||
low. Bump it up to something more sensible, like 10 - 50. Otherwise our
|
||
webmail users will have problems connecting. This setting is in /usr/lib/
|
||
courier-imap/etc/imapd.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.8. Known bugs
|
||
|
||
None yet.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.9. The final word
|
||
|
||
Im tired, and wonder if anyone will ever use this, but I'm happy its done.
|
||
I'm sure if you have read this far your tired too. Well, all I can hope is
|
||
that you have Qmail, VMailMgr and Courier-imap working. If so, Enjoy! If not,
|
||
bummer!
|
||
|
||
O.K. readers, you're done for today. Feel free to send me your feedback,
|
||
eternal gratitude, flowers, ecash, cars, oil sources etc.
|