SASLAUTHD(8) | System Manager's Manual | SASLAUTHD(8) |
saslauthd
— sasl
authentication server
saslauthd |
-a authmech
[-Tvdchlr ] [-O
option] [-m
mux_path] [-n
threads] [-s
size] [-t
timeout] |
saslauthd
is a daemon process that handles
plaintext authentication requests 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 authentication services to clients that do not understand SASL based authentication.
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. Otherwise it is recommended to
run daemon unprivileged as saslauth:saslauth, requiring the runtime
directory to have root:saslauthd owner. You can do so by following these
steps in machines using systemd(1) :
[Service] User=saslauth Group=saslauth
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 AUTHENTICATION MECHANISMS section.
-a
authmech-O
option-H
hostnamerimap
authentication mechanism. (Deprecated, use -O instead)-m
path-n
threads-s
size-t
timeout-T
-h
-c
-l
-r
-v
-d
saslauthd
logs its activities via
syslogd
using the LOG_AUTH
facility.
saslauthd
supports one or more
"authentication mechanisms", dependent upon the facilities
provided by the underlying operating system. The mechanism is selected by
the -a
flag from the following list of choices:
dce
Authenticate using the DCE authentication environment.
getpwent
Authenticate using the
getpwent
()
library function. Typically this authenticates against the local
password file. See your system's getpwent(3) man page
for details.
kerberos4
Authenticate against the local Kerberos 4 realm. (See the NOTES section for caveats about this driver.)
kerberos5
Authenticate against the local Kerberos 5 realm.
pam
Authenticate using Pluggable Authentication Modules (PAM).
rimap
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 remote authentication
succeeds the local connection is also considered to be authenticated.
The remote connection is closed as soon as the tagged response from the
‘LOGIN
’ command is received from
the remote server.
The option parameter to the
-O
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 -O
flag and argument are mandatory
when using the rimap
mechanism.
shadow
Authenticate against the local "shadow
password file". The exact mechanism is system dependent.
saslauthd
currently understands the
getspnam
()
and
getuserpw
()
library routines. Some systems honour the -T
flag.
sasldb
Authenticate against the SASL authentication database. Note that this is probably not what you want to use, 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 plugin instead.
ldap
Authenticate against an ldap server. The ldap configuration parameters are read from /etc/saslauthd.conf. The location of this file can be changed with the -O parameter. See the LDAP_SASLAUTHD file included in the cyrus-sasl2-doc package for the list of available parameters.
sia
Authenticate using the Digital UNIX Security Integration Architecture (a.k.a. "enhanced security").
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 routines that obtain
the TGT also create a local ticket file, on the reasonable assumption that
you will want to save the TGT for use by other Kerberos 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.)
passwd(1), getpwent(3), getspnam(3), getuserpw(3), sasl_checkpass(3) sia_authenticate_user(3),
December 12 2005 | CMU-SASL |