SLAPD(8C)

NAME
slapd - Stand-alone LDAP Daemon

SYNOPSIS
LIBEXECDIR/slapd [-f slapd-config-file] [-h URLs] [-d debug-level] [-p port-number] [-P tls-port-number] [-s syslog-level] [-l syslog-local-user] [-u user] [-g group]

DESCRIPTION

Slapd is the stand-alone LDAP daemon. It listens for LDAP connections on any number of ports (default 389), responding to the LDAP operations it receives over these connections. slapd is typically invoked at boot time, usually out of /etc/rc.local. Upon startup, slapd normally forks and disassociates itself from the invoking tty. If configured in ETCDIR/slapd.conf, the slapd process will print its process ID ( see getpid(2) ) to a .pid file, as well as the command line options during invocation to an .args file ( see slapd.conf(5) ). If the -d flag is given and debugging is set to some non-zero value, slapd will not fork and disassociate from the invoking tty.

Slapd can be configured to provide replicated service for a database with the help of slurpd, the standalone LDAP update replication daemon. See slurpd(8) for details.

See "The SLAPD and SLURPD Administrator's Guide" for more details on slapd.

OPTIONS

-d debug-level
    Turn on debugging as defined by debug-level. If this option is specified, slapd will not fork or disassociate from the invoking terminal. Some general operation and status messages are printed for any value of debug-level. debug-level is taken as a bit string, with each bit corresponding to a different kind of debugging information. See <ldap.h> for details.

-s syslog-level
    This option tells slapd at what level debugging statements should be logged to the syslog(8) facility.

-l syslog-local-user
    Selects the local user of the syslog(8) facility. Values can be LOCAL0, LOCAL1, and so on, up to LOCAL7. The default is LOCAL4. However, this option is only permitted on systems that support local users with the syslog(8) facility.

-f slapd-config-file
    Specifies the slapd configuration file. The default is ETCDIR/slapd.conf.

-h URLlist
    slapd will serve ldap:/// (LDAP over TCP on all interfaces on default LDAP port). As such, it will bind to INADDR_ANY, port 389. The -h option may be used to specify LDAP (and LDAPS) URLs to serve. For example, if slapd is given -h ldap://127.0.0.1:9009/ ldaps:/// , It will bind 127.0.0.1:9009 for LDAP and INADDR_ANY:636 for LDAP over TLS. A space separated list of URLs is expected. The URLS should be of LDAP (ldap://) or, if supported, LDAP over TLS (ldaps://) type without a DN or other optional parameters. Hosts may be specified in either Internet '.' format (preferred) or by name. Ports, if specfied, must be numeric.

-p port-number
    slapd will use on the default port (389) for LDAP URLs unless this option is given to override the default. A numeric port number is expected.

-P tls-port-number
    slapd will use on the default port (636) for LDAPS (LDAP over TLS) URLs unless this option is given to override the default. A numeric port number is expected.

-P port-number
    Changes the port where slapd will expect LDAP over raw TLS connections. If this option is not given, the default port for this purpose (636) will be used. A numeric port number is expected.

-u user
    slapd will run slapd with the specified user name or id, and that user's supplementary group access list as set with initgroups(3). The group ID is also changed to this user's gid, unless the -g option is used to override.

-g group
    slapd will run with the specified group name or id.

Note that on some systems, running as a non-privileged user will prevent passwd back-ends from accessing the encrypted passwords. Note also that any shell back-ends will run as the specified non-privileged user.

EXAMPLES
To start slapd and have it fork and detach from the terminal and start serving the LDAP databases defined in the default config file, just type:

	LIBEXECDIR/slapd

To start slapd with an alternate configuration file, and turn on voluminous debugging which will be printed on standard error, type:

	LIBEXECDIR/slapd -f ETCDIR/slapd.conf -d 255

SEE ALSO
ldap(3), slapd.conf(5), slurpd(8)

"The SLAPD and SLURPD Administrator's Guide"

BUGS
When using the LDBM database backend, the Modify RDN operation does not update the attribute values in the entry that are affected by the change.

ACKNOWLEDGEMENTS
OpenLDAP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). OpenLDAP is derived from University of Michigan LDAP 3.3 Release.