saslauthd
SASLAUTHD(8) System Manager's Manual
SASLAUTHD(8)
NAME
saslauthd - sasl authentication server
SYNOPSIS
saslauthd -a authmech [-Tvd] [-O option] [-m mux_path] [-n
threads]
DESCRIPTION
saslauthd is a daemon process that handles plaintext authen-
tication re-
quests on behalf of the SASL library.
The server fulfills two roles: it isolates all code requir-
ing superuser
privileges into a single process, and it can be used to pro-
vide 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 authenti-
cation database
(e.g. the shadow mechanism), it must be run as the superus-
er.
Options
Options named by lower-case letters configure the server it-
self. Up-
per-case options control the behavior of specific authenti-
cation 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 pa-
rameter is
mandatory.
-O option
A mechanism specific option (e.g. rimap hostname or
config file
path)
-H hostname
The remote host to be contacted by the rimap authen-
tication mech-
anism. (Depricated, use -O instead)
-m path
Use path as the pathname to the named socket to lis-
ten on for
connection requests. This must be an absolute path-
name, and MUST
NOT include the trailing "/mux". Note that the de-
fault for this
value is "/var/state/saslauthd" (or what was speci-
fied at compile
time) and that this directory must exist for saslau-
thd to func-
tion.
-n threads
Use threads processes for responding to authentica-
tion 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 authentica-
tion mechanisms
on standard error, then exit.
-d Debugging mode.
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 sys-
tem. The mech-
anism is selected by the -aho flag from the following list
of choices:
dce (AIX)
Authenticate using the DCE authentication envi-
ronment.
getpwent (All platforms)
Authenticate using the getpwent() library func-
tion. 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 Mod-
ules (PAM).
rimap (All platforms)
Forward authentication requests to a remote IMAP
server. This
driver connects to a remote IMAP server, speci-
fied using the
-O flag, and attempts to login (via an IMAP `LO-
GIN' command)
using the credentials supplied to the local serv-
er. If the re-
mote authentication succeeds the local connection
is also con-
sidered to be authenticated. The remote connec-
tion is closed
as soon as the tagged response from the `LOGIN'
command is re-
ceived from the remote server.
The option parameter to the -O flag describes the
remote serv-
er 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 -O 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.
ldap (All platforms that support OpenLDAP 2.0 or
higher)
Authenticate against an ldap server. The ldap
configuration
parameters are read from /usr/local/etc/saslau-
thd.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 (Digital UNIX)
Authenticate using the Digital UNIX Security In-
tegration 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.
/usr/local/etc/saslauthd.conf
The default configuration file for
ldap support.
SEE ALSO
passwd(1), getpwent(3), getspnam(3), getuserpw(3),
sasl_checkpass(3)
sia_authenticate_user(3),
CMU-SASL
3