[0931098] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
[6732c094] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
[0931098] | 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[c00932a] | 7 | <!ENTITY openldap-download-http " ">
|
---|
[12949fb] | 8 | <!ENTITY openldap-download-ftp "ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-&openldap-version;.tgz">
|
---|
[57d78e0] | 9 | <!ENTITY openldap-md5sum "423c1f23d2a0cb96b3e9baf7e9d7dda7">
|
---|
| 10 | <!ENTITY openldap-size "5.4 MB">
|
---|
| 11 | <!ENTITY openldap-buildsize "47 MB (client) 101 MB (server - additional 5 MB for the tests)">
|
---|
| 12 | <!ENTITY openldap-time "0.9 SBU (client) 1.8 SBU (server - additional 3.4 SBU for the tests)">
|
---|
[0931098] | 13 | ]>
|
---|
| 14 |
|
---|
[9a9a0fec] | 15 | <sect1 id="openldap" xreflabel="OpenLDAP-&openldap-version;">
|
---|
[814e53c] | 16 | <?dbhtml filename="openldap.html"?>
|
---|
| 17 |
|
---|
| 18 | <sect1info>
|
---|
| 19 | <othername>$LastChangedBy$</othername>
|
---|
| 20 | <date>$Date$</date>
|
---|
| 21 | </sect1info>
|
---|
| 22 |
|
---|
| 23 | <title>OpenLDAP-&openldap-version;</title>
|
---|
| 24 |
|
---|
| 25 | <indexterm zone="openldap">
|
---|
| 26 | <primary sortas="a-OpenLDAP">OpenLDAP</primary>
|
---|
| 27 | </indexterm>
|
---|
| 28 |
|
---|
| 29 | <sect2 role="package">
|
---|
| 30 | <title>Introduction to OpenLDAP</title>
|
---|
| 31 |
|
---|
[b5e36dd] | 32 | <para>
|
---|
| 33 | The <application>OpenLDAP</application> package provides an open
|
---|
| 34 | source implementation of the Lightweight Directory Access Protocol.
|
---|
| 35 | </para>
|
---|
| 36 |
|
---|
[f2d55c92] | 37 | &lfs76_checked;
|
---|
[814e53c] | 38 |
|
---|
| 39 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 40 | <itemizedlist spacing="compact">
|
---|
| 41 | <listitem>
|
---|
[b5e36dd] | 42 | <para>
|
---|
| 43 | Download (HTTP): <ulink url="&openldap-download-http;"/>
|
---|
| 44 | </para>
|
---|
[814e53c] | 45 | </listitem>
|
---|
| 46 | <listitem>
|
---|
[b5e36dd] | 47 | <para>
|
---|
| 48 | Download (FTP): <ulink url="&openldap-download-ftp;"/>
|
---|
| 49 | </para>
|
---|
[814e53c] | 50 | </listitem>
|
---|
| 51 | <listitem>
|
---|
[b5e36dd] | 52 | <para>
|
---|
| 53 | Download MD5 sum: &openldap-md5sum;
|
---|
| 54 | </para>
|
---|
[814e53c] | 55 | </listitem>
|
---|
| 56 | <listitem>
|
---|
[b5e36dd] | 57 | <para>
|
---|
| 58 | Download size: &openldap-size;
|
---|
| 59 | </para>
|
---|
[814e53c] | 60 | </listitem>
|
---|
| 61 | <listitem>
|
---|
[b5e36dd] | 62 | <para>
|
---|
| 63 | Estimated disk space required: &openldap-buildsize;
|
---|
| 64 | </para>
|
---|
[814e53c] | 65 | </listitem>
|
---|
| 66 | <listitem>
|
---|
[b5e36dd] | 67 | <para>
|
---|
| 68 | Estimated build time: &openldap-time;
|
---|
| 69 | </para>
|
---|
[814e53c] | 70 | </listitem>
|
---|
| 71 | </itemizedlist>
|
---|
| 72 |
|
---|
[6a604251] | 73 | <bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
---|
[ba432fd] | 74 | <itemizedlist spacing="compact">
|
---|
| 75 | <listitem>
|
---|
[b5e36dd] | 76 | <para>
|
---|
| 77 | Required patch:
|
---|
[0760f1d] | 78 | <ulink url="&patch-root;/openldap-&openldap-version;-blfs_paths-1.patch"/>
|
---|
[b5e36dd] | 79 | </para>
|
---|
[1ef8da9] | 80 | </listitem>
|
---|
| 81 | <listitem>
|
---|
[b5e36dd] | 82 | <para>
|
---|
| 83 | Required patch:
|
---|
[0760f1d] | 84 | <ulink url="&patch-root;/openldap-&openldap-version;-symbol_versions-1.patch"/>
|
---|
[b5e36dd] | 85 | </para>
|
---|
[1ef8da9] | 86 | </listitem>
|
---|
[2f62a072] | 87 | <!-- <listitem>
|
---|
[b5e36dd] | 88 | <para>
|
---|
| 89 | Optional patch:
|
---|
| 90 | <ulink url="&patch-root;/openldap-&openldap-version;-ntlm-1.patch"/>
|
---|
| 91 | </para>
|
---|
[2f62a072] | 92 | </listitem> -->
|
---|
[ba432fd] | 93 | </itemizedlist>
|
---|
| 94 |
|
---|
[814e53c] | 95 | <bridgehead renderas="sect3">OpenLDAP Dependencies</bridgehead>
|
---|
| 96 |
|
---|
[de7f20e] | 97 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
[b5e36dd] | 98 | <para role="required">
|
---|
[74f15e6] | 99 | <xref linkend="db"/> (only if building server)
|
---|
[b5e36dd] | 100 | </para>
|
---|
[814e53c] | 101 |
|
---|
| 102 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
[b5e36dd] | 103 | <para role="recommended">
|
---|
| 104 | <xref linkend="cyrus-sasl"/> and
|
---|
| 105 | <xref linkend="openssl"/>
|
---|
| 106 | </para>
|
---|
[814e53c] | 107 |
|
---|
| 108 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
[b5e36dd] | 109 | <para role="optional">
|
---|
| 110 | <xref linkend="icu"/>,
|
---|
[f2d55c92] | 111 | <xref linkend="mariadb"/> or
|
---|
| 112 | <xref linkend="postgresql"/>,
|
---|
[b5e36dd] | 113 | <ulink url="http://www.openslp.org/">OpenSLP</ulink>,
|
---|
[bc6e56d] | 114 | <xref linkend="pth"/> and
|
---|
[b5e36dd] | 115 | <xref linkend="unixodbc"/>
|
---|
| 116 | </para>
|
---|
[814e53c] | 117 |
|
---|
[3cb0c57] | 118 | <para condition="html" role="usernotes">User Notes:
|
---|
[bc6e56d] | 119 | <ulink url="&blfs-wiki;/openldap"/>
|
---|
| 120 | </para>
|
---|
[814e53c] | 121 | </sect2>
|
---|
| 122 |
|
---|
| 123 | <sect2 role="installation">
|
---|
| 124 | <title>Installation of OpenLDAP</title>
|
---|
| 125 |
|
---|
[2f62a072] | 126 | <!-- <important>
|
---|
[b5e36dd] | 127 | <para>
|
---|
| 128 | Without the following patch, the <application>Evolution</application>
|
---|
[0d7900a] | 129 | Exchange addressbook integration uses simple binds with cleartext
|
---|
| 130 | passwords. If you are going to build
|
---|
[b5e36dd] | 131 | <application>Evolution Data Server</application> with
|
---|
| 132 | <application>OpenLDAP</application> support, apply the following patch:
|
---|
| 133 | </para>
|
---|
[c00932a] | 134 |
|
---|
| 135 | <screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-ntlm-1.patch</userinput></screen>
|
---|
[2f62a072] | 136 | </important> -->
|
---|
[c00932a] | 137 |
|
---|
[12949fb] | 138 | <note>
|
---|
[b5e36dd] | 139 | <para>
|
---|
| 140 | If you only need to install the client side <command>ldap*</command>
|
---|
| 141 | binaries, corresponding man pages, libraries and header files (referred to
|
---|
[9ef1b6ff] | 142 | as a <quote>client-only</quote> install), issue these
|
---|
| 143 | commands instead of the following ones (no test suite available):
|
---|
[b5e36dd] | 144 | </para>
|
---|
[12949fb] | 145 |
|
---|
[0760f1d] | 146 | <screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-blfs_paths-1.patch &&
|
---|
| 147 | patch -Np1 -i ../openldap-&openldap-version;-symbol_versions-1.patch &&
|
---|
[439e942e] | 148 | autoconf &&
|
---|
[0b23fc9] | 149 | sed -i '/6.0.20/ a\\t__db_version_compat' configure &&
|
---|
[d6da5da] | 150 | ./configure --prefix=/usr \
|
---|
[12949fb] | 151 | --sysconfdir=/etc \
|
---|
[9ef1b6ff] | 152 | --disable-static \
|
---|
[d6da5da] | 153 | --enable-dynamic \
|
---|
| 154 | --disable-debug \
|
---|
| 155 | --disable-slapd &&
|
---|
| 156 | make depend &&
|
---|
[c612fc3] | 157 | make</userinput></screen>
|
---|
| 158 |
|
---|
| 159 | <para>
|
---|
| 160 | Then, as the <systemitem class="username">root</systemitem> user:
|
---|
| 161 | </para>
|
---|
| 162 |
|
---|
| 163 | <screen role="root"><userinput>make install</userinput></screen>
|
---|
[9ef1b6ff] | 164 |
|
---|
[12949fb] | 165 | </note>
|
---|
| 166 |
|
---|
[b194f2b] | 167 | <para>
|
---|
| 168 | There should be a dedicated user and group to take control
|
---|
| 169 | of the <command>slapd</command> daemon after it is
|
---|
| 170 | started. Issue the following commands as the
|
---|
| 171 | <systemitem class="username">root</systemitem> user:
|
---|
| 172 | </para>
|
---|
| 173 |
|
---|
| 174 | <screen role="root"><userinput>groupadd -g 83 ldap &&
|
---|
| 175 | useradd -c "OpenLDAP Daemon Owner" -d /var/lib/openldap -u 83 \
|
---|
| 176 | -g ldap -s /bin/false ldap</userinput></screen>
|
---|
| 177 |
|
---|
[b5e36dd] | 178 | <para>
|
---|
| 179 | Install <application>OpenLDAP</application> by
|
---|
| 180 | running the following commands:
|
---|
| 181 | </para>
|
---|
[814e53c] | 182 |
|
---|
[0760f1d] | 183 | <screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-blfs_paths-1.patch &&
|
---|
| 184 | patch -Np1 -i ../openldap-&openldap-version;-symbol_versions-1.patch &&
|
---|
[439e942e] | 185 | autoconf &&
|
---|
[d6da5da] | 186 | ./configure --prefix=/usr \
|
---|
| 187 | --sysconfdir=/etc \
|
---|
| 188 | --localstatedir=/var \
|
---|
[c00932a] | 189 | --libexecdir=/usr/lib \
|
---|
[d6da5da] | 190 | --disable-static \
|
---|
| 191 | --disable-debug \
|
---|
| 192 | --enable-dynamic \
|
---|
| 193 | --enable-crypt \
|
---|
| 194 | --enable-spasswd \
|
---|
| 195 | --enable-modules \
|
---|
| 196 | --enable-rlookups \
|
---|
[c00932a] | 197 | --enable-backends=mod \
|
---|
| 198 | --enable-overlays=mod \
|
---|
[d6da5da] | 199 | --disable-ndb \
|
---|
[b895aa3] | 200 | --disable-sql &&
|
---|
[0931098] | 201 | make depend &&
|
---|
[d9091faa] | 202 | make</userinput></screen>
|
---|
| 203 |
|
---|
[b5e36dd] | 204 | <para>
|
---|
[f2d55c92] | 205 | To test the results, issue: <command>make -k test</command>.
|
---|
[b5e36dd] | 206 | </para>
|
---|
[814e53c] | 207 |
|
---|
[b5e36dd] | 208 | <para>
|
---|
| 209 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 210 | </para>
|
---|
[814e53c] | 211 |
|
---|
| 212 | <screen role="root"><userinput>make install &&
|
---|
[0c74155e] | 213 |
|
---|
[117309d] | 214 | chmod -v 700 /var/lib/openldap &&
|
---|
[0616b513] | 215 | chown -v -R ldap:ldap /var/lib/openldap &&
|
---|
[117309d] | 216 | chmod -v 640 /etc/openldap/{slapd.{conf,ldif},DB_CONFIG.example} &&
|
---|
| 217 | chown -v root:ldap /etc/openldap/{slapd.{conf,ldif},DB_CONFIG.example} &&
|
---|
| 218 | install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &&
|
---|
[b194f2b] | 219 |
|
---|
[d6da5da] | 220 | install -v -dm755 /usr/share/doc/openldap-&openldap-version; &&
|
---|
[1ef8da9] | 221 | cp -vfr doc/drafts /usr/share/doc/openldap-&openldap-version; &&
|
---|
| 222 | cp -vfr doc/rfc /usr/share/doc/openldap-&openldap-version; &&
|
---|
| 223 | cp -vfr doc/guide /usr/share/doc/openldap-&openldap-version;</userinput></screen>
|
---|
[814e53c] | 224 |
|
---|
[117309d] | 225 | <para>
|
---|
| 226 | Having slapd configuration files and ldap databases in /var/lib/openldap
|
---|
| 227 | readable by anyone is a SECURITY ISSUE, especially since a file stores
|
---|
| 228 | admin password in PLAIN TEXT. That's why mode 640 and root:ldap ownership
|
---|
| 229 | were used. Owner is root, so only root can modify the file, and group is
|
---|
| 230 | ldap, so that the group which owns slapd daemon could read but not modify
|
---|
| 231 | the file in case of a security breach.
|
---|
| 232 | </para>
|
---|
| 233 |
|
---|
[814e53c] | 234 | </sect2>
|
---|
| 235 |
|
---|
| 236 | <sect2 role="commands">
|
---|
| 237 | <title>Command Explanations</title>
|
---|
| 238 |
|
---|
[c00932a] | 239 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
[b5e36dd] | 240 | href="../../xincludes/static-libraries.xml"/>
|
---|
| 241 |
|
---|
| 242 | <para>
|
---|
[9ef1b6ff] | 243 | <parameter>--disable-debug</parameter>: This switch disables
|
---|
[b5e36dd] | 244 | the debugging code in <application>OpenLDAP</application>.
|
---|
| 245 | </para>
|
---|
| 246 |
|
---|
| 247 | <para>
|
---|
[9ef1b6ff] | 248 | <parameter>--enable-dynamic</parameter>: This switch forces the
|
---|
[b5e36dd] | 249 | <application>OpenLDAP</application> libraries to be dynamically
|
---|
| 250 | linked to the executable programs.
|
---|
| 251 | </para>
|
---|
| 252 |
|
---|
| 253 | <para>
|
---|
[9ef1b6ff] | 254 | <parameter>--enable-crypt</parameter>: This switch enables using of
|
---|
[b5e36dd] | 255 | <command>crypt(3)</command> passwords.
|
---|
| 256 | </para>
|
---|
| 257 |
|
---|
| 258 | <para>
|
---|
[9ef1b6ff] | 259 | <parameter>--enable-spasswd</parameter>: This switch enables
|
---|
[d6da5da] | 260 | <application>SASL</application> password verification.
|
---|
| 261 | </para>
|
---|
| 262 |
|
---|
| 263 | <para>
|
---|
[9ef1b6ff] | 264 | <parameter>--enable-modules</parameter>: This switch enables dynamic
|
---|
[b5e36dd] | 265 | module support.
|
---|
| 266 | </para>
|
---|
| 267 |
|
---|
| 268 | <para>
|
---|
[9ef1b6ff] | 269 | <parameter>--enable-rlookups</parameter>: This switch enables
|
---|
[b5e36dd] | 270 | reverse lookups of client hostnames.
|
---|
| 271 | </para>
|
---|
| 272 |
|
---|
| 273 | <para>
|
---|
[9ef1b6ff] | 274 | <parameter>--enable-backends</parameter>: This switch enables
|
---|
[b5e36dd] | 275 | all available backends.
|
---|
| 276 | </para>
|
---|
| 277 |
|
---|
| 278 | <para>
|
---|
[9ef1b6ff] | 279 | <parameter>--enable-overlays</parameter>: This switch enables
|
---|
[b5e36dd] | 280 | all available overlays.
|
---|
| 281 | </para>
|
---|
| 282 |
|
---|
| 283 | <para>
|
---|
[9ef1b6ff] | 284 | <parameter>--disable-ndb</parameter>: This switch disables
|
---|
[0d7900a] | 285 | <application>MySQL</application> NDB Cluster backend
|
---|
[b5e36dd] | 286 | which causes configure to fail if
|
---|
| 287 | <application>MySQL</application> is present.
|
---|
| 288 | </para>
|
---|
| 289 |
|
---|
| 290 | <para>
|
---|
[9ef1b6ff] | 291 | <parameter>--disable-sql</parameter>: This switch explicitly
|
---|
[b5e36dd] | 292 | disables the SQL backend. Omit this switch if a SQL server is
|
---|
| 293 | installed and you are going to use a SQL backend.
|
---|
| 294 | </para>
|
---|
| 295 |
|
---|
[67bd7d46] | 296 | <para>
|
---|
| 297 | <parameter>--libexecdir=/usr/lib</parameter>: This switch controls where
|
---|
| 298 | the <filename class="directory">/usr/lib/openldap</filename> directory is
|
---|
| 299 | installed. Everything in that directory is a library, so it belongs under
|
---|
| 300 | <filename class="directory">/usr/lib</filename> instead of
|
---|
| 301 | <filename class="directory">/usr/libexec</filename>.
|
---|
| 302 | </para>
|
---|
| 303 |
|
---|
[b5e36dd] | 304 | <para>
|
---|
[d6da5da] | 305 | <option>--enable-slp</option>: This switch enables
|
---|
| 306 | SLPv2 support. Use it if you have installed
|
---|
[b5e36dd] | 307 | <ulink url="http://www.openslp.org/">OpenSLP</ulink>.
|
---|
| 308 | </para>
|
---|
[516a4acd] | 309 |
|
---|
| 310 | <note>
|
---|
[b5e36dd] | 311 | <para>
|
---|
| 312 | You can run <command>./configure --help</command> to see if there
|
---|
[d6da5da] | 313 | are other switch you can pass to the <command>configure</command>
|
---|
[b5e36dd] | 314 | command to enable other options or dependency packages.
|
---|
| 315 | </para>
|
---|
[516a4acd] | 316 | </note>
|
---|
| 317 |
|
---|
[814e53c] | 318 | </sect2>
|
---|
| 319 |
|
---|
| 320 | <sect2 role="configuration">
|
---|
| 321 | <title>Configuring OpenLDAP</title>
|
---|
| 322 |
|
---|
| 323 | <sect3 id="openldap-config">
|
---|
| 324 | <title>Config Files</title>
|
---|
| 325 |
|
---|
[bc6e56d] | 326 | <para>
|
---|
| 327 | <filename>/etc/openldap/*</filename>
|
---|
| 328 | </para>
|
---|
[814e53c] | 329 |
|
---|
| 330 | <indexterm zone="openldap openldap-config">
|
---|
[bc6e56d] | 331 | <primary sortas="e-etc-openldap">/etc/openldap/*</primary>
|
---|
[814e53c] | 332 | </indexterm>
|
---|
| 333 |
|
---|
| 334 | </sect3>
|
---|
| 335 |
|
---|
| 336 | <sect3>
|
---|
| 337 | <title>Configuration Information</title>
|
---|
| 338 |
|
---|
[b5e36dd] | 339 | <para>
|
---|
| 340 | Configuring the <command>slapd</command> servers can be complex.
|
---|
| 341 | Securing the LDAP directory, especially if you are storing non-public
|
---|
| 342 | data such as password databases, can also be a challenging task. You'll
|
---|
| 343 | need to modify the <filename>/etc/openldap/slapd.conf</filename> and
|
---|
| 344 | <filename>/etc/openldap/ldap.conf</filename> files to set up
|
---|
| 345 | <application>OpenLDAP</application> for your particular needs.
|
---|
| 346 | </para>
|
---|
[814e53c] | 347 |
|
---|
| 348 | <indexterm zone="openldap openldap-config">
|
---|
| 349 | <primary
|
---|
| 350 | sortas="e-etc-openldap-slapd.conf">/etc/openldap/slapd.conf</primary>
|
---|
| 351 | </indexterm>
|
---|
| 352 |
|
---|
| 353 | <indexterm zone="openldap openldap-config">
|
---|
| 354 | <primary
|
---|
| 355 | sortas="e-etc-openldap-ldap.conf">/etc/openldap/ldap.conf</primary>
|
---|
| 356 | </indexterm>
|
---|
| 357 |
|
---|
[bc6e56d] | 358 | <para>
|
---|
| 359 | Resources to assist you with topics such as choosing a directory
|
---|
| 360 | configuration, backend and database definitions, access control settings,
|
---|
| 361 | running as a user other than <systemitem class="username">root</systemitem>
|
---|
| 362 | and setting a <command>chroot</command> environment include:
|
---|
| 363 | </para>
|
---|
[814e53c] | 364 |
|
---|
[d6da5da] | 365 | <itemizedlist spacing="compact">
|
---|
[814e53c] | 366 | <listitem>
|
---|
[b5e36dd] | 367 | <para>
|
---|
| 368 | The <command>slapd</command> man page.
|
---|
| 369 | </para>
|
---|
[814e53c] | 370 | </listitem>
|
---|
| 371 | <listitem>
|
---|
[b5e36dd] | 372 | <para>
|
---|
| 373 | The <filename>slapd.conf</filename> man page.
|
---|
| 374 | </para>
|
---|
[814e53c] | 375 | </listitem>
|
---|
| 376 | <listitem>
|
---|
[b5e36dd] | 377 | <para>
|
---|
| 378 | The <ulink url="http://www.openldap.org/doc/admin24/">
|
---|
[0d7900a] | 379 | OpenLDAP 2.4 Administrator's Guide</ulink>
|
---|
[b5e36dd] | 380 | (also installed locally in <filename class='directory'>
|
---|
| 381 | /usr/share/doc/openldap-&openldap-version;/guide/admin</filename>).
|
---|
| 382 | </para>
|
---|
[814e53c] | 383 | </listitem>
|
---|
| 384 | <listitem>
|
---|
[b5e36dd] | 385 | <para>
|
---|
| 386 | Documents located at
|
---|
| 387 | <ulink url="http://www.openldap.org/pub/"/>.
|
---|
| 388 | </para>
|
---|
[814e53c] | 389 | </listitem>
|
---|
| 390 | </itemizedlist>
|
---|
| 391 |
|
---|
| 392 | </sect3>
|
---|
| 393 |
|
---|
| 394 | <sect3>
|
---|
| 395 | <title>Mozilla Address Directory</title>
|
---|
| 396 |
|
---|
[b5e36dd] | 397 | <para>
|
---|
| 398 | By default, LDAPv2 support is disabled in the
|
---|
| 399 | <filename>slapd.conf</filename> file. Once the database is properly
|
---|
| 400 | set up and <application>Mozilla</application> is configured to use the
|
---|
| 401 | directory, you must add <option>allow bind_v2</option> to the
|
---|
| 402 | <filename>slapd.conf</filename> file.
|
---|
| 403 | </para>
|
---|
[814e53c] | 404 |
|
---|
| 405 | </sect3>
|
---|
| 406 |
|
---|
| 407 | <sect3 id="openldap-init">
|
---|
[608cda6] | 408 | <title>Systemd Units</title>
|
---|
[814e53c] | 409 |
|
---|
[b5e36dd] | 410 | <para>
|
---|
[608cda6] | 411 | To start the <command>slapd</command> daemon at boot,
|
---|
| 412 | install the systemd unit from the <xref linkend="bootscripts"/>
|
---|
| 413 | package by running the following command as the
|
---|
| 414 | <systemitem class="username">root</systemitem> user:
|
---|
[b5e36dd] | 415 | </para>
|
---|
[814e53c] | 416 |
|
---|
| 417 | <indexterm zone="openldap openldap-init">
|
---|
[d9d26317] | 418 | <primary sortas="f-slapd">slapd</primary>
|
---|
[814e53c] | 419 | </indexterm>
|
---|
| 420 |
|
---|
[d9d26317] | 421 | <screen role="root"><userinput>make install-slapd</userinput></screen>
|
---|
[814e53c] | 422 |
|
---|
| 423 | <note>
|
---|
[b5e36dd] | 424 | <para>
|
---|
[0d7900a] | 425 | You'll need to modify the
|
---|
[608cda6] | 426 | <filename>/etc/default/slapd</filename> to include the
|
---|
[0d7900a] | 427 | parameters needed for your specific configuration. See the
|
---|
[b5e36dd] | 428 | <command>slapd</command> man page for parameter information.
|
---|
| 429 | </para>
|
---|
[814e53c] | 430 | </note>
|
---|
| 431 |
|
---|
| 432 | </sect3>
|
---|
| 433 |
|
---|
| 434 | <sect3>
|
---|
| 435 | <title>Testing the Configuration</title>
|
---|
| 436 |
|
---|
[b5e36dd] | 437 | <para>
|
---|
[608cda6] | 438 | Start the LDAP server using <command>systemctl</command>:
|
---|
[b5e36dd] | 439 | </para>
|
---|
[814e53c] | 440 |
|
---|
[608cda6] | 441 | <screen role="root"><userinput>systemctl start slapd</userinput></screen>
|
---|
[814e53c] | 442 |
|
---|
[b5e36dd] | 443 | <para>
|
---|
| 444 | Verify access to the LDAP server with the following command:
|
---|
| 445 | </para>
|
---|
[814e53c] | 446 |
|
---|
| 447 | <screen><userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput></screen>
|
---|
| 448 |
|
---|
[b5e36dd] | 449 | <para>
|
---|
| 450 | The expected result is:
|
---|
| 451 | </para>
|
---|
[814e53c] | 452 |
|
---|
[0931098] | 453 | <screen><computeroutput># extended LDIF
|
---|
| 454 | #
|
---|
| 455 | # LDAPv3
|
---|
| 456 | # base <> with scope base
|
---|
| 457 | # filter: (objectclass=*)
|
---|
[814e53c] | 458 | # requesting: namingContexts
|
---|
[0931098] | 459 | #
|
---|
| 460 |
|
---|
| 461 | #
|
---|
| 462 | dn:
|
---|
| 463 | namingContexts: dc=my-domain,dc=com
|
---|
| 464 |
|
---|
| 465 | # search result
|
---|
| 466 | search: 2
|
---|
| 467 | result: 0 Success
|
---|
| 468 |
|
---|
| 469 | # numResponses: 2
|
---|
| 470 | # numEntries: 1</computeroutput></screen>
|
---|
| 471 |
|
---|
[814e53c] | 472 | </sect3>
|
---|
| 473 |
|
---|
| 474 | </sect2>
|
---|
| 475 |
|
---|
| 476 | <sect2 role="content">
|
---|
| 477 | <title>Contents</title>
|
---|
| 478 |
|
---|
| 479 | <segmentedlist>
|
---|
| 480 | <segtitle>Installed Programs</segtitle>
|
---|
| 481 | <segtitle>Installed Libraries</segtitle>
|
---|
| 482 | <segtitle>Installed Directories</segtitle>
|
---|
| 483 |
|
---|
| 484 | <seglistitem>
|
---|
[b5e36dd] | 485 | <seg>
|
---|
| 486 | ldapadd, ldapcompare, ldapdelete, ldapexop, ldapmodify, ldapmodrdn,
|
---|
[4585084d] | 487 | ldappasswd, ldapsearch, ldapurl, ldapwhoami, slapacl, slapadd,
|
---|
| 488 | slapauth, slapcat, slapd, slapdn, slapindex, slappasswd, slapschema,
|
---|
| 489 | and slaptest
|
---|
[b5e36dd] | 490 | </seg>
|
---|
| 491 | <seg>
|
---|
[4585084d] | 492 | liblber.so, libldap.so, libldap_r.so,
|
---|
| 493 | and several under /usr/lib/openldap
|
---|
[b5e36dd] | 494 | </seg>
|
---|
| 495 | <seg>
|
---|
| 496 | /etc/openldap,
|
---|
[4585084d] | 497 | /usr/lib/openldap,
|
---|
| 498 | /usr/share/doc/openldap-&openldap-version;, and
|
---|
[b5e36dd] | 499 | /var/lib/openldap
|
---|
| 500 | </seg>
|
---|
[814e53c] | 501 | </seglistitem>
|
---|
| 502 | </segmentedlist>
|
---|
| 503 |
|
---|
| 504 | <variablelist>
|
---|
| 505 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 506 | <?dbfo list-presentation="list"?>
|
---|
| 507 | <?dbhtml list-presentation="table"?>
|
---|
| 508 |
|
---|
| 509 | <varlistentry id="ldapadd">
|
---|
| 510 | <term><command>ldapadd</command></term>
|
---|
| 511 | <listitem>
|
---|
[b5e36dd] | 512 | <para>
|
---|
| 513 | opens a connection to an LDAP server, binds and adds entries.
|
---|
| 514 | </para>
|
---|
[814e53c] | 515 | <indexterm zone="openldap ldapadd">
|
---|
| 516 | <primary sortas="b-ldapadd">ldapadd</primary>
|
---|
| 517 | </indexterm>
|
---|
| 518 | </listitem>
|
---|
| 519 | </varlistentry>
|
---|
| 520 |
|
---|
| 521 | <varlistentry id="ldapcompare">
|
---|
| 522 | <term><command>ldapcompare</command></term>
|
---|
| 523 | <listitem>
|
---|
[b5e36dd] | 524 | <para>
|
---|
| 525 | opens a connection to an LDAP server, binds and performs
|
---|
| 526 | a compare using specified parameters.
|
---|
| 527 | </para>
|
---|
[814e53c] | 528 | <indexterm zone="openldap ldapcompare">
|
---|
| 529 | <primary sortas="b-ldapcompare">ldapcompare</primary>
|
---|
| 530 | </indexterm>
|
---|
| 531 | </listitem>
|
---|
| 532 | </varlistentry>
|
---|
| 533 |
|
---|
| 534 | <varlistentry id="ldapdelete">
|
---|
| 535 | <term><command>ldapdelete</command></term>
|
---|
| 536 | <listitem>
|
---|
[b5e36dd] | 537 | <para>
|
---|
| 538 | opens a connection to an LDAP server, binds and deletes
|
---|
| 539 | one or more entries.
|
---|
| 540 | </para>
|
---|
[814e53c] | 541 | <indexterm zone="openldap ldapdelete">
|
---|
| 542 | <primary sortas="b-ldapdelete">ldapdelete</primary>
|
---|
| 543 | </indexterm>
|
---|
| 544 | </listitem>
|
---|
| 545 | </varlistentry>
|
---|
| 546 |
|
---|
[c00932a] | 547 | <varlistentry id="ldapexop">
|
---|
| 548 | <term><command>ldapexop</command></term>
|
---|
| 549 | <listitem>
|
---|
[b5e36dd] | 550 | <para>
|
---|
[0d7900a] | 551 | issues the LDAP extended operation specified by
|
---|
[b5e36dd] | 552 | oid or one of the special keywords whoami,
|
---|
| 553 | cancel, or refresh.
|
---|
| 554 | </para>
|
---|
[c00932a] | 555 | <indexterm zone="openldap ldapexop">
|
---|
| 556 | <primary sortas="b-ldapexop">ldapexop</primary>
|
---|
| 557 | </indexterm>
|
---|
| 558 | </listitem>
|
---|
| 559 | </varlistentry>
|
---|
| 560 |
|
---|
[814e53c] | 561 | <varlistentry id="ldapmodify">
|
---|
| 562 | <term><command>ldapmodify</command></term>
|
---|
| 563 | <listitem>
|
---|
[b5e36dd] | 564 | <para>
|
---|
| 565 | opens a connection to an LDAP server, binds and modifies entries.
|
---|
| 566 | </para>
|
---|
[814e53c] | 567 | <indexterm zone="openldap ldapmodify">
|
---|
| 568 | <primary sortas="b-ldapmodify">ldapmodify</primary>
|
---|
| 569 | </indexterm>
|
---|
| 570 | </listitem>
|
---|
| 571 | </varlistentry>
|
---|
| 572 |
|
---|
| 573 | <varlistentry id="ldapmodrdn">
|
---|
| 574 | <term><command>ldapmodrdn</command></term>
|
---|
| 575 | <listitem>
|
---|
[b5e36dd] | 576 | <para>
|
---|
| 577 | opens a connection to an LDAP server, binds and modifies
|
---|
| 578 | the RDN of entries.
|
---|
| 579 | </para>
|
---|
[814e53c] | 580 | <indexterm zone="openldap ldapmodrdn">
|
---|
| 581 | <primary sortas="b-ldapmodrdn">ldapmodrdn</primary>
|
---|
| 582 | </indexterm>
|
---|
| 583 | </listitem>
|
---|
| 584 | </varlistentry>
|
---|
| 585 |
|
---|
| 586 | <varlistentry id="ldappasswd">
|
---|
| 587 | <term><command>ldappasswd</command></term>
|
---|
| 588 | <listitem>
|
---|
[b5e36dd] | 589 | <para>
|
---|
| 590 | is a tool used to set the password of an LDAP user.
|
---|
| 591 | </para>
|
---|
[814e53c] | 592 | <indexterm zone="openldap ldappasswd">
|
---|
| 593 | <primary sortas="b-ldappasswd">ldappasswd</primary>
|
---|
| 594 | </indexterm>
|
---|
| 595 | </listitem>
|
---|
| 596 | </varlistentry>
|
---|
| 597 |
|
---|
| 598 | <varlistentry id="ldapsearch">
|
---|
| 599 | <term><command>ldapsearch</command></term>
|
---|
| 600 | <listitem>
|
---|
[b5e36dd] | 601 | <para>
|
---|
| 602 | opens a connection to an LDAP server, binds and performs
|
---|
| 603 | a search using specified parameters.
|
---|
| 604 | </para>
|
---|
[814e53c] | 605 | <indexterm zone="openldap ldapsearch">
|
---|
| 606 | <primary sortas="b-ldapsearch">ldapsearch</primary>
|
---|
| 607 | </indexterm>
|
---|
| 608 | </listitem>
|
---|
| 609 | </varlistentry>
|
---|
| 610 |
|
---|
[c00932a] | 611 | <varlistentry id="ldapurl">
|
---|
| 612 | <term><command>ldapurl</command></term>
|
---|
| 613 | <listitem>
|
---|
[b5e36dd] | 614 | <para>
|
---|
[0d7900a] | 615 | is a command that allows to either compose or
|
---|
[b5e36dd] | 616 | decompose LDAP URIs.
|
---|
| 617 | </para>
|
---|
[c00932a] | 618 | <indexterm zone="openldap ldapurl">
|
---|
| 619 | <primary sortas="b-ldapurl">ldapurl</primary>
|
---|
| 620 | </indexterm>
|
---|
| 621 | </listitem>
|
---|
| 622 | </varlistentry>
|
---|
| 623 |
|
---|
[814e53c] | 624 | <varlistentry id="ldapwhoami">
|
---|
| 625 | <term><command>ldapwhoami</command></term>
|
---|
| 626 | <listitem>
|
---|
[b5e36dd] | 627 | <para>
|
---|
| 628 | opens a connection to an LDAP server, binds and displays
|
---|
| 629 | whoami information.
|
---|
| 630 | </para>
|
---|
[814e53c] | 631 | <indexterm zone="openldap ldapwhoami">
|
---|
| 632 | <primary sortas="b-ldapwhoami">ldapwhoami</primary>
|
---|
| 633 | </indexterm>
|
---|
| 634 | </listitem>
|
---|
| 635 | </varlistentry>
|
---|
| 636 |
|
---|
[c00932a] | 637 | <varlistentry id="slapacl">
|
---|
| 638 | <term><command>slapacl</command></term>
|
---|
| 639 | <listitem>
|
---|
[b5e36dd] | 640 | <para>
|
---|
[0d7900a] | 641 | is used to check the behavior of slapd by verifying
|
---|
| 642 | access to directory data according to the access control
|
---|
[b5e36dd] | 643 | list directives defined in its configuration.
|
---|
| 644 | </para>
|
---|
[c00932a] | 645 | <indexterm zone="openldap slapacl">
|
---|
| 646 | <primary sortas="b-slapacl">slapacl</primary>
|
---|
| 647 | </indexterm>
|
---|
| 648 | </listitem>
|
---|
| 649 | </varlistentry>
|
---|
| 650 |
|
---|
[814e53c] | 651 | <varlistentry id="slapadd">
|
---|
| 652 | <term><command>slapadd</command></term>
|
---|
| 653 | <listitem>
|
---|
[b5e36dd] | 654 | <para>
|
---|
| 655 | is used to add entries specified in LDAP Directory Interchange
|
---|
| 656 | Format (LDIF) to an LDAP database.
|
---|
| 657 | </para>
|
---|
[814e53c] | 658 | <indexterm zone="openldap slapadd">
|
---|
| 659 | <primary sortas="b-slapadd">slapadd</primary>
|
---|
| 660 | </indexterm>
|
---|
| 661 | </listitem>
|
---|
| 662 | </varlistentry>
|
---|
| 663 |
|
---|
[c00932a] | 664 | <varlistentry id="slapauth">
|
---|
| 665 | <term><command>slapauth</command></term>
|
---|
| 666 | <listitem>
|
---|
[b5e36dd] | 667 | <para>
|
---|
[0d7900a] | 668 | is used to check the behavior of the slapd
|
---|
[b5e36dd] | 669 | in mapping identities for authentication and
|
---|
| 670 | authorization purposes, as specified in slapd.conf.
|
---|
| 671 | </para>
|
---|
[c00932a] | 672 | <indexterm zone="openldap slapauth">
|
---|
| 673 | <primary sortas="b-slapauth">slapauth</primary>
|
---|
| 674 | </indexterm>
|
---|
| 675 | </listitem>
|
---|
| 676 | </varlistentry>
|
---|
| 677 |
|
---|
[814e53c] | 678 | <varlistentry id="slapcat">
|
---|
| 679 | <term><command>slapcat</command></term>
|
---|
| 680 | <listitem>
|
---|
[b5e36dd] | 681 | <para>
|
---|
| 682 | is used to generate an LDAP LDIF output based upon the
|
---|
| 683 | contents of a slapd database.
|
---|
| 684 | </para>
|
---|
[814e53c] | 685 | <indexterm zone="openldap slapcat">
|
---|
| 686 | <primary sortas="b-slapcat">slapcat</primary>
|
---|
| 687 | </indexterm>
|
---|
| 688 | </listitem>
|
---|
| 689 | </varlistentry>
|
---|
| 690 |
|
---|
| 691 | <varlistentry id="slapd">
|
---|
| 692 | <term><command>slapd</command></term>
|
---|
| 693 | <listitem>
|
---|
[b5e36dd] | 694 | <para>
|
---|
| 695 | is the standalone LDAP server.
|
---|
| 696 | </para>
|
---|
[814e53c] | 697 | <indexterm zone="openldap slapd">
|
---|
| 698 | <primary sortas="b-slapd">slapd</primary>
|
---|
| 699 | </indexterm>
|
---|
| 700 | </listitem>
|
---|
| 701 | </varlistentry>
|
---|
| 702 |
|
---|
| 703 | <varlistentry id="slapdn">
|
---|
| 704 | <term><command>slapdn</command></term>
|
---|
| 705 | <listitem>
|
---|
[b5e36dd] | 706 | <para>
|
---|
| 707 | checks a list of string-represented DNs based on schema syntax.
|
---|
| 708 | </para>
|
---|
[814e53c] | 709 | <indexterm zone="openldap slapdn">
|
---|
| 710 | <primary sortas="b-slapdn">slapdn</primary>
|
---|
| 711 | </indexterm>
|
---|
| 712 | </listitem>
|
---|
| 713 | </varlistentry>
|
---|
| 714 |
|
---|
| 715 | <varlistentry id="slapindex">
|
---|
| 716 | <term><command>slapindex</command></term>
|
---|
| 717 | <listitem>
|
---|
[b5e36dd] | 718 | <para>
|
---|
| 719 | is used to regenerate slapd indexes based upon the current
|
---|
| 720 | contents of a database.
|
---|
| 721 | </para>
|
---|
[814e53c] | 722 | <indexterm zone="openldap slapindex">
|
---|
| 723 | <primary sortas="b-slapindex">slapindex</primary>
|
---|
| 724 | </indexterm>
|
---|
| 725 | </listitem>
|
---|
| 726 | </varlistentry>
|
---|
| 727 |
|
---|
| 728 | <varlistentry id="slappasswd">
|
---|
| 729 | <term><command>slappasswd</command></term>
|
---|
| 730 | <listitem>
|
---|
[b5e36dd] | 731 | <para>
|
---|
| 732 | is an <application>OpenLDAP</application> password utility.
|
---|
| 733 | </para>
|
---|
[814e53c] | 734 | <indexterm zone="openldap slappasswd">
|
---|
| 735 | <primary sortas="b-slappasswd">slappasswd</primary>
|
---|
| 736 | </indexterm>
|
---|
| 737 | </listitem>
|
---|
| 738 | </varlistentry>
|
---|
| 739 |
|
---|
[c00932a] | 740 | <varlistentry id="slapschema">
|
---|
| 741 | <term><command>slapschema</command></term>
|
---|
| 742 | <listitem>
|
---|
[b5e36dd] | 743 | <para>
|
---|
[0d7900a] | 744 | is used to check schema compliance of the contents
|
---|
[b5e36dd] | 745 | of a slapd database.
|
---|
| 746 | </para>
|
---|
[c00932a] | 747 | <indexterm zone="openldap slapschema">
|
---|
| 748 | <primary sortas="b-slapschema">slapschema</primary>
|
---|
| 749 | </indexterm>
|
---|
| 750 | </listitem>
|
---|
| 751 | </varlistentry>
|
---|
| 752 |
|
---|
[814e53c] | 753 | <varlistentry id="slaptest">
|
---|
| 754 | <term><command>slaptest</command></term>
|
---|
| 755 | <listitem>
|
---|
[b5e36dd] | 756 | <para>
|
---|
| 757 | checks the sanity of the <filename>slapd.conf</filename> file.
|
---|
| 758 | </para>
|
---|
[814e53c] | 759 | <indexterm zone="openldap slaptest">
|
---|
| 760 | <primary sortas="b-slaptest">slaptest</primary>
|
---|
| 761 | </indexterm>
|
---|
| 762 | </listitem>
|
---|
| 763 | </varlistentry>
|
---|
| 764 |
|
---|
| 765 | <varlistentry id="liblber">
|
---|
[d6da5da] | 766 | <term><filename class="libraryfile">liblber.so</filename></term>
|
---|
[814e53c] | 767 | <listitem>
|
---|
[b5e36dd] | 768 | <para>
|
---|
[1ef8da9] | 769 | is a set of Lightweight Basic Encoding Rules routines. These
|
---|
[b5e36dd] | 770 | routines are used by the LDAP library routines to encode and decode
|
---|
| 771 | LDAP protocol elements using the (slightly simplified) Basic
|
---|
| 772 | Encoding Rules defined by LDAP. They are not normally used directly
|
---|
| 773 | by an LDAP application program except in the handling of controls
|
---|
| 774 | and extended operations.
|
---|
| 775 | </para>
|
---|
[814e53c] | 776 | <indexterm zone="openldap liblber">
|
---|
[c00932a] | 777 | <primary sortas="c-liblber">liblber.so</primary>
|
---|
[814e53c] | 778 | </indexterm>
|
---|
| 779 | </listitem>
|
---|
| 780 | </varlistentry>
|
---|
| 781 |
|
---|
| 782 | <varlistentry id="libldap">
|
---|
[d6da5da] | 783 | <term><filename class="libraryfile">libldap.so</filename></term>
|
---|
[814e53c] | 784 | <listitem>
|
---|
[b5e36dd] | 785 | <para>
|
---|
| 786 | supports the LDAP programs and provide functionality for
|
---|
| 787 | other programs interacting with LDAP.
|
---|
| 788 | </para>
|
---|
[814e53c] | 789 | <indexterm zone="openldap libldap">
|
---|
[c00932a] | 790 | <primary sortas="c-libldap">libldap.so</primary>
|
---|
[814e53c] | 791 | </indexterm>
|
---|
| 792 | </listitem>
|
---|
| 793 | </varlistentry>
|
---|
| 794 |
|
---|
| 795 | <varlistentry id="libldap_r">
|
---|
[d6da5da] | 796 | <term><filename class="libraryfile">libldap_r.so</filename></term>
|
---|
[814e53c] | 797 | <listitem>
|
---|
[b5e36dd] | 798 | <para>
|
---|
| 799 | contains the functions required by the LDAP programs to
|
---|
| 800 | produce the results from LDAP requests.
|
---|
| 801 | </para>
|
---|
[814e53c] | 802 | <indexterm zone="openldap libldap_r">
|
---|
[c00932a] | 803 | <primary sortas="c-libldap_r">libldap_r.so</primary>
|
---|
[814e53c] | 804 | </indexterm>
|
---|
| 805 | </listitem>
|
---|
| 806 | </varlistentry>
|
---|
| 807 |
|
---|
| 808 | </variablelist>
|
---|
| 809 |
|
---|
| 810 | </sect2>
|
---|
[9905a3c] | 811 |
|
---|
| 812 | </sect1>
|
---|