
SASLAUTHD(8)                System Manager's Manual               SASLAUTHD(8)

NAME
     saslauthd - sasl authentication server

SYNOPSIS
     saslauthd -a authmech [-Tv] [-H hostname] [-m mux_path] [-n threads]

DESCRIPTION
     saslauthd is a daemon process that handles plaintext authentication re-
     quests on behalf of the SASL library.

     The server fulfills two roles: it isolates all code requiring superuser
     privileges into a single process, and it can be used to provide proxy au-
     thentication services to clients that do not understand SASL based au-
     thentication.

     saslauthd should be started from the system boot scripts when going to
     multi-user mode. When running against a protected authentication database
     (e.g. the shadow mechanism), it must be run as the superuser.

   Options
     Options named by lower-case letters configure the server itself.  Up-
     per-case options control the behavior of specific authentication mecha-
     nisms; their applicability to a particular authentication mechanism is
     described in the AUTHENTICATION MECHANISMS section.

     -a authmech
             Use authmech as the authentication mechanism. (See the
             AUTHENTICATION MECHANISMS section below.) This parameter is
             mandatory.

     -H hostname
             The remote host to be contacted by the rimap authentication mech-
             anism.

     -m path
             Use path as the pathname to the named socket to listen on for
             connection requests. This must be an absolute pathname.

     -n threads
             Use threads processes for responding to authentication queries.
             (default: 5)  A value of zero will indicate that saslauthd should
             fork an individual process for each connection.  This can solve
             leaks that occur in some deployments.

     -T      Honour time-of-day login restrictions.

     -v      Print the version number and available authentication mechanisms
             on standard error, then exit.

   Logging
     saslauthd logs it's activities via syslogd using the LOG_AUTH facility.

AUTHENTICATION MECHANISMS
     saslauthd supports one or more "authentication mechanisms", dependent up-
     on the facilities provided by the underlying operating system.  The mech-
     anism is selected by the -a flag from the following list of choices:

     dce        (AIX)

                Authenticate using the DCE authentication environment.

     getpwent   (All platforms)

                Authenticate using the getpwent() library function. Typically
                this authenticates against the local password file. See your
                systems getpwent(3) man page for details.

     kerberos4  (All platforms)

                Authenticate against the local Kerberos 4 realm. (See the
                NOTES section for caveats about this driver.)

     kerberos5  (All platforms)

                Authenticate against the local Kerberos 5 realm.

     pam        (Linux, Solaris)

                Authenticate using Pluggable Authentication Modules (PAM).

     rimap      (All platforms)

                Forward authentication requests to a remote IMAP server. This
                driver connects to a remote IMAP server, specified using the
                -H flag, and attempts to login (via an IMAP `LOGIN' command)
                using the credentials supplied to the local server. If the re-
                mote authentication succeeds the local connection is also con-
                sidered to be authenticated. The remote connection is closed
                as soon as the tagged response from the `LOGIN' command is re-
                ceived from the remote server.

                The hostname parameter to the -H flag describes the remote
                server to forward authentication requests to.  hostname can be
                a hostname (imap.example.com) or a dotted-quad IP address
                (192.168.0.1). The latter is useful if the remote server is
                multi-homed and has network interfaces that are unreachable
                from the local IMAP server. The remote host is contacted on
                the `imap' service port. A non-default port can be specified
                by appending a slash and the port name or number to the
                hostname argument.

                The -H flag and argument are mandatory when using the rimap
                mechanism.

     shadow     (AIX, Irix, Linux, Solaris)

                Authenticate against the local "shadow password file". The ex-
                act mechanism is system dependent.  saslauthd currently under-
                stands the getspnam() and getuserpw() library routines. Some
                systems honour the -T flag.

     sasldb     (All platforms)

                Authenticate against the SASL authentication database.  Note
                that this is probabally not what you want to be using, and is
                even disabled at compile-time by default.  If you want to use
                sasldb with the SASL library, you probably want to use the
                pwcheck_method of "auxprop" along with the sasldb auxprop plu-
                gin instead.

     sia        (Digital UNIX)

                Authenticate using the Digital UNIX Security Integration Ar-
                chitecture (a.k.a.  "enhanced security").

NOTES
     The kerberos4 authentication driver consumes considerable resources. To
     perform an authentication it must obtain a ticket granting ticket from
     the TGT server on every authentication request. The Kerberos library rou-
     tines that obtain the TGT also create a local ticket file, on the reason-
     able assumption that you will want to save the TGT for use by other Ker-
     beros applications. These ticket files are unusable by saslauthd, however
     there is no way not to create them. The overhead of creating and removing
     these ticket files can cause serious performance degradation on busy
     servers. (Kerberos was never intended to be used in this manner, anyway.)

FILES
     /var/run/saslauthd/mux  The default communications socket.

SEE ALSO
     passwd(1),  getpwent(3),  getspnam(3),  getuserpw(3),  sasl_checkpass(3)
     sia_authenticate_user(3),

 CMU-SASL                                                                    3
