SYNOPSIS

       /opt/local/libexec/slapd  [-[4|6]]  [-T (a|c|i|p)] [-d debug-level] [-f
       slapd-config-file] [-h URLs] [-n service-name]  [-s  syslog-level]  [-l
       syslog-local-user] [-r directory] [-u user] [-g group] [-t] [-c cookie]


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
       /opt/local/etc/openldap/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, even with a zero argument, 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 "OpenLDAP Administrator's Guide" for more details on slapd.


OPTIONS

       -4     Listen on IPv4 addresses only.

       -6     Listen on IPv6 addresses only.

       -T (a|c|i|p)
              Run in Tool mode. The additional argument selects whether to run
              as slapadd,  slapcat,  slapindex,  or  slappasswd.  This  option
              should  be  the  first  option  specified  when  it is used. Any
              remaining options will be interpreted by the corresponding  slap
              tool program. Note that these tool programs will usually be sym-
              bolic links to slapd. This option  is  provided  for  situations
              where symbolic links are not provided or not usable.

       -d debug-level
              Turn  on debugging as defined by debug-level.  If this option is
              specified, even with a zero argument, 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 correspond-
              ing to a different kind of debugging information.  See  <ldap.h>
              for details.  Remember that if you turn on packet logging, pack-
              ets containing bind passwords will be output, so if you redirect
              the log to a logfile, that file should be read-protected.

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

       -h URLlist
              slapd  will  by  default  serve  ldap:///  (LDAP over TCP on all
              interfaces on default LDAP port).  That is, it will  bind  using
              INADDR_ANY  and  port 389.  The -h option may be used to specify
              LDAP (and other scheme) URLs to serve.  For example, if slapd is
              given  -h "ldap://127.0.0.1:9009/ ldaps:/// ldapi:///" , It will
              bind 127.0.0.1:9009 for LDAP, 0.0.0.0:636 for LDAP over TLS, and
              LDAP  over  IPC  (Unix domain sockets).  Host 0.0.0.0 represents
              INADDR_ANY.  A space separated list of URLs  is  expected.   The
              URLs  should be of the LDAP, LDAPS, or LDAPI schemes, and gener-
              ally without a DN or other  optional  parameters  (excepting  as
              discussed below).  Support for the latter two schemes depends on
              selected configuration options.  Hosts may be specified by  name
              or  IPv4 and IPv6 address formats.  Ports, if specified, must be
              numeric.  The default  ldap://  port  is  389  and  the  default
              ldaps://  port is 636.  The socket permissions for LDAP over IPC
              are  indicated  by  "x-mod=-rwxrwxrwx",  "x-mod=0777"   or   "x-
              mod=777",  where  any  of  the  "rwx" can be "-" to suppress the
              related permission (note, however, that sockets only  honor  the
              "w"  permission),  while  any  of the "7" can be any legal octal
              digit, according to chmod(1).   While  LDAP  over  IPC  requires
              write  permissions  on  the  socket  to allow any operation, the
              other listeners can take advantage of the "x-mod"  extension  to
              apply  rough  limitations  to  users, e.g. allow read operations
              ("r", which applies to search  and  compare),  write  operations
              ("w", which applies to add, delete, modify and modrdn), and exe-
              cute operations ("x", which means  bind  is  required).   "User"
              permissions  apply to bound users, while "other" apply to anony-
              mous users.

       -r directory
              Specifies a chroot "jail" directory.  slapd will  chdir(2)  then
              chroot(2)  to  this directory after opening listeners but before
              reading any configuration file or initializing any backend.

       -u user
              slapd will run slapd with the specified user  name  or  id,  and
              that  user's  supplementary  group access list as set with init-
              groups(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 pre-
       vent passwd back-ends from accessing  the  encrypted  passwords.   Note
       also  that any shell back-ends will run as the specified non-privileged
       user.

       -t     slapd will read the configuration file (the default if  none  is
              given  with the -f switch) and check its syntax, without opening
              any listener or database.


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:

            /opt/local/libexec/slapd

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

            /opt/local/libexec/slapd -f /var/tmp/slapd.conf -d 255

       To test whether the configuration file is correct or not, type:

            /opt/local/libexec/slapd -t



SEE ALSO

       ldap(3),  slapd.conf(5),   slapd.access(5),   slapadd(8),   slapcat(8),
       slapindex(8), slappasswd(8), slurpd(8)

       "OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)


BUGS

       See http://www.openldap.org/its/


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.



OpenLDAP 2.2.28                   2005/08/14                         SLAPD(8C)

Man(1) output converted with man2html