
 Introduction
 ============

 GNU Anubis is an outgoing mail processor. It goes between the MUA (Mail User
 Agent) and the MTA (Mail Transport Agent), and can perform on the fly various
 sorts of processing and conversion on the outgoing mail in accord with the
 sender's specified rules, based on a highly configurable regular expressions
 system. It operates as a proxy server, independently from mail user agents.

 --------*      --------**      ------***
 |  MUA  | ---> | Anubis | ---> |  MTA  |
 ---------      ----------      ---------

 *   Mail User Agent (client)
 **  An outgoing mail processor and the SMTP tunnel.
 *** Mail Transport Agent (server)

 GNU Anubis is GNU software. See the home page at:
 http://www.gnu.org/software/anubis/

 License:
 GNU Anubis is free software. Read the COPYING file.


 SUPPORTED SOFTWARE
 ==================

 Recommended:

 * GnuTLS -- a Transport Layer Security Library (http://www.gnutls.org/)
   or OpenSSL -- a cryptographic package (http://www.openssl.org/).
 * GSASL -- an implementation of the SASL framework
   (http://www.gnu.org/software/gsasl/).
 * GnuPG -- The GNU Privacy Guard (http://www.gnupg.org/)
   with GPGME -- GnuPG Made Easy (http://www.gnupg.org/gpgme.html).
 * Guile -- The GNU extension language (http://www.gnu.org/software/guile/).
 * A database, any from the following:
   - GDBM -- (http://www.gnu.org/software/gdbm/).
   - MySQL -- (http://www.mysql.com/).
   - PostgreSQL -- (http://www.postgresql.com/)

 Optional:

 * The TCP/IP Identification Protocol (RFC 1413) server (any).
 * PCRE -- Perl-Compatible Regular Expression Library (http://www.pcre.org/).
 * PAM -- Pluggable Authentication Modules
   (http://www.kernel.org/pub/linux/libs/pam/).
 * libwrap (TCP wrappers) -- an access control library.


 INSTALLATION
 ============

 $ ./configure
 $ make
 $ make check (optional)
 $ make install

 By default, GNU Anubis will be installed in `/usr/local/sbin/anubis',
 but this can be changed with the `--prefix' command, for instance:

 $ ./configure --prefix=/usr
 $ make
 $ make check (optional)
 $ make install

 For better control, use the options below.
 Set the `./configure' script with:

 `--with-gsasl'        to support SASL authentication.
 `--with-mysql'        to support MySQL database.
 `--with-postgres'     to support PostgreSQL database.
 `--with-pcre'         to support Perl-compatible regular expressions.
 `--with-pam'          to support Pluggable Authentication Modules.
 `--with-socks-proxy'  to support SOCKS v4/5 proxy support.
 `--with-tcp-wrappers' to support libwrap (TCP wrappers).
 `--with-openssl'      to support OpenSSL (and disable GnuTLS).
 `--without-gnutls'    to disable GnuTLS support.
 `--without-gpgme'     to disable GNU Privacy Guard (GPGME) support.
 `--without-guile'     to disable Guile support.

 `--with-unprivileged-user=USER'
                       to set an unprivileged user (default is "nobody").

 Next, write a proper init script for your system. See the examples
 in the `scripts' directory (part of the distribution).

 NOTE: Remember about activating GNU Anubis with `ntsysv' tool
 or similar, and configure its system configuration file (read
 the GNU Anubis Manual about this topic).

 CAUTION: It is now optional to install the TCP/IP IDENT protocol
 server (RFC 1413). It depends on whether you are going to use
 a "transparent" mode, or not. Please consult the documentation.
 Most modern GNU/Linux (or *BSD) distributions have already
 installed an IDENT server. If not, try `pidentd', available at:
 ftp://ftp.lysator.liu.se/pub/ident/servers/


 Editing Configuration Files with GNU Emacs
 ==========================================

 The file elisp/anubis-mode.el provides the Emacs major mode for
 editing Anubis configuration files.

 After `make install' Emacs should be able to use anubis-mode
 when editing appropriate configuration files. You will
 have to add the following to your .emacs or site-start file:

 (autoload 'anubis-mode "anubis-mode")
 (setq auto-mode-alist (append auto-mode-alist
                                '(("/.anubisrc$" . anubis-mode)
                                  ("/anubisrc$" . anubis-mode))))

 You may also wish to modify the following variables:

 * anubis-path

 The path to the anubis executable. Use this if anubis cannot be
 found using the search path.

 * anubis-section-body-indent

 Sets the indentation level for a section body. Defaults to 0.

 * anubis-level-indent

 Sets amount of indentation per block nesting level. Defaults to 2.

 EOF

