
                                 Courier-IMAP
                                       
   Copyright 1999-2000, Double Precision, Inc. This software is
   distributed under the terms of the GNU General Public License. See
   COPYING for additional information.
   
   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.
   
   "Maildir" is a directory-based mail storage format. Multiple
   applications can access the same Maildir simultaneously without
   requiring any kind of locking whatsoever. It works particularly well
   over NFS, which traditionally is very problematic as far as locking is
   concerned.
   
   This is the same IMAP server that's included in the Courier mail
   server, but configured as a standalone IMAP server that can be used
   with other mail servers that deliver to maildirs. If you already have
   Courier installed, you do not need to download this version. If you
   install this version, you must remove it if you later install the
   entire Courier server. It's possible to have both versions installed,
   but this will require a delicate juggling act that you'll have to
   learn on your own.
   
   Courier-IMAP implements several extensions to the basic Maildir mail
   storage format in order to support some additional features, such as
   folders and "soft" quotas. This is done in a way that's backwards
   compatible with the standard Maildir users (although, of course, they
   will ignore the additional features). Other software that understands
   and uses the same Maildir extensions is SqWebMail, and maildrop.
   
Features

     * Extremely small footprint. On x86, Courier-IMAP's main daemon is a
       fraction of the size of the UW-IMAP server.
     * Abstract authentication modules. Authentication of login userid
       and password is abstracted into a completely stand-alone module.
       Several modules are provided to authenticate using the traditional
       password/shadow files, via the PAM library, or an LDAP server. An
       experimental authentication module for MySQL is also available.
       You can also write your own custom userid/password validation
       program. You can either do everything from scratch, such as
       obtaining the userid and password that Courier-IMAP wants to
       validate, and then returning a response; or, link with the
       authentication library that does that, leaving you to worry about
       just the task of authenticating it.
     * Virtual mailboxes. The userdb authentication module uses either a
       GBDM or DB database to map arbitrary userids to maildirs. Perl
       scripts are included to manage this database. There's also an
       authentication module that implements the vpopmail virtual mailbox
       implementation.
     * Ability to restrict maximum number of IMAP logins, and maximum
       number of logins from the same IP address. This will prevent
       denial-of-service attacks where the attacker attempts to overload
       the server with multiple login connections.
     * Shared folders.
     * IMAP over SSL. If OpenSSL is installed, Courier-IMAP will,
       optionally, accept IMAP connections over SSL. The IMAP STARTTLS
       extension is also implemented.
     * IPv6 support, if available.
     * IMAP extensions that implement server-side sorting. This can be
       optionally disabled in environments that have limited resources.
       
Download

   The latest release build is
   ftp://download.sourceforge.net/pub/sourceforge/courier/courier-imap-1.
   0.tar.gz.
   
   Latest development build is
   ftp://courier.sourceforge.net/pub/courier/imap/courier-imap-1.0.tar.gz
   (this link may not be functional for a short period after a release
   build is announced).
   
CVS Repository

   The source code of the standalone Courier-IMAP version is also
   available from an anonymous CVS repository. See
   http://courier.sourceforge.net/status.html for more information.
   
Mailing list

   Subscribe to the courier-users mailing list from
   http://lists.sourceforge.net/mailman/listinfo/courier-users, or send a
   message to <courier-users-request@lists.sourceforge.net> and put
   "subscribe" in the subject line.
   
   This mailing list does not accept mail from non-subscribers. You must
   subscribe to the list before sending any messages.
   
  RPM installation notes
  
   My tarballs can be used directly to build binary RPMs. A source RPM is
   not required. Download the tarball (courier-imap-1.0.tar.gz), then
   type "rpm -ta courier-imap-1.0.tar.gz". You will create a binary RPM
   that can be installed using rpm -i or rpm -U. You must have RPM 3.0.3
   or higher. See the FAQ if you have problems building binary RPMs.
   
   NOTE: The binary RPM will not install if you use a PAM library and
   have another IMAP server installed. The binary RPM installs its own
   /etc/pam.d/imap configuration file, which is likely to conflict with
   the PAM configuration file from another IMAP server. If you previously
   installed another IMAP server without using RPM, Courier-IMAP will
   successfully install and immediately overwrite your existing
   /etc/pam.d/imap.
   
   In most cases, you will also have to manually delete the imap entry
   from /etc/inetd.conf as well. Courier-IMAP listens for client
   connections by itself. It doesn't need inetd, and you need to tell
   inetd to release that port.
   
   Additionally, the binary RPM will be built with the default options.
   That means, for example, that if you have OpenLDAP libraries
   installed, authldap (the LDAP authentication module) gets built.
   Fortunately, if you don't want LDAP authentication, you can simply
   remove the entry for authldap from a runtime configuration file, after
   installation. However, if you need to change any other default
   options, you'll probably have to manually create a custom binary RPM.
   Here's an example of how to do it:
   
   Copy courier-imap-1.0.tar.gz to your %{_topdir}/SOURCES directory,
   extract the file courier-imap.spec, then copy it to your
   %{_topdir}/SPECS directory. Make your custom changes to the spec file,
   then run "rpm -bb courier-imap.spec".
   
   Also - if you are upgrading from the 0.14 or 0.15 RPMs, you may have
   to run the following command after upgrading from 0.14 or 0.15:
   /sbin/chkconfig --add courier-imap.
   
Documentation

   The following documentation is included in the Courier-IMAP
   distribution. It is presented here for your convenience.
     * ChangeLog
     * README: Installation and some general documentation
     * FAQ: Frequently Asked Questions
     * README.imap: Hints on configuring IMAP clients
     * authlib: Documentation on the authentication library used by
       Courier-IMAP. You want to read this if you would like to write
       your own authentication modules.
     * README.maildirquota: Enhancements by Courier-IMAP to the
       traditional Maildir format, and README.sharedfolders: How
       Courier-IMAP implements shared folders. These documents describe
       how Courier-IMAP implements various features that are not a part
       of the traditional maildir mailbox.
     * BUGS: known bugs.
       
Links

   Qmail VMailMgr and Courier-IMAP HOWTO - extensive documentation on
   integrating Courier-IMAP with the Qmail mail server and the VMailMgr
   virtual domain manager.
   
   There's a patch to use Courier-IMAP's authentication modules with
   Qmail's POP3 server, at
   http://homepages.strath.ac.uk/~ras97108/authpop/index.html.
     _________________________________________________________________
   
   Sam Varshavchik <mrsam@stop.mail-abuse.org>
