| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <!-- |
| | | ! CCPL HEADER START |
| | | ! |
| | | ! This work is licensed under the Creative Commons |
| | | ! Attribution-NonCommercial-NoDerivs 3.0 Unported License. |
| | | ! To view a copy of this license, visit |
| | | ! http://creativecommons.org/licenses/by-nc-nd/3.0/ |
| | | ! or send a letter to Creative Commons, 444 Castro Street, |
| | | ! Suite 900, Mountain View, California, 94041, USA. |
| | | ! |
| | | ! You can also obtain a copy of the license at legal-notices/CC-BY-NC-ND.txt. |
| | | ! See the License for the specific language governing permissions |
| | | ! and limitations under the License. |
| | | ! |
| | | ! If applicable, add the following below this CCPL HEADER, with the fields |
| | | ! enclosed by brackets "[]" replaced with your own identifying information: |
| | | ! Portions Copyright [yyyy] [name of copyright owner] |
| | | ! |
| | | ! CCPL HEADER END |
| | | ! |
| | | ! Copyright 2011-2015 ForgeRock AS. |
| | | ! |
| | | --> |
| | | <chapter xml:id="chap-install" |
| | | xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en" |
| | | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xsi:schemaLocation="http://docbook.org/ns/docbook |
| | | http://docbook.org/xml/5.0/xsd/docbook.xsd" |
| | | xmlns:xlink="http://www.w3.org/1999/xlink" |
| | | xmlns:xinclude="http://www.w3.org/2001/XInclude"> |
| | | <title>Installing OpenDJ Servers</title> |
| | | |
| | | <indexterm> |
| | | <primary>Installing</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | This chapter covers installation of OpenDJ server software. |
| | | </para> |
| | | |
| | | <itemizedlist> |
| | | <para> |
| | | This chapter includes the following procedures. |
| | | </para> |
| | | |
| | | <listitem><para><xref linkend="before-you-install" /></para></listitem> |
| | | <listitem><para><xref linkend="gui-install" /></para></listitem> |
| | | <listitem><para><xref linkend="install-launch-control-panel" /></para></listitem> |
| | | <listitem><para><xref linkend="command-line-install" /></para></listitem> |
| | | <listitem><para><xref linkend="install-gui-windows-msi" /></para></listitem> |
| | | <listitem><para><xref linkend="install-deb" /></para></listitem> |
| | | <listitem><para><xref linkend="install-rpm" /></para></listitem> |
| | | <listitem><para><xref linkend="install-properties-file" /></para></listitem> |
| | | <listitem><para><xref linkend="install-rest2ldap-servlet" /></para></listitem> |
| | | <listitem><para><xref linkend="install-dsml-gateway" /></para></listitem> |
| | | </itemizedlist> |
| | | |
| | | <procedure xml:id="before-you-install"> |
| | | <title>To Prepare For Installation</title> |
| | | |
| | | <step xml:id="check-for-java"> |
| | | <para> |
| | | Make sure you have a required Java environment installed |
| | | as described in the <citetitle>Release Notes</citetitle> section, |
| | | <link |
| | | xlink:href="release-notes#prerequisites-java" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>Java Environment</citetitle></link>. |
| | | </para> |
| | | |
| | | <para> |
| | | If your default Java environment is not appropriate, |
| | | set <literal>OPENDJ_JAVA_HOME</literal> |
| | | to the path to the correct Java environment, |
| | | or set <literal>OPENDJ_JAVA_BIN</literal> |
| | | to the absolute path of the <command>java</command> command. |
| | | The <literal>OPENDJ_JAVA_BIN</literal> environment variable is useful |
| | | if you have both 32-bit and 64-bit versions of the Java environment installed, |
| | | and want to make sure you use the 64-bit version. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Prevent anti-virus and intrusion detection systems from interfering |
| | | with OpenDJ directory server. |
| | | </para> |
| | | |
| | | <xinclude:include href="../shared/para-disable-anti-virus.xml" /> |
| | | </step> |
| | | |
| | | <step xml:id="download-opendj"> |
| | | <indexterm><primary>Downloading OpenDJ</primary></indexterm> |
| | | |
| | | <xinclude:include href="../shared/itemizedlist-download.xml" /> |
| | | |
| | | <variablelist> |
| | | <para> |
| | | The following OpenDJ server software is available. |
| | | </para> |
| | | |
| | | <varlistentry> |
| | | <term>OpenDJ-${docTargetVersion}.zip</term> |
| | | <listitem> |
| | | <para> |
| | | Cross-platform OpenDJ directory server installation files. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>OpenDJ-${docTargetVersion}.msi</term> |
| | | <listitem> |
| | | <para> |
| | | Microsoft Windows native installer for OpenDJ directory server. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>opendj_${docTargetVersion}-1_all.deb</term> |
| | | <listitem> |
| | | <para> |
| | | OpenDJ directory server native package for Debian |
| | | and related Linux distributions. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>opendj-${docTargetVersion}-1.noarch.rpm</term> |
| | | <listitem> |
| | | <para> |
| | | OpenDJ directory server native package for Red Hat |
| | | and related Linux distributions. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>OpenDJ-${docTargetVersion}-DSML.war</term> |
| | | <listitem> |
| | | <para> |
| | | Cross-platform OpenDJ DSML gateway web archive. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>opendj-rest2ldap-servlet-${docTargetVersion}-servlet.war</term> |
| | | <listitem> |
| | | <para> |
| | | Cross-platform OpenDJ REST LDAP gateway web archive. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | </variablelist> |
| | | </step> |
| | | |
| | | <step xml:id="app-server-needed-for-dsml"> |
| | | <indexterm><primary>DSML gateway</primary></indexterm> |
| | | <indexterm><primary>REST LDAP gateway</primary></indexterm> |
| | | |
| | | <para> |
| | | If you plan to install OpenDJ DSML gateway or OpenDJ REST LDAP gateway, |
| | | make sure you have an appropriate application server installed. |
| | | </para> |
| | | |
| | | <para> |
| | | For a list of supported application servers, |
| | | see the <citetitle>Release Notes</citetitle> section, |
| | | <link |
| | | xlink:href="release-notes#prerequisites-application-servers" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>Application Servers</citetitle></link>. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | If you plan to configure SSL or TLS to secure network communications |
| | | between the server and client applications, |
| | | get a properly signed digital certificate |
| | | that your client applications recognize, |
| | | such as one that fits with your organization's PKI |
| | | or one provided by a recognized certificate authority. |
| | | </para> |
| | | |
| | | <para> |
| | | To use the certificate during installation, |
| | | the certificate must be located |
| | | in a key store provided with Java (JKS, JCEKS, PKCS#12), |
| | | or on a PKCS#11 token. |
| | | To import a signed certificate into a key store, |
| | | use the Java <command>keytool</command> command. |
| | | </para> |
| | | |
| | | <para> |
| | | For details see the <citetitle>Administration Guide</citetitle> section, |
| | | <link |
| | | xlink:href="admin-guide#setup-server-cert" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>Preparing For Secure Communications</citetitle></link>. |
| | | </para> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="gui-install"> |
| | | <title>To Install OpenDJ Directory Server (Graphical User Interface)</title> |
| | | |
| | | <indexterm> |
| | | <primary>Graphical user interface installation</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | The OpenDJ <command>setup</command> command launches a wizard |
| | | that lets you install OpenDJ directory server |
| | | through a graphical user interface. |
| | | </para> |
| | | |
| | | <note> |
| | | <para> |
| | | If your environment picks up an old installation of Java, |
| | | installation can fail. |
| | | You might see an application error due to an old Java version. |
| | | </para> |
| | | </note> |
| | | |
| | | <para> |
| | | After completing the steps in <xref linkend="before-you-install" />, |
| | | follow these steps: |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Unzip OpenDJ-${docTargetVersion}.zip, and then run the |
| | | <link |
| | | xlink:show="new" |
| | | xlink:href="reference#setup-1" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | ><command>setup</command></link> command. |
| | | </para> |
| | | |
| | | <xinclude:include href="../shared/para-when-you-unzip.xml" /> |
| | | |
| | | <itemizedlist> |
| | | <para> |
| | | Find the <command>setup</command> command in the following locations: |
| | | </para> |
| | | |
| | | <listitem> |
| | | <para> |
| | | (UNIX|Linux) <command>opendj/setup</command> |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | (Windows) <command>opendj\setup.bat</command> |
| | | </para> |
| | | </listitem> |
| | | </itemizedlist> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Follow the instructions in the wizard. |
| | | </para> |
| | | |
| | | <itemizedlist> |
| | | <para> |
| | | The wizard presents the following screens: |
| | | </para> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Welcome</emphasis>: summarizes the setup process |
| | | and indicates the minimum required Java version |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>License</emphasis>: presents the license agreement to accept |
| | | before installing OpenDJ software |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Server Settings</emphasis>: prompts for basic server settings |
| | | including installation path, host name, port numbers, secure connections, |
| | | and credentials for the directory superuser |
| | | (default bind DN: <literal>cn=Directory Manager</literal>) |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Topology Options</emphasis>: prompts for data replication options |
| | | including whether this server is part of a replication topology, |
| | | and if so the port number and security settings for this server, |
| | | as well as the connection settings for a remote replica if available |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Directory Data</emphasis>: allows you to import or to generate |
| | | LDAP directory data as part of the setup process |
| | | </para> |
| | | |
| | | <para> |
| | | This screen also allows you to select the backend type for data storage. |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Runtime Options</emphasis>: allows you to adjust |
| | | JVM settings as part of the setup process, |
| | | for example to allow OpenDJ to use more memory if necessary |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Review</emphasis>: presents current selections |
| | | so that you can check everything is correct before running setup, |
| | | with the option to start OpenDJ directory server after setup completes |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <emphasis>Finished</emphasis>: summarizes how setup completed, |
| | | with the option to launch the OpenDJ Control Panel |
| | | </para> |
| | | </listitem> |
| | | </itemizedlist> |
| | | |
| | | <para> |
| | | <xref linkend="figure-quicksetup-control-panel" /> |
| | | shows the top-level window with status information. |
| | | OpenDJ Control Panel helps to manage directory data, LDAP schema, indexes, |
| | | monitoring, and JVM runtime options through a graphical user interface. |
| | | </para> |
| | | |
| | | <figure xml:id="figure-quicksetup-control-panel"> |
| | | <title>OpenDJ Control Panel</title> |
| | | |
| | | <mediaobject> |
| | | <imageobject> |
| | | <imagedata fileref="images/OpenDJ-Control-Panel.png" format="PNG" /> |
| | | </imageobject> |
| | | <textobject> |
| | | <para> |
| | | OpenDJ Control Panel offers basic administration capabilities. |
| | | </para> |
| | | </textobject> |
| | | </mediaobject> |
| | | </figure> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="command-line-install"> |
| | | <title>To Install OpenDJ Directory Server (Command Line)</title> |
| | | |
| | | <indexterm> |
| | | <primary>Command-line installation</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | The OpenDJ <command>setup --cli</command> command launches |
| | | a command-line installation that is interactive by default. |
| | | After completing the steps in <xref linkend="before-you-install" />, |
| | | follow these steps: |
| | | </para> |
| | | |
| | | <step> |
| | | <para>Unzip <filename>OpenDJ-${docTargetVersion}.zip</filename> |
| | | in the file system directory where you want to install the server. |
| | | </para> |
| | | |
| | | <para> |
| | | The |
| | | <link |
| | | xlink:show="new" |
| | | xlink:href="reference#setup-1" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | ><command>setup</command></link> command uses |
| | | the directory where you unzipped the files as the installation directory, |
| | | and does not ask you where to install OpenDJ. |
| | | Therefore, if you want to install elsewhere on the file system, |
| | | unzip the files in that location. |
| | | </para> |
| | | |
| | | <xinclude:include href="../shared/para-when-you-unzip.xml" /> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Run the <command>setup --cli</command> command |
| | | found in the <filename>/path/to/opendj</filename> directory. |
| | | </para> |
| | | |
| | | <para> |
| | | This command starts the setup program in interactive mode on the command line, |
| | | prompting you for each option. |
| | | Alternatively, use additional <command>setup</command> options |
| | | to specify values for the options you choose during interactive mode, |
| | | thus scripting the installation process. |
| | | See <command>setup --help</command> and the notes below. |
| | | </para> |
| | | |
| | | <indexterm> |
| | | <primary>Silent installation</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | To perform a non-interactive, silent installation, |
| | | provide all the options to configure OpenDJ, |
| | | and then also use the <option>-n</option> |
| | | or <option>--no-prompt</option> option. |
| | | </para> |
| | | |
| | | <para> |
| | | The <command>setup</command> command without the <option>--cli</option> option |
| | | runs the graphical user interface installer. |
| | | </para> |
| | | |
| | | <para> |
| | | The following example shows interactive installation of OpenDJ directory server. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>/path/to/opendj/setup --cli</userinput> |
| | | <computeroutput>READ THIS SOFTWARE LICENSE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING |
| | | THE FORGEROCK SOFTWARE, YOU, ON BEHALF OF YOURSELF AND YOUR COMPANY, AGREE TO |
| | | BE BOUND BY THIS SOFTWARE LICENSE AGREEMENT. IF YOU DO NOT AGREE TO THESE |
| | | TERMS, DO NOT DOWNLOAD OR INSTALL THE FORGEROCK SOFTWARE. |
| | | |
| | | ... |
| | | |
| | | Please read the License Agreement above. |
| | | You must accept the terms of the agreement before continuing with the |
| | | installation. |
| | | Accept the license (Yes/No) [No]:</computeroutput><userinput>Yes</userinput> |
| | | |
| | | <computeroutput>What would you like to use as the initial root user DN for the Directory |
| | | Server? [cn=Directory Manager]: |
| | | Please provide the password to use for the initial root user: |
| | | Please re-enter the password for confirmation: |
| | | |
| | | Provide the fully-qualified directory server host name that will be used when |
| | | generating self-signed certificates for LDAP SSL/StartTLS, the administration |
| | | connector, and replication [opendj.example.com]: |
| | | |
| | | On which port would you like the Directory Server to accept connections from |
| | | LDAP clients? [1389]: |
| | | |
| | | On which port would you like the Administration Connector to accept |
| | | connections? [4444]: |
| | | |
| | | Do you want to create base DNs in the server? (yes / no) [yes]:</computeroutput> |
| | | <computeroutput condition="local-db"> |
| | | Provide the backend type: |
| | | |
| | | 1) local-db |
| | | 2) pdb |
| | | |
| | | Enter choice [1]:</computeroutput> <userinput condition="local-db">2</userinput> |
| | | |
| | | <computeroutput>Provide the base DN for the directory data: [dc=example,dc=com]: |
| | | |
| | | Options for populating the database: |
| | | |
| | | 1) Only create the base entry |
| | | 2) Leave the database empty |
| | | 3) Import data from an LDIF file |
| | | 4) Load automatically-generated sample data |
| | | |
| | | Enter choice [1]:</computeroutput> <userinput>3</userinput> |
| | | |
| | | <computeroutput>Please specify the path to the LDIF file containing the data to import:</computeroutput> |
| | | <userinput>/path/to/Example.ldif</userinput> |
| | | |
| | | <computeroutput>Do you want to enable SSL? (yes / no) [no]: |
| | | |
| | | Do you want to enable Start TLS? (yes / no) [no]: |
| | | |
| | | Do you want to start the server when the configuration is completed? (yes / |
| | | no) [yes]: |
| | | |
| | | |
| | | Setup Summary |
| | | ============= |
| | | LDAP Listener Port: 1389 |
| | | Administration Connector Port: 4444 |
| | | JMX Listener Port: |
| | | LDAP Secure Access: disabled |
| | | Root User DN: cn=Directory Manager |
| | | Directory Data: Create New Base DN dc=example,dc=com. |
| | | Base DN Data: Import Data from LDIF File (/path/to/Example.ldif) |
| | | |
| | | Start Server when the configuration is completed |
| | | |
| | | |
| | | What would you like to do? |
| | | |
| | | 1) Set up the server with the parameters above |
| | | 2) Provide the setup parameters again |
| | | 3) Print equivalent non-interactive command-line |
| | | 4) Cancel and exit |
| | | |
| | | Enter choice [1]: |
| | | |
| | | See /var/.../opendj-setup...log for a detailed log of this operation. |
| | | |
| | | Configuring Directory Server ..... Done. |
| | | Importing LDIF file /path/to/Example.ldif ........... Done. |
| | | Starting Directory Server ........... Done. |
| | | |
| | | To see basic server configuration status and configuration you can launch \ |
| | | /path/to/opendj/bin/status</computeroutput> |
| | | </screen> |
| | | |
| | | <variablelist> |
| | | <para> |
| | | Notes on the options follow. |
| | | </para> |
| | | |
| | | <varlistentry> |
| | | <term>Initial root user DN</term> |
| | | <listitem> |
| | | <para> |
| | | The root user Distinguished Name identifies a user |
| | | who can perform all operations allowed for the server, |
| | | called root user due to the similarity to the UNIX root user. |
| | | </para> |
| | | |
| | | <para> |
| | | The default, <literal>cn=Directory Manager</literal>, |
| | | is a well-known name. |
| | | For additional protection, use a different name. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Initial root user password</term> |
| | | <listitem> |
| | | <para> |
| | | The root user will use simple, password-based authentication. |
| | | Later you can limit clear text access to avoid snooping, |
| | | but for now use a strong password here unless this is a throwaway server. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Fully-qualified directory server host name</term> |
| | | <listitem> |
| | | <para> |
| | | OpenDJ uses fully-qualified host name in self-signed certificates |
| | | and for identification when you use replication. |
| | | </para> |
| | | |
| | | <para> |
| | | If you are installing a single server temporarily for evaluation, |
| | | and are not concerned about replication |
| | | and whether self-signed certificates can be trusted, |
| | | then you can use an FQDN such as <literal>localhost.localdomain</literal>. |
| | | </para> |
| | | |
| | | <para> |
| | | Otherwise, use an FQDN that other hosts can resolve to reach your server. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>LDAP port</term> |
| | | <listitem> |
| | | <para> |
| | | The default for LDAP is 389. |
| | | </para> |
| | | |
| | | <para> |
| | | If you are working as a user who cannot open port 389, |
| | | setup suggests 1389 by default. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Administration port</term> |
| | | <listitem> |
| | | <para> |
| | | The default is 4444. |
| | | </para> |
| | | |
| | | <para> |
| | | This is the service port used to configure the server and to run tasks. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Create base DNs</term> |
| | | <listitem> |
| | | <para> |
| | | You need a base Distinguished Name, |
| | | such as <literal>dc=example,dc=com</literal>, |
| | | to add directory data. |
| | | If you already have LDIF, |
| | | the base DN you want is the distinguished name suffix |
| | | common to all entries in your LDIF. |
| | | </para> |
| | | |
| | | <para> |
| | | When you choose to create a base DN, |
| | | the <command>setup</command> command also |
| | | prompts you for a backend type, |
| | | which identifies the implementation of the repository |
| | | that holds your data. |
| | | </para> |
| | | |
| | | <para> |
| | | Later you can add more base DNs |
| | | if your data belongs in more than one suffix. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Import LDIF</term> |
| | | <listitem> |
| | | <para> |
| | | LDAP data interchange format (LDIF) is the standard text format |
| | | for expressing LDAP data. |
| | | </para> |
| | | |
| | | <para> |
| | | If you have LDIF already, |
| | | one reason you might not want to import the data |
| | | at the same time you install is |
| | | because your data uses attributes not defined in the default schema, |
| | | and so you will wait to add schema definitions before you import. |
| | | </para> |
| | | |
| | | <para> |
| | | If you have a large data set to import, |
| | | also increase the import cache size, |
| | | which you can do by passing a Java properties file. |
| | | You might also prefer to perform data import offline. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Enable SSL and TLS</term> |
| | | <listitem> |
| | | <para> |
| | | Enabling Secure Sockets Layer or Transport Layer Security |
| | | lets you protect the network traffic between directory clients |
| | | and your server. |
| | | </para> |
| | | |
| | | <variablelist> |
| | | <varlistentry> |
| | | <term>SSL</term> |
| | | <listitem> |
| | | <para> |
| | | SSL requires its own, separate port for LDAPS traffic. |
| | | </para> |
| | | |
| | | <para> |
| | | The default port for LDAPS is 636. |
| | | </para> |
| | | |
| | | <para> |
| | | If you are working as a user who cannot open port 636, |
| | | setup suggests 1636 by default. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>TLS</term> |
| | | <listitem> |
| | | <para> |
| | | TLS lets you use StartTLS to negotiate a secure connection |
| | | between a client and server, |
| | | starting from the same server port you configured for LDAP. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>X.509 certificates</term> |
| | | <listitem> |
| | | <para> |
| | | The digital certificate you need for SSL and TLS can be self-signed |
| | | and created on the fly. |
| | | Trouble is, client applications view self-signed certificates like fake IDs, |
| | | and so do not trust them. |
| | | </para> |
| | | |
| | | <para> |
| | | Self-signed certificates for externally facing ports facilitate testing, |
| | | but are not intended for production use. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | </variablelist> |
| | | </listitem> |
| | | </varlistentry> |
| | | |
| | | <varlistentry> |
| | | <term>Start the server</term> |
| | | <listitem> |
| | | <para> |
| | | If you do not start the server during installation, |
| | | you can use the <command>/path/to/opendj/bin/start-ds</command> command later. |
| | | </para> |
| | | </listitem> |
| | | </varlistentry> |
| | | </variablelist> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Run the |
| | | <link |
| | | xlink:show="new" |
| | | xlink:href="reference#status-1" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | ><command>status</command></link> command |
| | | to make sure your OpenDJ server is working as expected |
| | | as shown in the following example. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>/path/to/opendj/bin/status</userinput> |
| | | <computeroutput> |
| | | >>>> Specify OpenDJ LDAP connection parameters |
| | | |
| | | Administrator user bind DN [cn=Directory Manager]: |
| | | |
| | | Password for user 'cn=Directory Manager': |
| | | |
| | | --- Server Status --- |
| | | Server Run Status: Started |
| | | Open Connections: 1 |
| | | |
| | | --- Server Details --- |
| | | Host Name: opendj.example.com |
| | | Administrative Users: cn=Directory Manager |
| | | Installation Path: /path/to/opendj |
| | | Version: OpenDJ ${docTargetVersion} |
| | | Java Version: <replaceable>version</replaceable> |
| | | Administration Connector: Port 4444 (LDAPS) |
| | | |
| | | --- Connection Handlers --- |
| | | Address:Port : Protocol : State |
| | | -------------:----------:--------- |
| | | -- : LDIF : Disabled |
| | | 0.0.0.0:161 : SNMP : Disabled |
| | | 0.0.0.0:636 : LDAPS : Disabled |
| | | 0.0.0.0:1389 : LDAP : Enabled |
| | | 0.0.0.0:1689 : JMX : Disabled |
| | | |
| | | --- Data Sources --- |
| | | Base DN: dc=example,dc=com |
| | | Backend ID: userRoot |
| | | Entries: 160 |
| | | Replication: Disabled</computeroutput> |
| | | </screen> |
| | | |
| | | <note> |
| | | <para> |
| | | You can install OpenDJ in unattended and silent fashion, too. |
| | | See the procedure, <xref linkend="install-properties-file" />. |
| | | </para> |
| | | </note> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-launch-control-panel"> |
| | | <title>To Start OpenDJ Control Panel</title> |
| | | |
| | | <para> |
| | | You might close OpenDJ Control Panel, |
| | | or decide to start it later after closing the setup wizard. |
| | | </para> |
| | | |
| | | <step> |
| | | <itemizedlist> |
| | | <para> |
| | | To launch OpenDJ Control Panel, run the |
| | | <link |
| | | xlink:show="new" |
| | | xlink:href="reference#control-panel-1" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | ><command>control-panel</command></link> command. |
| | | </para> |
| | | |
| | | <para> |
| | | Depending on your host system, this command is one of the following. |
| | | </para> |
| | | |
| | | <listitem> |
| | | <para> |
| | | (Linux|UNIX) <command>/path/to/opendj/bin/control-panel</command> |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | (Windows) <command>C:\path\to\opendj\bat\control-panel.bat</command> |
| | | </para> |
| | | </listitem> |
| | | </itemizedlist> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-gui-windows-msi"> |
| | | <title>To Install OpenDJ From the Windows Installer Package</title> |
| | | |
| | | <indexterm> |
| | | <primary> |
| | | Windows installer (.msi) package |
| | | </primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | You can install OpenDJ directory server on Windows systems |
| | | by using the Windows installer package, |
| | | <filename>OpenDJ-${docTargetVersion}.msi</filename>. |
| | | </para> |
| | | |
| | | <para> |
| | | Installing OpenDJ directory server from the Windows installer package |
| | | is a two-stage process. |
| | | First, you install the files by using the Windows installer package wizard. |
| | | Second, you configure OpenDJ by using the <command>setup</command> command. |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Prevent anti-virus and intrusion detection systems from interfering |
| | | with OpenDJ directory server. |
| | | </para> |
| | | |
| | | <xinclude:include href="../shared/para-disable-anti-virus.xml" /> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Install OpenDJ files in one of the following ways. |
| | | </para> |
| | | |
| | | <stepalternatives> |
| | | <step> |
| | | <substeps> |
| | | <step> |
| | | <para> |
| | | Double-click the Windows installer package, |
| | | <filename>OpenDJ-${docTargetVersion}.msi</filename>, |
| | | to start the install wizard. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | In the Destination Folder screen, set the folder |
| | | where the wizard installs OpenDJ directory server files. |
| | | </para> |
| | | |
| | | <para> |
| | | The default location is under Program Files on the system drive. |
| | | For example if the system drive is C:, the default location is |
| | | <filename>C:\Program Files (x86)\OpenDJ\</filename>, |
| | | as the native executable is a 32-bit application, |
| | | though you can run OpenDJ directory server |
| | | with a 64-bit Java environment. |
| | | </para> |
| | | </step> |
| | | </substeps> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Use the Microsoft <command>msiexec.exe</command> command |
| | | to install the files. |
| | | </para> |
| | | |
| | | <para> |
| | | The following example installs OpenDJ directory server files under |
| | | <filename>C:\OpenDJ-${docTargetVersion}</filename>, |
| | | writing an installation log file, <filename>install.log</filename>, |
| | | in the current folder. |
| | | </para> |
| | | |
| | | <screen> |
| | | C:\><userinput>msiexec /i OpenDJ-${docTargetVersion}.msi /l* install.log /q OPENDJ=C:\OpenDJ-${docTargetVersion}</userinput> |
| | | </screen> |
| | | </step> |
| | | </stepalternatives> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Start the installation. |
| | | </para> |
| | | |
| | | <para> |
| | | When installation is finished, OpenDJ directory server files |
| | | are found in the location you specified as Destination Folder. |
| | | You must still run the <command>setup</command> command |
| | | before you can use OpenDJ directory server. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Browse to the Destination Folder, |
| | | and double-click the <command>setup</command> command |
| | | to start the OpenDJ setup wizard, |
| | | and then follow the instructions on screen |
| | | as described in <xref linkend="gui-install" />. |
| | | </para> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-deb"> |
| | | <title>To Install From the Debian Package</title> |
| | | |
| | | <indexterm> |
| | | <primary>Debian (.deb) package</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | On Debian and related Linux distributions such as Ubuntu, |
| | | you can install OpenDJ directory server from the Debian package. |
| | | </para> |
| | | |
| | | <step performance="optional"> |
| | | <para> |
| | | Before you install OpenDJ, |
| | | install a Java runtime environment if none is installed yet. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>sudo apt-get install default-jre</userinput> |
| | | </screen> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Install the OpenDJ directory server package. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>sudo dpkg -i opendj_${docTargetVersion}-1_all.deb</userinput> |
| | | <computeroutput>Selecting previously unselected package opendj. |
| | | (Reading database ... 185569 files and directories currently installed.) |
| | | Unpacking opendj (from opendj_${docTargetVersion}-1_all.deb) ... |
| | | |
| | | Setting up opendj (${docTargetVersion}) ... |
| | | Adding system startup for /etc/init.d/opendj ... |
| | | /etc/rc0.d/K20opendj -> ../init.d/opendj |
| | | /etc/rc1.d/K20opendj -> ../init.d/opendj |
| | | /etc/rc6.d/K20opendj -> ../init.d/opendj |
| | | /etc/rc2.d/S20opendj -> ../init.d/opendj |
| | | /etc/rc3.d/S20opendj -> ../init.d/opendj |
| | | /etc/rc4.d/S20opendj -> ../init.d/opendj |
| | | /etc/rc5.d/S20opendj -> ../init.d/opendj |
| | | |
| | | Processing triggers for ureadahead ... |
| | | ureadahead will be reprofiled on next reboot</computeroutput> |
| | | </screen> |
| | | |
| | | <para> |
| | | The Debian package installs OpenDJ directory server |
| | | in the <filename>/opt/opendj</filename> directory, |
| | | generates service management scripts, |
| | | adds documentation files under <filename>/usr/share/doc/opendj</filename>, |
| | | and adds man pages under <filename>/opt/opendj/share/man</filename>. |
| | | </para> |
| | | |
| | | <para> |
| | | The files are owned by root by default, |
| | | making it easier to have OpenDJ listen on ports 389 and 636. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Configure OpenDJ directory server by using the command |
| | | <command>sudo /opt/opendj/setup</command>. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>sudo /opt/opendj/setup --cli</userinput> |
| | | <computeroutput>... |
| | | To see basic server configuration status and configuration you can launch |
| | | /opt/opendj/bin/status</computeroutput> |
| | | </screen> |
| | | </step> |
| | | |
| | | <step performance="optional"> |
| | | <para> |
| | | Check OpenDJ directory server status. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>service opendj status</userinput> |
| | | <computeroutput>$opendj status: > Running.</computeroutput> |
| | | $ <userinput>sudo /opt/opendj/bin/status</userinput> |
| | | |
| | | <computeroutput> |
| | | >>>> Specify OpenDJ LDAP connection parameters |
| | | |
| | | Administrator user bind DN [cn=Directory Manager]: |
| | | |
| | | Password for user 'cn=Directory Manager': |
| | | |
| | | --- Server Status --- |
| | | Server Run Status: Started |
| | | Open Connections: 1 |
| | | |
| | | --- Server Details --- |
| | | Host Name: ubuntu.example.com |
| | | Administrative Users: cn=Directory Manager |
| | | Installation Path: /opt/opendj |
| | | Version: OpenDJ ${docTargetVersion} |
| | | Java Version: <replaceable>version</replaceable> |
| | | Administration Connector: Port 4444 (LDAPS) |
| | | |
| | | --- Connection Handlers --- |
| | | Address:Port : Protocol : State |
| | | -------------:------------------------:--------- |
| | | -- : LDIF : Disabled |
| | | 0.0.0.0:161 : SNMP : Disabled |
| | | 0.0.0.0:389 : LDAP (allows StartTLS) : Enabled |
| | | 0.0.0.0:636 : LDAPS : Enabled |
| | | 0.0.0.0:1689 : JMX : Disabled |
| | | 0.0.0.0:8080 : HTTP : Disabled |
| | | |
| | | --- Data Sources --- |
| | | Base DN: dc=example,dc=com |
| | | Backend ID: userRoot |
| | | Entries: 2002 |
| | | Replication: </computeroutput> |
| | | </screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-rpm"> |
| | | <title>To Install From the RPM Package</title> |
| | | |
| | | <indexterm> |
| | | <primary>Red Hat (.rpm) package</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | On Red Hat and related Linux distributions such as Fedora and CentOS, |
| | | you can install OpenDJ directory server from the RPM package. |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Log in as superuser to install the software. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>su</userinput> |
| | | <computeroutput>Password:</computeroutput> |
| | | # |
| | | </screen> |
| | | </step> |
| | | |
| | | <step performance="optional"> |
| | | <para> |
| | | Before you install OpenDJ, |
| | | install a Java runtime environment if none is installed yet. |
| | | </para> |
| | | |
| | | <para> |
| | | You might need to download an RPM to install the Java runtime environment, |
| | | and then install the RPM by using the <command>rpm</command> command. |
| | | </para> |
| | | |
| | | <screen> |
| | | # <userinput>rpm -ivh jre-*.rpm</userinput> |
| | | </screen> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Install the OpenDJ directory server package. |
| | | </para> |
| | | |
| | | <screen> |
| | | # <userinput>rpm -i opendj-${docTargetVersion}-1.noarch.rpm</userinput> |
| | | <computeroutput>Pre Install - initial install |
| | | Post Install - initial install</computeroutput> |
| | | |
| | | # |
| | | </screen> |
| | | |
| | | <para> |
| | | The RPM package installs OpenDJ directory server |
| | | in the <filename>/opt/opendj</filename> directory, |
| | | generates service management scripts, |
| | | and adds man pages under <filename>/opt/opendj/share/man</filename>. |
| | | </para> |
| | | |
| | | <para> |
| | | The files are owned by root by default, |
| | | making it easier to have OpenDJ listen on ports 389 and 636. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Configure OpenDJ directory server by using the command |
| | | <command>/opt/opendj/setup</command>. |
| | | </para> |
| | | |
| | | <screen> |
| | | # <userinput>/opt/opendj/setup --cli</userinput> |
| | | <computeroutput>... |
| | | To see basic server configuration status and configuration you can launch |
| | | /opt/opendj/bin/status</computeroutput> |
| | | </screen> |
| | | </step> |
| | | |
| | | <step performance="optional"> |
| | | <para> |
| | | Check OpenDJ directory server status. |
| | | </para> |
| | | |
| | | <screen> |
| | | # <userinput>service opendj status</userinput> |
| | | <computeroutput>opendj status: > Running.</computeroutput> |
| | | # <userinput>/opt/opendj/bin/status</userinput> |
| | | |
| | | <computeroutput> |
| | | >>>> Specify OpenDJ LDAP connection parameters |
| | | |
| | | Administrator user bind DN [cn=Directory Manager]: |
| | | |
| | | Password for user 'cn=Directory Manager': |
| | | |
| | | --- Server Status --- |
| | | Server Run Status: Started |
| | | Open Connections: 1 |
| | | |
| | | --- Server Details --- |
| | | Host Name: fedora.example.com |
| | | Administrative Users: cn=Directory Manager |
| | | Installation Path: /opt/opendj |
| | | Version: OpenDJ ${docTargetVersion} |
| | | Java Version: <replaceable>version</replaceable> |
| | | Administration Connector: Port 4444 (LDAPS) |
| | | |
| | | --- Connection Handlers --- |
| | | Address:Port : Protocol : State |
| | | -------------:------------------------:--------- |
| | | -- : LDIF : Disabled |
| | | 0.0.0.0:161 : SNMP : Disabled |
| | | 0.0.0.0:389 : LDAP (allows StartTLS) : Enabled |
| | | 0.0.0.0:636 : LDAPS : Enabled |
| | | 0.0.0.0:1689 : JMX : Disabled |
| | | 0.0.0.0:8080 : HTTP : Disabled |
| | | |
| | | --- Data Sources --- |
| | | Base DN: dc=example,dc=com |
| | | Backend ID: userRoot |
| | | Entries: 2002 |
| | | Replication: </computeroutput> |
| | | </screen> |
| | | |
| | | <para> |
| | | By default OpenDJ starts in run levels 2, 3, 4, and 5. |
| | | </para> |
| | | |
| | | <screen> |
| | | # <userinput>chkconfig --list | grep opendj</userinput> |
| | | <computeroutput>... |
| | | opendj 0:off 1:off 2:on 3:on 4:on 5:on 6:off</computeroutput> |
| | | </screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-properties-file"> |
| | | <title>To Install OpenDJ Directory Server With a Properties File</title> |
| | | |
| | | <indexterm> |
| | | <primary>Silent installation</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | You can install OpenDJ directory server |
| | | by using the <command>setup</command> command with a properties file. |
| | | </para> |
| | | |
| | | <para> |
| | | Property names correspond to the option names, but without leading dashes. |
| | | Options that take no arguments become boolean properties |
| | | as in the following example: |
| | | </para> |
| | | |
| | | <programlisting language="ini">enableStartTLS=true</programlisting> |
| | | |
| | | <para> |
| | | If you use a properties file with multiple tools, |
| | | prefix the property name with the tool name |
| | | followed by a dot (<literal>.</literal>), |
| | | in the following example: |
| | | </para> |
| | | |
| | | <programlisting language="ini">setup.rootUserPasswordFile=/tmp/pwd.txt</programlisting> |
| | | |
| | | <para> |
| | | The following steps demonstrate use of a properties file |
| | | as part of a scripted installation process. |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Prepare your properties file. |
| | | </para> |
| | | |
| | | <para> |
| | | This procedure uses the following example properties file. |
| | | </para> |
| | | |
| | | <programlisting language="ini"> |
| | | # |
| | | # Sample properties file to set up OpenDJ directory server |
| | | # |
| | | hostname =opendj.example.com |
| | | ldapPort =1389 |
| | | generateSelfSignedCertificate =true |
| | | enableStartTLS =true |
| | | ldapsPort =1636 |
| | | jmxPort =1689 |
| | | adminConnectorPort =4444 |
| | | rootUserDN =cn=Directory Manager |
| | | rootUserPassword =password |
| | | baseDN =dc=example,dc=com |
| | | ldifFile =/net/install/dj/Example.ldif |
| | | #sampleData =2000 |
| | | </programlisting> |
| | | |
| | | <para> |
| | | If you have multiple servers to install, |
| | | consider scripting creation of the properties files. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Prepare an installation script. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>cat /net/install/dj/1/setup.sh</userinput> |
| | | <computeroutput>#!/bin/sh |
| | | |
| | | unzip -d /path/to /net/install/dj/OpenDJ-${docTargetVersion}.zip && cd /path/to/opendj |
| | | ./setup --cli --propertiesFilePath /net/install/dj/1/setup.props \ |
| | | --acceptLicense --no-prompt</computeroutput> |
| | | </screen> |
| | | |
| | | <para> |
| | | The properties file contains only installation options, |
| | | and does not fully configure OpenDJ directory server. |
| | | </para> |
| | | |
| | | <para> |
| | | If you also want your script to configure OpenDJ directory server, |
| | | follow a successful run of the <command>setup</command> command |
| | | with <command>dsconfig</command> commands to configure the server. |
| | | To run a series of configuration commands as a batch |
| | | using the <command>dsconfig</command> command, |
| | | use either |
| | | the <option>--batchFilePath <replaceable>file</replaceable></option> option, |
| | | where <replaceable>file</replaceable> contains the configuration commands, |
| | | or the <option>--batch</option> option to read from standard input |
| | | as in the following example that creates a backend and sets up indexes. |
| | | </para> |
| | | |
| | | <screen> |
| | | <userinput>/path/to/opendj/bin/dsconfig \ |
| | | --port 4444 \ |
| | | --hostname opendj.example.com \ |
| | | --bindDN "cn=Directory Manager" \ |
| | | --bindPassword password \ |
| | | --no-prompt \ |
| | | --trustAll \ |
| | | --batch <<END_OF_COMMAND_INPUT |
| | | create-backend --backend-name newBackend \ |
| | | --type pdb \ |
| | | --set base-dn:"dc=example,dc=org" \ |
| | | --set db-cache-percent:20 \ |
| | | --set enabled:true |
| | | create-backend-index --backend-name newBackend \ |
| | | --type generic \ |
| | | --set index-type:equality \ |
| | | --set index-type:substring \ |
| | | --index-name cn |
| | | create-backend-index --backend-name newBackend \ |
| | | --type generic \ |
| | | --set index-type:equality \ |
| | | --set index-type:substring \ |
| | | --index-name sn |
| | | create-backend-index --backend-name newBackend \ |
| | | --type generic \ |
| | | --set index-type:equality \ |
| | | --index-name uid |
| | | create-backend-index --backend-name newBackend \ |
| | | --type generic \ |
| | | --set index-type:equality \ |
| | | --set index-type:substring \ |
| | | --index-name mail |
| | | END_OF_COMMAND_INPUT</userinput> |
| | | </screen> |
| | | </step> |
| | | |
| | | <step> |
| | | <para>Run your installation script.</para> |
| | | |
| | | <screen> |
| | | $ <userinput>/net/install/dj/1/setup.sh</userinput> |
| | | <computeroutput>Archive: /net/install/dj/OpenDJ-${docTargetVersion}.zip |
| | | creating: /path/to/opendj |
| | | ... |
| | | inflating: /path/to/opendj/setup |
| | | inflating: /path/to/opendj/uninstall |
| | | inflating: /path/to/opendj/upgrade |
| | | |
| | | READ THIS SOFTWARE LICENSE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING |
| | | THE FORGEROCK SOFTWARE, YOU, ON BEHALF OF YOURSELF AND YOUR COMPANY, AGREE TO |
| | | BE BOUND BY THIS SOFTWARE LICENSE AGREEMENT. IF YOU DO NOT AGREE TO THESE |
| | | TERMS, DO NOT DOWNLOAD OR INSTALL THE FORGEROCK SOFTWARE. |
| | | |
| | | ... |
| | | |
| | | Do you accept the License Agreement?yes |
| | | See /var/folders/.../opendj-setup-....log for a detailed log of this operation. |
| | | |
| | | Configuring Directory Server ..... Done. |
| | | Configuring Certificates ..... Done. |
| | | Importing LDIF file /net/install/dj/Example.ldif ....... Done. |
| | | Starting Directory Server ....... Done. |
| | | |
| | | To see basic server configuration status and configuration you can launch |
| | | /path/to/opendj/bin/status</computeroutput> |
| | | </screen> |
| | | |
| | | <para> |
| | | At this point you can use OpenDJ directory server, |
| | | or you can perform additional configuration. |
| | | </para> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-rest2ldap-servlet"> |
| | | <title>To Install OpenDJ REST LDAP Gateway</title> |
| | | |
| | | <indexterm> |
| | | <primary>REST LDAP gateway</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | The OpenDJ REST LDAP gateway functions as a web application |
| | | in a web application container, running independently of OpenDJ. |
| | | Alternatively, you can use the HTTP connection handler |
| | | in OpenDJ directory server. |
| | | For instructions see the <citetitle>Administration Guide</citetitle> procedure, |
| | | <link |
| | | xlink:href="admin-guide#setup-rest2ldap-connection-handler" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>To Set Up REST Access to OpenDJ Directory Server</citetitle></link>. |
| | | </para> |
| | | |
| | | <para> |
| | | You configure the gateway to access your directory service |
| | | by editing the configuration file |
| | | <filename>opendj-rest2ldap-servlet.json</filename> |
| | | in the deployed OpenDJ REST LDAP gateway web application. |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Deploy <filename>opendj-rest2ldap-servlet-${sdkDocTargetVersion}-servlet.war</filename> |
| | | according to the instructions for your application server. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Edit <filename>opendj-rest2ldap-servlet.json</filename> |
| | | where you deployed the gateway web application. |
| | | </para> |
| | | |
| | | <para> |
| | | The default JSON resource for the configuration |
| | | includes both connection and authentication information, |
| | | and also <literal>mappings</literal>. |
| | | The <literal>mappings</literal> describe how the gateway translates |
| | | between JSON and LDAP representations of directory data. |
| | | The default <literal>mappings</literal> are built |
| | | to work with generated example data and also the sample content in |
| | | <link xlink:show="new" xlink:href="../resources/Example.ldif">Example.ldif</link>. |
| | | </para> |
| | | |
| | | <itemizedlist> |
| | | <para> |
| | | At minimum adjust the following gateway configuration settings: |
| | | </para> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <literal>primaryLDAPServers</literal>: |
| | | Set to the correct directory server host names and port numbers. |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <literal>authentication</literal>: |
| | | Set to the correct simple bind credentials. |
| | | </para> |
| | | </listitem> |
| | | |
| | | <listitem> |
| | | <para> |
| | | <literal>mappings</literal>: |
| | | Make sure these match the directory data. |
| | | </para> |
| | | </listitem> |
| | | </itemizedlist> |
| | | |
| | | <para> |
| | | For details on the configuration see the <citetitle>Reference</citetitle> topic, |
| | | <link |
| | | xlink:href="reference#appendix-rest2ldap" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>REST LDAP Configuration</citetitle></link>. |
| | | </para> |
| | | |
| | | <para> |
| | | When connecting to directory servers over LDAPS or LDAP and StartTLS, |
| | | you can configure the trust manager to use a file-based trust store |
| | | for server certificates that the gateway should trust. |
| | | This allows the gateway to validate server certificates signed |
| | | for example by a Certificate Authority not recognized |
| | | by the Java environment when setting up LDAPS or StartTLS connections. |
| | | See the <citetitle>Administration Guide</citetitle> section, |
| | | <link |
| | | xlink:href="admin-guide#setup-server-cert" |
| | | xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:show="new" |
| | | ><citetitle>Preparing For Secure Communications</citetitle></link> |
| | | for an example showing how to use the Java <command>keytool</command> command |
| | | to import a server certificate into a trust store file. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Restart the REST LDAP gateway or the application server |
| | | to make sure the configuration changes are taken into account. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Make sure that your directory server is running, |
| | | and then check that the gateway is connecting correctly. |
| | | </para> |
| | | |
| | | <para> |
| | | The following command reads Babs Jensen's entry through the gateway |
| | | to a directory server holding data from <filename>Example.ldif</filename>. |
| | | </para> |
| | | |
| | | <screen> |
| | | $ <userinput>curl http://bjensen:hifalutin@opendj.example.com:8080/rest2ldap/users/bjensen</userinput> |
| | | <computeroutput>{ |
| | | "_rev" : "000000002ee3b764", |
| | | "schemas" : [ "urn:scim:schemas:core:1.0" ], |
| | | "contactInformation" : { |
| | | "telephoneNumber" : "+1 408 555 1862", |
| | | "emailAddress" : "bjensen@example.com" |
| | | }, |
| | | "_id" : "bjensen", |
| | | "name" : { |
| | | "familyName" : "Jensen", |
| | | "givenName" : "Barbara" |
| | | }, |
| | | "userName" : "bjensen@example.com", |
| | | "displayName" : "Barbara Jensen", |
| | | "manager" : [ { |
| | | "_id" : "trigden", |
| | | "displayName" : "Torrey Rigden" |
| | | } ] |
| | | }</computeroutput> |
| | | </screen> |
| | | |
| | | <para> |
| | | If you generated example data, Babs Jensen's entry is not included. |
| | | Instead, try a URL such as |
| | | <literal>http://user.0:password@opendj.example.com:8080/rest2ldap/users/user.0</literal>. |
| | | </para> |
| | | </step> |
| | | </procedure> |
| | | |
| | | <procedure xml:id="install-dsml-gateway"> |
| | | <title>To Install OpenDJ DSML gateway</title> |
| | | |
| | | <indexterm> |
| | | <primary>DSML gateway</primary> |
| | | </indexterm> |
| | | |
| | | <para> |
| | | The OpenDJ DSML gateway functions as a web application in a web application container. |
| | | The DSML gateway runs independently of OpenDJ directory server. |
| | | You configure the gateway to access your directory service by editing |
| | | the <literal>ldap.host</literal> and <literal>ldap.port</literal> parameters |
| | | in the gateway <filename>WEB-INF/web.xml</filename> configuration file. |
| | | </para> |
| | | |
| | | <step> |
| | | <para> |
| | | Deploy <filename>OpenDJ-${docTargetVersion}-DSML.war</filename> |
| | | according to the instructions for your application server. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Edit <filename>WEB-INF/web.xml</filename> to ensure the values for |
| | | <literal>ldap.host</literal> and <literal>ldap.port</literal> are correct. |
| | | </para> |
| | | </step> |
| | | |
| | | <step> |
| | | <para> |
| | | Restart the web application container according to the instructions |
| | | for your application server. |
| | | </para> |
| | | </step> |
| | | </procedure> |
| | | </chapter> |