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

NNNNAAAAMMMMEEEE
     ssssaaaassssllllaaaauuuutttthhhhdddd - sasl authentication server

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     ssssaaaassssllllaaaauuuutttthhhhdddd ----aaaa _a_u_t_h_m_e_c_h [----TTTTvvvvddddcccchhhhllllrrrr] [----OOOO _o_p_t_i_o_n] [----mmmm _m_u_x__p_a_t_h] [----nnnn _t_h_r_e_a_d_s]
     [----ssss _s_i_z_e] [----tttt _t_i_m_e_o_u_t]

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
     ssssaaaassssllllaaaauuuutttthhhhdddd 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 _p_r_o_x_y au-
     thentication services to clients that do not understand SASL based au-
     thentication.

     ssssaaaassssllllaaaauuuutttthhhhdddd 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.

  OOOOppppttttiiiioooonnnnssss
     Options named by lower-case letters configure the server itself.
     Upper-case options control the behavior of specific authentication
     mechanisms; their applicability to a particular authentication mechanism
     is described in the _A_U_T_H_E_N_T_I_C_A_T_I_O_N _M_E_C_H_A_N_I_S_M_S section.

     ----aaaa _a_u_t_h_m_e_c_h
             Use _a_u_t_h_m_e_c_h as the authentication mechanism. (See the
             _A_U_T_H_E_N_T_I_C_A_T_I_O_N _M_E_C_H_A_N_I_S_M_S section below.) This parameter is man-
             datory.

     ----OOOO _o_p_t_i_o_n
             A mechanism specific option (e.g. rimap hostname or config file
             path)

     ----HHHH _h_o_s_t_n_a_m_e
             The remote host to be contacted by the rimap authentication
             mechanism. (Depricated, use -O instead)

     ----mmmm _p_a_t_h
             Use _p_a_t_h as the pathname to the named socket to listen on for
             connection requests. This must be an absolute pathname, and MUST
             NOT include the trailing "/mux".  Note that the default for this
             value is "/var/state/saslauthd" (or what was specified at compile
             time) and that this directory must exist for saslauthd to func-
             tion.

     ----nnnn _t_h_r_e_a_d_s
             Use _t_h_r_e_a_d_s 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..

     ----ssss _s_i_z_e
             Use _s_i_z_e as the table size of the hash table (in kilobytes)

     ----tttt _t_i_m_e_o_u_t
             Use _t_i_m_e_o_u_t as the expiration time of the authentication cache
             (in seconds)

     ----TTTT      Honour time-of-day login restrictions.


     ----hhhh      Show usage information

     ----cccc      Enable cacheing of authentication credentials

     ----llll      Disable the use of a lock file for controlling access to ac-
             cept().

     ----rrrr      Combine the realm with the login (with an '@' sign in between).
             e.g.  login: "foo" realm: "bar" will get passed as login:
             "foo@bar".  Note that the realm will still be passed, which may
             lead to unexpected behavior.

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

     ----dddd      Debugging mode.

  LLLLooooggggggggiiiinnnngggg
     ssssaaaassssllllaaaauuuutttthhhhdddd logs it's activities via ssssyyyyssssllllooooggggdddd using the LOG_AUTH facility.

AAAAUUUUTTTTHHHHEEEENNNNTTTTIIIICCCCAAAATTTTIIIIOOOONNNN MMMMEEEECCCCHHHHAAAANNNNIIIISSSSMMMMSSSS
     ssssaaaassssllllaaaauuuutttthhhhdddd supports one or more "authentication mechanisms", dependent
     upon the facilities provided by the underlying operating system.  The
     mechanism is selected by the ----aaaahhhhoooo flag from the following list of
     choices:

     dce        (_A_I_X)

                Authenticate using the DCE authentication environment.

     getpwent   (_A_l_l _p_l_a_t_f_o_r_m_s)

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

     kerberos4  (_A_l_l _p_l_a_t_f_o_r_m_s)

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

     kerberos5  (_A_l_l _p_l_a_t_f_o_r_m_s)

                Authenticate against the local Kerberos 5 realm.

     pam        (_L_i_n_u_x, _S_o_l_a_r_i_s)

                Authenticate using Pluggable Authentication Modules (PAM).

     rimap      (_A_l_l _p_l_a_t_f_o_r_m_s)

                Forward authentication requests to a remote IMAP server. This
                driver connects to a remote IMAP server, specified using the
                -O 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 _o_p_t_i_o_n parameter to the ----OOOO flag describes the remote
                server to forward authentication requests to.  _h_o_s_t_n_a_m_e 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
                _h_o_s_t_n_a_m_e argument.

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

     shadow     (_A_I_X, _I_r_i_x, _L_i_n_u_x, _S_o_l_a_r_i_s)

                Authenticate against the local "shadow password file". The ex-
                act mechanism is system dependent.  ssssaaaassssllllaaaauuuutttthhhhdddd currently under-
                stands the ggggeeeettttssssppppnnnnaaaammmm() and ggggeeeettttuuuusssseeeerrrrppppwwww() library routines. Some
                systems honour the ----TTTT flag.

     sasldb     (_A_l_l _p_l_a_t_f_o_r_m_s)

                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.

     ldap       (_A_l_l _p_l_a_t_f_o_r_m_s _t_h_a_t _s_u_p_p_o_r_t _O_p_e_n_L_D_A_P _2._0 _o_r _h_i_g_h_e_r)

                Authenticate against an ldap server.  The ldap configuration
                parameters are read from /usr/local/etc/saslauthd.conf.  The
                location of this file can be changed with the -O parameter.
                See the LDAP_SASLAUTHD file included with the distribution for
                the list of available parameters.

     sia        (_D_i_g_i_t_a_l _U_N_I_X)

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

NNNNOOOOTTTTEEEESSSS
     The kerberos4 authentication driver consumes considerable resources. To
     perform an authentication it must obtain a ticket granting ticket from
     the TGT server oooonnnn eeeevvvveeeerrrryyyy aaaauuuutttthhhheeeennnnttttiiiiccccaaaattttiiiioooonnnn rrrreeeeqqqquuuueeeesssstttt.... 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 ssssaaaassssllllaaaauuuutttthhhhdddd, 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.)

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

     /usr/local/etc/saslauthd.conf
                             The default configuration file for ldap support.

SSSSEEEEEEEE AAAALLLLSSSSOOOO
     passwd(1),  getpwent(3),  getspnam(3),  getuserpw(3),  sasl_checkpass(3)
     sia_authenticate_user(3),

 CMU-SASL                         10 24 2002                                 3
