Continue commands in <screen> with just "\n " rather than " \\\n> " to make copy/pasting and updating easier.
| | |
| | | the server configuration, you must manually apply the changes to each |
| | | replica in a replication topology.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-password-policy-prop --policy-name "Default Password Policy" \ |
| | | > --set lockout-failure-count:3 --set lockout-duration:5m \ |
| | | > --set lockout-failure-expiration-interval:5m -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-password-policy-prop --policy-name "Default Password Policy" |
| | | --set lockout-failure-count:3 --set lockout-duration:5m |
| | | --set lockout-failure-expiration-interval:5m -X -n</screen> |
| | | |
| | | <para>Users having the default password policy are then locked out after |
| | | three failed attempts in succession.</para> |
| | | |
| | | <screen>$ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin \ |
| | | > -b dc=example,dc=com uid=bjensen mail |
| | | <screen>$ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin |
| | | -b dc=example,dc=com uid=bjensen mail |
| | | dn: uid=bjensen,ou=People,dc=example,dc=com |
| | | mail: bjensen@example.com |
| | | |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs \ |
| | | > -b dc=example,dc=com uid=bjensen mail |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs |
| | | -b dc=example,dc=com uid=bjensen mail |
| | | The simple bind attempt failed |
| | | Result Code: 49 (Invalid Credentials) |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs \ |
| | | > -b dc=example,dc=com uid=bjensen mail |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs |
| | | -b dc=example,dc=com uid=bjensen mail |
| | | The simple bind attempt failed |
| | | Result Code: 49 (Invalid Credentials) |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs \ |
| | | > -b dc=example,dc=com uid=bjensen mail |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w fatfngrs |
| | | -b dc=example,dc=com uid=bjensen mail |
| | | The simple bind attempt failed |
| | | Result Code: 49 (Invalid Credentials) |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin \ |
| | | > -b dc=example,dc=com uid=bjensen mail |
| | | $ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin |
| | | -b dc=example,dc=com uid=bjensen mail |
| | | The simple bind attempt failed |
| | | Result Code: 49 (Invalid Credentials)</screen> |
| | | </section> |
| | |
| | | <para>Set the account status to disabled with the |
| | | <command>manage-account</command> command.</para> |
| | | |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery set-account-is-disabled -O true \ |
| | | > -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery set-account-is-disabled -O true |
| | | -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | Account Is Disabled: true</screen> |
| | | </step> |
| | | </procedure> |
| | |
| | | <para>Clear the disabled status using the <command>manage-account</command> |
| | | command.</para> |
| | | |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery clear-account-is-disabled \ |
| | | > -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery clear-account-is-disabled |
| | | -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | Account Is Disabled: false</screen> |
| | | </step> |
| | | </procedure> |
| | |
| | | <step> |
| | | <para>Set the base DN where <literal>uid</literal> should have unique |
| | | values, and enable the plugin.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-plugin-prop --plugin-name "UID Unique Attribute" \ |
| | | > --set base-dn:ou=people,dc=example,dc=com --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-plugin-prop --plugin-name "UID Unique Attribute" |
| | | --set base-dn:ou=people,dc=example,dc=com --set enabled:true -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Check that the plugin is working correctly.</para> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Set up the plugin configuration for your attribute.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-plugin --plugin-name "Unique mobile numbers" \ |
| | | > --type unique-attribute --set enabled:true \ |
| | | > --set base-dn:ou=people,dc=example,dc=com --set type:mobile -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-plugin --plugin-name "Unique mobile numbers" |
| | | --type unique-attribute --set enabled:true |
| | | --set base-dn:ou=people,dc=example,dc=com --set type:mobile -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Check that the plugin is working correctly.</para> |
| | |
| | | <step> |
| | | <para>Back up only the database for Example.com, where the data |
| | | is stored in the backend named <literal>userRoot</literal>.</para> |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password \ |
| | | > -n userRoot -d /path/to/OpenDJ/bak -t 0 |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password |
| | | -n userRoot -d /path/to/OpenDJ/bak -t 0 |
| | | Backup task 20110613143715983 scheduled to start Jun 13, 2011 2:37:15 PM CEST</screen> |
| | | </step> |
| | | <step> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Back up all user data on the server.</para> |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password \ |
| | | > -a -d /path/to/OpenDJ/bak -t 0 |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password |
| | | -a -d /path/to/OpenDJ/bak -t 0 |
| | | Backup task 20110613143801866 scheduled to start Jun 13, 2011 2:38:01 PM CEST</screen> |
| | | </step> |
| | | </stepalternatives> |
| | |
| | | <step> |
| | | <para>Back up all user data every night at 2 AM, and notify |
| | | diradmin@example.com when finished, or on error.</para> |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password -a \ |
| | | > -d /path/to/OpenDJ/bak --recurringTask "00 02 * * *" \ |
| | | > --completionNotify diradmin@example.com --errorNotify diradmin@example.com |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password -a |
| | | -d /path/to/OpenDJ/bak --recurringTask "00 02 * * *" |
| | | --completionNotify diradmin@example.com --errorNotify diradmin@example.com |
| | | Recurring Backup task BackupTask-988d6adf-4d65-44bf-8546-6ea74a2480b0 |
| | | scheduled successfully</screen> |
| | | </step> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Schedule the restore as a task to begin immediately.</para> |
| | | <screen>$ restore -p 5444 -D "cn=Directory Manager" -w password \ |
| | | > -d /path/to/OpenDJ/bak -I 20110613080032 -t 0 |
| | | <screen>$ restore -p 5444 -D "cn=Directory Manager" -w password |
| | | -d /path/to/OpenDJ/bak -I 20110613080032 -t 0 |
| | | Restore task 20110613155052932 scheduled to start Jun 13, 2011 3:50:52 PM CEST</screen> |
| | | </step> |
| | | </stepalternatives> |
| | |
| | | |
| | | <step> |
| | | <para>Prepare the replica to be restored.</para> |
| | | <screen>$ dsreplication pre-external-initialization -I admin -w password -X -n \ |
| | | > -p 5444 -b dc=example,dc=com |
| | | <screen>$ dsreplication pre-external-initialization -I admin -w password -X -n |
| | | -p 5444 -b dc=example,dc=com |
| | | |
| | | Preparing base DN dc=example,dc=com to be initialized externally ..... Done. |
| | | |
| | |
| | | </step> |
| | | <step> |
| | | <para>Reinitialize replication on the replica.</para> |
| | | <screen>$ dsreplication post-external-initialization -I admin -w password -X -n \ |
| | | > -p 5444 -b dc=example,dc=com |
| | | <screen>$ dsreplication post-external-initialization -I admin -w password -X -n |
| | | -p 5444 -b dc=example,dc=com |
| | | |
| | | Updating replication information on base DN dc=example,dc=com ..... Done. |
| | | |
| | |
| | | <literal>Virtual Static member</literal> or |
| | | <literal>Virtual Static uniqueMember</literal> property.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-virtual-attribute-prop --name "Virtual Static member" \ |
| | | > --set allow-retrieving-membership:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-virtual-attribute-prop --name "Virtual Static member" |
| | | --set allow-retrieving-membership:true -X -n</screen> |
| | | |
| | | <para>The following example creates a virtual static group, and reads the |
| | | group entry with all members.</para> |
| | |
| | | referential integrity plugin is disabled by default. To enable the plugin, |
| | | use the <command>dsconfig</command> command.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-plugin-prop --plugin-name "Referential Integrity" --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-plugin-prop --plugin-name "Referential Integrity" --set enabled:true -X -n</screen> |
| | | |
| | | <para>With the plugin enabled, you can see OpenDJ referential integrity |
| | | resolving group membership automatically.</para> |
| | |
| | | <step> |
| | | <para>Run the <command>make-ldif</command> command to generate your |
| | | LDIF file.</para> |
| | | <screen>$ make-ldif --randomSeed 0 -t /path/to/my.template \ |
| | | > -o generated.ldif |
| | | <screen>$ make-ldif --randomSeed 0 -t /path/to/my.template -o generated.ldif |
| | | Processed 1000 entries |
| | | Processed 2000 entries |
| | | ... |
| | |
| | | </step> |
| | | <step> |
| | | <para>If not, schedule a task to import the data while online.</para> |
| | | <screen>$ import-ldif -X -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=org -n userRoot -l /path/to/generated.ldif</screen> |
| | | <screen>$ import-ldif -X -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=org -n userRoot -l /path/to/generated.ldif</screen> |
| | | <para>Notice that the task is scheduled through communication over SSL on |
| | | the administration port, by default <literal>4444</literal>. You can |
| | | schedule the import task to start at a particular time using the |
| | |
| | | </step> |
| | | <step> |
| | | <para>If not, schedule a task to export the data while online.</para> |
| | | <screen>$ export-ldif -X -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=org -n userRoot -l /path/to/backup.ldif \ |
| | | --start 20111221230000</screen> |
| | | <screen>$ export-ldif -X -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=org -n userRoot -l /path/to/backup.ldif --start 20111221230000</screen> |
| | | <para>The <option>--start 20111221230000</option> option tells OpenDJ to |
| | | start the export at 11 PM on December 21, 2012, assuming the world has |
| | | not ended yet.</para> |
| | |
| | | |
| | | <para>The following example shows a search that specifies ranges.</para> |
| | | |
| | | <screen>$ ldapsearch -b dc=example,dc=com \ |
| | | > "(&(uidNumber>=1120)(roomNumber>=4500))" uid |
| | | <screen>$ ldapsearch -b dc=example,dc=com "(&(uidNumber>=1120)(roomNumber>=4500))" uid |
| | | dn: uid=charvey,ou=People,dc=example,dc=com |
| | | uid: charvey |
| | | |
| | |
| | | <para>The following example creates a new substring index for |
| | | <literal>description</literal>.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-local-db-index --backend-name userRoot --index-name description |
| | | > --set index-type:substring -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-local-db-index --backend-name userRoot --index-name description |
| | | --set index-type:substring -n</screen> |
| | | </example> |
| | | |
| | | <example> |
| | |
| | | <para>The following example configures and approximate index for |
| | | <literal>cn</literal> (common name).</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-local-db-index-prop --backend-name userRoot --index-name cn \ |
| | | > --set index-type:approximate -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-local-db-index-prop --backend-name userRoot --index-name cn |
| | | --set index-type:approximate -n</screen> |
| | | </example> |
| | | </section> |
| | | |
| | |
| | | <para>The following example rebuilds the <literal>cn</literal> index |
| | | immediately with the server online.</para> |
| | | |
| | | <screen>$ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=com -i cn -t 0 |
| | | <screen>$ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=com -i cn -t 0 |
| | | Rebuild Index task 20110607171639867 scheduled to start Jun 7, 2011 5:16:39 PM</screen> |
| | | </example> |
| | | </section> |
| | |
| | | <literal>objectClass</literal> index, and then rebuilds the index for the |
| | | configuration change to take effect.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-local-db-index-prop --backend-name userRoot --index-name objectClass \ |
| | | > --set index-entry-limit:5000 -n |
| | | $ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=com -i objectclass -t 0 |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-local-db-index-prop --backend-name userRoot --index-name objectClass |
| | | --set index-entry-limit:5000 -n |
| | | $ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=com -i objectclass -t 0 |
| | | Rebuild Index task 20110607160349596 scheduled to start Jun 7, 2011 4:03:49 PM</screen> |
| | | </example> |
| | | </section> |
| | |
| | | command returns the attributes associated with the <literal>person</literal> |
| | | object class.</para> |
| | | |
| | | <screen>$ ldapsearch -p 1389 -b ou=people,dc=example,dc=com \ |
| | | > "(&(uid=*jensen*)(l=Santa Clara))" @person |
| | | <screen>$ ldapsearch -p 1389 -b ou=people,dc=example,dc=com |
| | | "(&(uid=*jensen*)(l=Santa Clara))" @person |
| | | dn: uid=ajensen,ou=People,dc=example,dc=com |
| | | objectClass: person |
| | | objectClass: organizationalPerson |
| | |
| | | <para>In this example, Kirsten Vaughan checks whether the hashed password |
| | | value matches the stored value on <literal>authPassword</literal>.</para> |
| | | |
| | | <screen>$ ldapcompare -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery 'authPassword:MD5$dFHgpDxXUT8=$qlC4xMXvmVlusJLz9/WJ5Q==' \ |
| | | > uid=kvaughan,ou=people,dc=example,dc=com |
| | | <screen>$ ldapcompare -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery 'authPassword:MD5$dFHgpDxXUT8=$qlC4xMXvmVlusJLz9/WJ5Q==' |
| | | uid=kvaughan,ou=people,dc=example,dc=com |
| | | Comparing type authPassword with value |
| | | MD5$dFHgpDxXUT8=$qlC4xMXvmVlusJLz9/WJ5Q== in entry |
| | | uid=kvaughan,ou=people,dc=example,dc=com |
| | |
| | | telephoneNumber: +33 1 12 23 34 45 |
| | | sn: Velmont |
| | | |
| | | $ ldapmodify -a -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -f new-users.ldif |
| | | $ ldapmodify -a -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -f new-users.ldif |
| | | Processing ADD request for cn=Arsene Lupin,ou=Special Users,dc=example,dc=com |
| | | ADD operation successful for DN |
| | | cn=Arsene Lupin,ou=Special Users,dc=example,dc=com |
| | |
| | | add: jpegphoto |
| | | jpegphoto: /tmp/Samantha-Carter.jpg |
| | | |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -f scarter-mods.ldif |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -f scarter-mods.ldif |
| | | Processing MODIFY request for uid=scarter,ou=people,dc=example,dc=com |
| | | MODIFY operation successful for DN uid=scarter,ou=people,dc=example,dc=com</screen> |
| | | </example> |
| | |
| | | replace: description |
| | | description: Accounting Director |
| | | |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -f scarter-newdesc.ldif |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -f scarter-newdesc.ldif |
| | | Processing MODIFY request for uid=scarter,ou=people,dc=example,dc=com |
| | | MODIFY operation successful for DN uid=scarter,ou=people,dc=example,dc=com</screen> |
| | | </example> |
| | |
| | | changetype: modify |
| | | delete: jpegphoto |
| | | |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -f scarter-deljpeg.ldif |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -f scarter-deljpeg.ldif |
| | | Processing MODIFY request for uid=scarter,ou=people,dc=example,dc=com |
| | | MODIFY operation successful for DN uid=scarter,ou=people,dc=example,dc=com</screen> |
| | | </example> |
| | |
| | | replace: mail |
| | | mail: sjensen@example.com |
| | | |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -f /path/to/scarter-sjensen.ldif |
| | | $ ldapmodify -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -f /path/to/scarter-sjensen.ldif |
| | | Processing MODIFY DN request for uid=scarter,ou=people,dc=example,dc=com |
| | | MODIFY DN operation successful for DN uid=scarter,ou=people,dc=example,dc=com |
| | | Processing MODIFY request for uid=sjensen,ou=people,dc=example,dc=com |
| | |
| | | deleteoldrdn: 1 |
| | | newsuperior: dc=example,dc=com |
| | | |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -f move-customers.ldif |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password |
| | | -f move-customers.ldif |
| | | Processing MODIFY DN request for ou=Customers,dc=example,dc=com |
| | | MODIFY DN operation successful for DN ou=Customers,dc=example,dc=com |
| | | $ cat move-employees.pl |
| | |
| | | deleteoldrdn: 0\nnewsuperior: ou=People,dc=example,dc=com/; |
| | | print; |
| | | } |
| | | $ ldapsearch -p 1389 -b ou=Employees,dc=example,dc=com uid=* - | \ |
| | | > move-employees.pl > /tmp/move-employees.ldif |
| | | $ ldapsearch -p 1389 -b ou=Employees,dc=example,dc=com uid=* - | |
| | | move-employees.pl > /tmp/move-employees.ldif |
| | | $ head -n 6 /tmp/move-employees.ldif |
| | | dn: uid=abarnes,ou=Employees,dc=example,dc=com |
| | | changetype: moddn |
| | |
| | | deleteoldrdn: 0 |
| | | newsuperior: ou=People,dc=example,dc=com |
| | | |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -f /tmp/move-employees.ldif |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password |
| | | -f /tmp/move-employees.ldif |
| | | Processing MODIFY DN request for uid=abarnes,ou=Employees,dc=example,dc=com |
| | | MODIFY DN operation successful for DN uid=abarnes,ou=Employees,dc=example,dc=com |
| | | Processing MODIFY DN request for uid=abergin,ou=Employees,dc=example,dc=com |
| | |
| | | ... |
| | | Processing MODIFY DN request for uid=wlutz,ou=Employees,dc=example,dc=com |
| | | MODIFY DN operation successful for DN uid=wlutz,ou=Employees,dc=example,dc=com |
| | | $ ldapdelete -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > ou=Employees,dc=example,dc=com |
| | | $ ldapdelete -p 1389 -D "cn=Directory Manager" -w password |
| | | ou=Employees,dc=example,dc=com |
| | | Processing DELETE request for ou=Employees,dc=example,dc=com |
| | | DELETE operation successful for DN ou=Employees,dc=example,dc=com</screen> |
| | | </example> |
| | |
| | | <para>The following example uses the subtree delete option to remove |
| | | all Special Users from the directory.</para> |
| | | |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -x "ou=Special Users,dc=example,dc=com" |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password |
| | | -x "ou=Special Users,dc=example,dc=com" |
| | | Processing DELETE request for ou=Special Users,dc=example,dc=com |
| | | DELETE operation successful for DN ou=Special Users,dc=example,dc=com</screen> |
| | | </example> |
| | |
| | | password. The <option>-q</option> option means the same thing as |
| | | <option>--useStartTLS</option>.</para> |
| | | |
| | | <screen>$ ldappasswordmodify -q -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery -a "dn:uid=scarter,ou=people,dc=example,dc=com" -n ChangeMe |
| | | <screen>$ ldappasswordmodify -q -p 1389 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery -a "dn:uid=scarter,ou=people,dc=example,dc=com" -n ChangeMe |
| | | The LDAP password modify operation was successful</screen> |
| | | |
| | | <para>You could also accomplish password reset with the following command, |
| | | but <command>set-password-is-reset</command> is a hidden option, supported |
| | | only for testing.</para> |
| | | |
| | | <screen>$ manage-account -D "cn=Directory Manager" -w password \ |
| | | > set-password-is-reset -b uid=scarter,ou=people,dc=example,dc=com -O true |
| | | <screen>$ manage-account -D "cn=Directory Manager" -w password |
| | | set-password-is-reset -b uid=scarter,ou=people,dc=example,dc=com -O true |
| | | Password Is Reset: true</screen> |
| | | </example> |
| | | </section> |
| | |
| | | <step> |
| | | <para>Change the port number using the <command>dsconfig</command> |
| | | command.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDAP Connection Handler" \ |
| | | > --set listen-port:11389 -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDAP Connection Handler" |
| | | --set listen-port:11389 -n</screen> |
| | | <para>This example changes the port number to 11389 in the configuration.</para> |
| | | </step> |
| | | <step> |
| | |
| | | <step> |
| | | <para>Generate the server certificate using the Java |
| | | <command>keytool</command> command.</para> |
| | | <screen>$ keytool -genkey -alias server-cert -keyalg rsa \ |
| | | > -dname "CN=mark-laptop,O=Example Corp,C=FR" \ |
| | | > -keystore OpenDJ/config/keystore -storepass changeit -keypass changeit</screen> |
| | | <screen>$ keytool -genkey -alias server-cert -keyalg rsa |
| | | -dname "CN=mark-laptop,O=Example Corp,C=FR" |
| | | -keystore OpenDJ/config/keystore -storepass changeit -keypass changeit</screen> |
| | | <para>In this example, OpenDJ is running on a system with hostname |
| | | <literal>mark-laptop</literal>. The Java Key Store (JKS) is created in |
| | | the <filename>config</filename> directory where OpenDJ is installed, which |
| | |
| | | </step> |
| | | <step> |
| | | <para>Self-sign the server certificate.</para> |
| | | <screen>$ keytool -selfcert -alias server-cert -keystore \ |
| | | > OpenDJ/config/keystore -storepass changeit</screen> |
| | | <screen>$ keytool -selfcert -alias server-cert -keystore |
| | | OpenDJ/config/keystore -storepass changeit</screen> |
| | | </step> |
| | | <step> |
| | | <para>Configure the File Based Key Manager Provider for JKS to use the |
| | | filename and key store PIN that you set up with the |
| | | <command>keytool</command> command.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password -X \ |
| | | > set-key-manager-provider-prop --provider-name JKS \ |
| | | > --set enabled:true --set key-store-pin:changeit \ |
| | | > --remove key-store-pin-file:config/keystore.pin -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password -X |
| | | set-key-manager-provider-prop --provider-name JKS |
| | | --set enabled:true --set key-store-pin:changeit |
| | | --remove key-store-pin-file:config/keystore.pin -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Configure the File Based Trust Manager Provider for JKS to use the |
| | | key store and PIN as well.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password -X \ |
| | | > set-trust-manager-provider-prop --provider-name JKS \ |
| | | > --set enabled:true --set trust-store-file:config/keystore \ |
| | | > --set trust-store-pin:changeit -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password -X |
| | | set-trust-manager-provider-prop --provider-name JKS |
| | | --set enabled:true --set trust-store-file:config/keystore |
| | | --set trust-store-pin:changeit -n</screen> |
| | | <para>At this point, OpenDJ directory server can use your new self-signed |
| | | certificate, for example for StartTLS and LDAPS connection handlers.</para> |
| | | </step> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Activate StartTLS on the current LDAP port.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDAP Connection Handler" \ |
| | | > --set allow-start-tls:true -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDAP Connection Handler" |
| | | --set allow-start-tls:true -n</screen> |
| | | <para>The change takes effect. No need to restart the server.</para> |
| | | </step> |
| | | </procedure> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Configure the server to activate LDAPS access.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDAPS Connection Handler" \ |
| | | > --set listen-port:1636 --set enabled:true --set use-ssl:true -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDAPS Connection Handler" |
| | | --set listen-port:1636 --set enabled:true --set use-ssl:true -n</screen> |
| | | <para>This example changes the port number to 1636 in the configuration.</para> |
| | | </step> |
| | | </procedure> |
| | |
| | | <step> |
| | | <para>Change the port number using the <command>dsconfig</command> |
| | | command.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDAPS Connection Handler" \ |
| | | > --set listen-port:11636 -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDAPS Connection Handler" |
| | | --set listen-port:11636 -n</screen> |
| | | <para>This example changes the port number to 11636 in the configuration.</para> |
| | | </step> |
| | | <step> |
| | |
| | | |
| | | <step> |
| | | <para>Configure the server to activate JMX access.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "JMX Connection Handler" \ |
| | | > --set enabled:true -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "JMX Connection Handler" |
| | | --set enabled:true -n</screen> |
| | | <para>This example uses the default port number, 1689.</para> |
| | | </step> |
| | | <step> |
| | |
| | | |
| | | <step> |
| | | <para>Activate LDIF file access.</para> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDIF Connection Handler" \ |
| | | > --set enabled:true -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDIF Connection Handler" |
| | | --set enabled:true -n</screen> |
| | | <para>The change takes effect immediately.</para> |
| | | </step> |
| | | <step> |
| | |
| | | OpenDMK, provided separately due to licensing restrictions. Once you have |
| | | installed OpenDMK, you can set up a connection handler for SNMP.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-connection-handler --handler-name "SNMP Connection Handler" \ |
| | | > --type snmp --set enabled:true --set listen-port:11161 |
| | | > --set trap-port:11162 -X -n |
| | | > --set opendmk-jarfile:<replaceable>OpenDMK-install-dir</replaceable>/lib/jdmkrt.jar</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-connection-handler --handler-name "SNMP Connection Handler" |
| | | --type snmp --set enabled:true --set listen-port:11161 |
| | | --set trap-port:11162 -X -n |
| | | --set opendmk-jarfile:<replaceable>OpenDMK-install-dir</replaceable>/lib/jdmkrt.jar</screen> |
| | | </section> |
| | | |
| | | <section> |
| | |
| | | <command>dsconfig</command> command to configure the JMX connection |
| | | handler.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "JMX Connection Handler" \ |
| | | > --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "JMX Connection Handler" |
| | | --set enabled:true -X -n</screen> |
| | | |
| | | <para>By default, no users have privileges to access the JMX connection. The |
| | | following command adds JMX privileges for Directory Manager.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-root-dn-prop --add default-root-privilege-name:jmx-notify \ |
| | | > --add default-root-privilege-name:jmx-read \ |
| | | > --add default-root-privilege-name:jmx-write -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-root-dn-prop --add default-root-privilege-name:jmx-notify |
| | | --add default-root-privilege-name:jmx-read |
| | | --add default-root-privilege-name:jmx-write -X -n</screen> |
| | | |
| | | <para>You must also configure security to login remotely. Good luck.</para> |
| | | |
| | |
| | | administration port, and so can connect to both local and remote |
| | | servers.</para> |
| | | |
| | | <screen>$ manage-tasks -h opendj.example.com -p 4444 -D "cn=Directory Manager" \ |
| | | > -w password -X -n |
| | | <screen>$ manage-tasks -h opendj.example.com -p 4444 -D "cn=Directory Manager" |
| | | -w password -X -n |
| | | |
| | | ID Type Status |
| | | -------------------------------------------------------- |
| | |
| | | events. Yet alert notifications are not enabled by default. You can use |
| | | the <command>dsconfig</command> command to enable alert notifications.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-alert-handler-prop --handler-name "JMX Alert Handler" \ |
| | | > --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-alert-handler-prop --handler-name "JMX Alert Handler" |
| | | --set enabled:true -X -n</screen> |
| | | |
| | | <para>OpenDJ can also send mail over SMTP instead of JMX notifications. |
| | | Before you set up the SMTP-based alert handler, you must identify an SMTP |
| | | server to which OpenDJ sends messages.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set smtp-server:smtp.example.com -X -n |
| | | $ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-alert-handler --handler-name "SMTP Alert Handler" --type smtp \ |
| | | > --set enabled:true --set message-subject:\ |
| | | > "OpenDJ Alert, Type: %%alert-type%%, ID: %%alert-id%%" |
| | | > --set message-body:"%%alert-message%%" \ |
| | | > --set recipient-address:kvaughan@example.com \ |
| | | > --set sender-address:opendj@example.com -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set smtp-server:smtp.example.com -X -n |
| | | $ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-alert-handler --handler-name "SMTP Alert Handler" --type smtp |
| | | --set enabled:true |
| | | --set message-subject: "OpenDJ Alert, Type: %%alert-type%%, ID: %%alert-id%%" |
| | | --set message-body:"%%alert-message%%" |
| | | --set recipient-address:kvaughan@example.com |
| | | --set sender-address:opendj@example.com -X -n</screen> |
| | | </section> |
| | | </chapter> |
| | | |
| | |
| | | <step> |
| | | <para>Prevent the server from accepting updates from client |
| | | applications.</para> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set writability-mode:internal-only -X -n</screen> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set writability-mode:internal-only -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Disable replication for the server.</para> |
| | | <screen>$ dsreplication disable -a -p 5444 -h `hostname` -D "cn=Directory Manager" \ |
| | | > -w password -X -n |
| | | <screen>$ dsreplication disable -a -p 5444 -h `hostname` -D "cn=Directory Manager" |
| | | -w password -X -n |
| | | Establishing connections ..... Done. |
| | | Disabling replication on base DN dc=example,dc=com of server localhost:5444 |
| | | ..... Done. |
| | |
| | | </step> |
| | | <step> |
| | | <para>Enable and initialize replication.</para> |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 localhost --port1 4444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --replicationPort1 8989 \ |
| | | > --host2 remotehost --port2 4444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 8989 |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 localhost --port1 4444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --replicationPort1 8989 |
| | | --host2 remotehost --port2 4444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 8989 |
| | | |
| | | Establishing connections ..... Done. |
| | | Checking registration information ..... Done. |
| | |
| | | See /tmp/opends-replication-1476402020764482023.log for a detailed log of this |
| | | operation. |
| | | |
| | | $ dsreplication pre-external-initialization -I admin -w password -X -n -p 4444 \ |
| | | > -b dc=example,dc=com |
| | | $ dsreplication pre-external-initialization -I admin -w password -X -n -p 4444 |
| | | -b dc=example,dc=com |
| | | |
| | | Preparing base DN dc=example,dc=com to be initialized externally ..... Done. |
| | | |
| | |
| | | When the initialization is completed you must use the subcommand |
| | | 'post-external-initialization' for replication to work with the new base DN's |
| | | contents. |
| | | $ dsreplication post-external-initialization -I admin -w password -X -n \ |
| | | > -p 4444 -b dc=example,dc=com |
| | | $ dsreplication post-external-initialization -I admin -w password -X -n |
| | | -p 4444 -b dc=example,dc=com |
| | | |
| | | Updating replication information on base DN dc=example,dc=com ..... Done. |
| | | |
| | |
| | | </step> |
| | | <step> |
| | | <para>Accept updates from client applications.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set writability-mode:enabled -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set writability-mode:enabled -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Direct client applications to the server.</para> |
| | |
| | | <step> |
| | | <para>Remove the certificate to replace from the keystore and from the |
| | | truststore.</para> |
| | | <screen>$ keytool -delete -alias admin-cert -keystore admin-keystore \ |
| | | > -storepass `cat admin-keystore.pin` |
| | | $ keytool -delete -alias admin-cert -keystore admin-truststore \ |
| | | > -storepass `cat admin-keystore.pin`</screen> |
| | | <screen>$ keytool -delete -alias admin-cert -keystore admin-keystore |
| | | -storepass `cat admin-keystore.pin` |
| | | $ keytool -delete -alias admin-cert -keystore admin-truststore |
| | | -storepass `cat admin-keystore.pin`</screen> |
| | | </step> |
| | | <step> |
| | | <para>Generate the private key, storing it in the keystore.</para> |
| | | <screen>$ keytool -genkey -alias admin-cert -keyalg RSA \ |
| | | > -dname "CN=<replaceable>hostname</replaceable>, O=Administration Connector Self-Signed Certificate" \ |
| | | > -keystore admin-keystore -storepass `cat admin-keystore.pin` \ |
| | | > -keypass `cat admin-keystore.pin`</screen> |
| | | <screen>$ keytool -genkey -alias admin-cert -keyalg RSA |
| | | -dname "CN=<replaceable>hostname</replaceable>, O=Administration Connector Self-Signed Certificate" |
| | | -keystore admin-keystore -storepass `cat admin-keystore.pin` |
| | | -keypass `cat admin-keystore.pin`</screen> |
| | | <para>You might choose to make the key valid for two years with |
| | | <option>-validity 730</option>.</para> |
| | | </step> |
| | | <step> |
| | | <para>Self-sign what you generated.</para> |
| | | <screen>$ keytool -selfcert -alias admin-cert -keystore admin-keystore \ |
| | | > -storepass `cat admin-keystore.pin`</screen> |
| | | <screen>$ keytool -selfcert -alias admin-cert -keystore admin-keystore |
| | | -storepass `cat admin-keystore.pin`</screen> |
| | | </step> |
| | | <step> |
| | | <para>Export the certificate from the keystore.</para> |
| | | <screen>$ keytool -export -alias admin-cert -keystore admin-keystore \ |
| | | > -storepass `cat admin-keystore.pin` -file admin-cert.crt |
| | | <screen>$ keytool -export -alias admin-cert -keystore admin-keystore |
| | | -storepass `cat admin-keystore.pin` -file admin-cert.crt |
| | | Certificate stored in file <admin-cert.crt></screen> |
| | | </step> |
| | | <step> |
| | | <para>Import the certificate into the truststore.</para> |
| | | <screen>$ keytool -import -alias admin-cert -keystore admin-truststore \ |
| | | > -storepass `cat admin-keystore.pin` -file admin-cert.crt |
| | | <screen>$ keytool -import -alias admin-cert -keystore admin-truststore |
| | | -storepass `cat admin-keystore.pin` -file admin-cert.crt |
| | | Owner: CN=<replaceable>hostname</replaceable>, O=Administration Connector Self-Signed Certificate |
| | | Issuer: CN=<replaceable>hostname</replaceable>, O=Administration Connector Self-Signed Certificate |
| | | Serial number: 4e0321c6 |
| | |
| | | </procedure> |
| | | </section> |
| | | </chapter> |
| | | |
| | |
| | | <para>Prior to having the privileges, Kirsten gets messages about |
| | | insufficent access when trying to read the server configuration, or |
| | | reset a user password.</para> |
| | | <screen>$ ldapsearch -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" \ |
| | | > -w bribery -b cn=config "(objectclass=*)" |
| | | <screen>$ ldapsearch -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" |
| | | -w bribery -b cn=config "(objectclass=*)" |
| | | SEARCH operation failed |
| | | Result Code: 50 (Insufficient Access Rights) |
| | | Additional Information: You do not have sufficient privileges to perform |
| | | search operations in the Directory Server configuration |
| | | $ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" \ |
| | | > -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | $ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" |
| | | -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | The LDAP password modify operation failed with result code 50 |
| | | Error Message: You do not have sufficient privileges to perform password |
| | | reset operations</screen> |
| | |
| | | MODIFY operation successful for DN uid=kvaughan,ou=People,dc=example,dc=com</screen> |
| | | <para>At this point, Kirsten can perform the operations requiring |
| | | privileges.</para> |
| | | <screen>$ ldapsearch -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" \ |
| | | > -w bribery -b cn=config "(objectclass=*)" |
| | | <screen>$ ldapsearch -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" |
| | | -w bribery -b cn=config "(objectclass=*)" |
| | | dn: cn=config |
| | | ds-cfg-return-bind-error-messages: false |
| | | ds-cfg-default-password-policy: cn=Default Password Policy,cn=Password Policies, |
| | | cn=config |
| | | ... |
| | | $ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" \ |
| | | > -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | $ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" |
| | | -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | The LDAP password modify operation was successful</screen> |
| | | </step> |
| | | </procedure> |
| | |
| | | </step> |
| | | <step> |
| | | <para>Observe that the change takes effect immediately.</para> |
| | | <screen>$ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" \ |
| | | > -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | <screen>$ ldappasswordmodify -p 1389 -D "uid=kvaughan,ou=People,dc=example,dc=com" |
| | | -w bribery -a "dn:uid=scarter,ou=People,dc=example,dc=com" -n changeit |
| | | The LDAP password modify operation was successful</screen> |
| | | </step> |
| | | </procedure> |
| | |
| | | <para>In this example, Babs Jensen is the owner of a small group of people |
| | | who are willing to carpool.</para> |
| | | |
| | | <screen>$ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin \ |
| | | > -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" |
| | | <screen>$ ldapsearch -p 1389 -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin |
| | | -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" |
| | | dn: cn=Carpoolers,ou=Self Service,ou=Groups,dc=example,dc=com |
| | | objectClass: groupOfNames |
| | | objectClass: top |
| | |
| | | asking for the <literal>aclRights</literal> attribute, shows what rights |
| | | Babs has on the entry.</para> |
| | | |
| | | <screen>$ ldapsearch -J effectiverights -p 1389 \ |
| | | > -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin \ |
| | | > -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" aclRights |
| | | <screen>$ ldapsearch -J effectiverights -p 1389 |
| | | -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin |
| | | -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" aclRights |
| | | dn: cn=Carpoolers,ou=Self Service,ou=Groups,dc=example,dc=com |
| | | aclRights;entryLevel: add:0,delete:1,read:1,write:0,proxy:0 |
| | | </screen> |
| | |
| | | <para>Requesting the <literal>aclRightsInfo</literal> attribute results in |
| | | information about the ACIs applied to arrive at the results.</para> |
| | | |
| | | <screen>$ ldapsearch -J effectiverights -p 1389 \ |
| | | > -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin \ |
| | | > -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" aclRights \ |
| | | > aclRightsInfo |
| | | <screen>$ ldapsearch -J effectiverights -p 1389 |
| | | -D "uid=bjensen,ou=people,dc=example,dc=com" -w hifalutin |
| | | -b "ou=Self Service,ou=Groups,dc=example,dc=com" "cn=*" aclRights |
| | | aclRightsInfo |
| | | dn: cn=Carpoolers,ou=Self Service,ou=Groups,dc=example,dc=com |
| | | aclRightsInfo;logs;entryLevel;read: acl_summary(main): access allowed(read) on e |
| | | ntry/attr(cn=Carpoolers,ou=Self Service,ou=Groups,dc=example,dc=com, objectClas |
| | |
| | | policy settings using the <command>dsconfig</command> command as |
| | | follows.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > get-password-policy-prop --policy-name "Default Password Policy" --advanced |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | get-password-policy-prop --policy-name "Default Password Policy" --advanced |
| | | Property : Value(s) |
| | | ------------------------------------------:-------------------------- |
| | | account-status-notification-handler : - |
| | |
| | | value. Even the directory manager cannot see the plain text value of a user's |
| | | password.</para> |
| | | |
| | | <screen>$ ldapsearch -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=com uid=bjensen userpassword |
| | | <screen>$ ldapsearch -p 1389 -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=com uid=bjensen userpassword |
| | | dn: uid=bjensen,ou=People,dc=example,dc=com |
| | | userpassword: {SSHA}QWAtw8ch/9850HNFRRqLNMIQc1YhxCnOoGmk1g==</screen> |
| | | |
| | |
| | | words, and prevent password reuse.</para> |
| | | <step> |
| | | <para>Enable the appropriate password validator.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-password-validator-prop --validator-name Dictionary --set enabled:true \ |
| | | > -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-password-validator-prop --validator-name Dictionary --set enabled:true |
| | | -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Apply the changes to the default password policy.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-password-policy-prop --policy-name "Default Password Policy" \ |
| | | > --set max-password-age:90d --set min-password-age:4w \ |
| | | > --set password-history-count:7 --set password-validator:Dictionary -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-password-policy-prop --policy-name "Default Password Policy" |
| | | --set max-password-age:90d --set min-password-age:4w |
| | | --set password-history-count:7 --set password-validator:Dictionary -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Check your work.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > get-password-policy-prop --policy-name "Default Password Policy" |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | get-password-policy-prop --policy-name "Default Password Policy" |
| | | Property : Value(s) |
| | | ------------------------------------------:-------------------------- |
| | | account-status-notification-handler : - |
| | |
| | | yet used their credentials to bind.</para> |
| | | <step> |
| | | <para>Create the new password policy.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-password-policy --policy-name "New Account Password Policy" \ |
| | | > --set default-password-storage-scheme:"Salted SHA-1" \ |
| | | > --set force-change-on-add:true --set password-attribute:userPassword -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-password-policy --policy-name "New Account Password Policy" |
| | | --set default-password-storage-scheme:"Salted SHA-1" |
| | | --set force-change-on-add:true --set password-attribute:userPassword -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Check your work.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > get-password-policy-prop --policy-name "New Account Password Policy" |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | get-password-policy-prop --policy-name "New Account Password Policy" |
| | | Property : Value(s) |
| | | ------------------------------------------:------------- |
| | | account-status-notification-handler : - |
| | |
| | | </step> |
| | | <step> |
| | | <para>Check your work.</para> |
| | | <screen>$ ldapsearch -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=com uid=newuser pwdPolicySubentry |
| | | <screen>$ ldapsearch -p 1389 -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=com uid=newuser pwdPolicySubentry |
| | | dn: uid=newuser,ou=People,dc=example,dc=com |
| | | pwdPolicySubentry: cn=New Account Password Policy,cn=Password Policies,cn=config</screen> |
| | | </step> |
| | |
| | | <literal>ds-pwp-password-policy-dn</literal> attribute for group |
| | | members' entries.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-virtual-attribute --name "Dir Admin Password Policy" \ |
| | | > --type user-defined --set attribute-type:ds-pwp-password-policy-dn \ |
| | | > --set value:"cn=Root Password Policy,cn=Password Policies,cn=config" \ |
| | | > --set group-dn:"cn=Directory Administrators,ou=Groups,dc=example,dc=com" \ |
| | | > --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-virtual-attribute --name "Dir Admin Password Policy" |
| | | --type user-defined --set attribute-type:ds-pwp-password-policy-dn |
| | | --set value:"cn=Root Password Policy,cn=Password Policies,cn=config" |
| | | --set group-dn:"cn=Directory Administrators,ou=Groups,dc=example,dc=com" |
| | | --set enabled:true -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Check your work.</para> |
| | |
| | | |
| | | <step> |
| | | <para>Identify the SMTP server to which OpenDJ sends messages.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set smtp-server:smtp.example.com -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set smtp-server:smtp.example.com -X -n</screen> |
| | | </step> |
| | | |
| | | <step> |
| | | <para>Set up OpenDJ to be able to mail users about account status.</para> |
| | | <screen>dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-account-status-notification-handler-prop \ |
| | | > --handler-name "SMTP Handler" --set enabled:true \ |
| | | > --set email-address-attribute-type:mail -X -n</screen> |
| | | <screen>dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-account-status-notification-handler-prop |
| | | --handler-name "SMTP Handler" --set enabled:true |
| | | --set email-address-attribute-type:mail -X -n</screen> |
| | | <para>You can also configure the <literal>message-subject</literal> and |
| | | <literal>message-template-file</literal> properties. Try interactive |
| | | mode if you plan to do so.</para> |
| | |
| | | <step> |
| | | <para>Adjust applicable password policies to use the account status |
| | | notification handler you configured.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-password-policy-prop --policy-name "Default Password Policy" \ |
| | | > --set account-status-notification-handler:"SMTP Handler" -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-password-policy-prop --policy-name "Default Password Policy" |
| | | --set account-status-notification-handler:"SMTP Handler" -X -n</screen> |
| | | </step> |
| | | </procedure> |
| | | </section> |
| | |
| | | A referral entry ou=People,dc=example,dc=com indicates that the operation must |
| | | be processed at a different server |
| | | [ldap://opendj.example.com:2389/ou=People,dc=example,dc=com] |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password -J ManageDSAIT \ |
| | | > -f people.ldif |
| | | $ ldapmodify -p 1389 -D "cn=Directory Manager" -w password -J ManageDSAIT |
| | | -f people.ldif |
| | | Processing MODIFY request for ou=People,dc=example,dc=com |
| | | MODIFY operation successful for DN ou=People,dc=example,dc=com |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com ou=people |
| | |
| | | <para>You can start the replication process by using the |
| | | <command>dsreplication enable</command> command.</para> |
| | | |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --replicationPort1 8989 \ |
| | | > --host2 `hostname` --port2 5444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 9989 |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --replicationPort1 8989 |
| | | --host2 `hostname` --port2 5444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 9989 |
| | | |
| | | Establishing connections ..... Done. |
| | | Checking registration information ..... Done. |
| | |
| | | <para>Start replication with the <command>dsreplication |
| | | initialize-all</command> command.</para> |
| | | |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > -h `hostname` -p 4444 |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com |
| | | -h `hostname` -p 4444 |
| | | |
| | | Initializing base DN dc=example,dc=com with the contents from localhost:4444: |
| | | 160 entries processed (100 % complete). |
| | |
| | | <step> |
| | | <para>Start replication with the <command>dsreplication |
| | | initialize-all</command> command.</para> |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > ;-h `hostname` -p 4444 |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com |
| | | ;-h `hostname` -p 4444 |
| | | Initializing base DN dc=example,dc=com with the contents from localhost:4444: |
| | | 161 entries processed (100 % complete). |
| | | Base DN initialized successfully. |
| | |
| | | <step> |
| | | <para>Enable replication on the new replica.</para> |
| | | <screen> |
| | | $ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --replicationPort1 8989 \ |
| | | > --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 10989 |
| | | $ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --replicationPort1 8989 |
| | | --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 10989 |
| | | |
| | | Establishing connections ..... Done. |
| | | Checking registration information ..... Done. |
| | |
| | | </step> |
| | | <step> |
| | | <para>Prepare the new replica for initialization.</para> |
| | | <screen>$ dsreplication pre-external-initialization -I admin -w password -X -n -p 6444 \ |
| | | > -b dc=example,dc=com |
| | | <screen>$ dsreplication pre-external-initialization -I admin -w password -X -n -p 6444 |
| | | -b dc=example,dc=com |
| | | |
| | | Preparing base DN dc=example,dc=com to be initialized externally ..... Done. |
| | | |
| | |
| | | </step> |
| | | <step> |
| | | <para>Initialize replication on the new replica.</para> |
| | | <screen>$ dsreplication post-external-initialization -I admin -w password -X -n \ |
| | | > -p 6444 -b dc=example,dc=com |
| | | <screen>$ dsreplication post-external-initialization -I admin -w password -X -n |
| | | -p 6444 -b dc=example,dc=com |
| | | |
| | | Updating replication information on base DN dc=example,dc=com ..... Done. |
| | | |
| | |
| | | <para>Get the replication server property that identifies one of the |
| | | replication service host:port combinations that you need to restart |
| | | replication.</para> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > get-replication-server-prop --provider-name "Multimaster Synchronization" \ |
| | | > --property replication-server -X |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | get-replication-server-prop --provider-name "Multimaster Synchronization" |
| | | --property replication-server -X |
| | | Property : Value(s) |
| | | -------------------:----------------------------------------------------------- |
| | | replication-server : localhost:8989, |
| | |
| | | <step> |
| | | <para>Reset the replication server property to the default (no |
| | | replication server) to pause replication.</para> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-server-prop --provider-name "Multimaster Synchronization" \ |
| | | > --reset replication-server -X -n</screen> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-server-prop --provider-name "Multimaster Synchronization" |
| | | --reset replication-server -X -n</screen> |
| | | <para>Do not modify the replica for which replication is paused.</para> |
| | | </step> |
| | | <step performance="optional"> |
| | | <para>When you are ready to resume replication, set the replication server |
| | | property to the host:port combination of an active replication server.</para> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-server-prop --provider-name "Multimaster Synchronization" \ |
| | | > --set replication-server:localhost:8989 -X -n</screen> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-server-prop --provider-name "Multimaster Synchronization" |
| | | --set replication-server:localhost:8989 -X -n</screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | |
| | | <step> |
| | | <para>Stop replication using the <command>dsreplication disable</command> |
| | | command.</para> |
| | | <screen>$ dsreplication disable -a -p 5444 -h `hostname` -D "cn=Directory Manager" \ |
| | | > -w password -X -n |
| | | <screen>$ dsreplication disable -a -p 5444 -h `hostname` -D "cn=Directory Manager" |
| | | -w password -X -n |
| | | Establishing connections ..... Done. |
| | | Disabling replication on base DN cn=admin data of server localhost:5444 |
| | | ..... Done. |
| | |
| | | <para>Enable replication with the appropriate |
| | | <option>--noReplicationServer</option> and |
| | | <option>--onlyReplicationServer</option> options.</para> |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --noReplicationServer1 \ |
| | | > --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 8989 --onlyReplicationServer2 |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --noReplicationServer1 |
| | | --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 8989 --onlyReplicationServer2 |
| | | Establishing connections ..... Done. |
| | | Only one replication server will be defined for the following base DN's: |
| | | dc=example,dc=com |
| | |
| | | /var/.../opends-replication-1720959352638609971.log |
| | | for a detailed log of this operation. |
| | | |
| | | $ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 `hostname` --port1 5444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --noReplicationServer1 \ |
| | | > --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 8989 --onlyReplicationServer2 |
| | | $ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 `hostname` --port1 5444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --noReplicationServer1 |
| | | --host2 `hostname` --port2 6444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 8989 --onlyReplicationServer2 |
| | | |
| | | Establishing connections ..... Done. |
| | | Only one replication server will be defined for the following base DN's: |
| | |
| | | </step> |
| | | <step> |
| | | <para>Initialize replication from one of the directory servers.</para> |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > -h `hostname` -p 4444 |
| | | <screen>$ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com |
| | | -h `hostname` -p 4444 |
| | | |
| | | Initializing base DN dc=example,dc=com with the contents from localhost:4444: |
| | | 160 entries processed (100 % complete). |
| | |
| | | <step> |
| | | <para>Set the group ID for each group by replication domain on the |
| | | directory servers.</para> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "MultimasterSynchronization" \ |
| | | > --domain-name "dc=example,dc=com" --set group-id:1 -X -n |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "MultimasterSynchronization" |
| | | --domain-name "dc=example,dc=com" --set group-id:1 -X -n |
| | | |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | > --domain-name "dc=example,dc=com" --set group-id:2 -X -n</screen> |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" --set group-id:2 -X -n</screen> |
| | | </step> |
| | | <step> |
| | | <para>Set the group ID for each group on the replication servers.</para> |
| | | <screen>$ dsconfig -p 6444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-server-prop --provider-name "Multimaster Synchronization" \ |
| | | > --set group-id:1 -X -n |
| | | $ dsconfig -p 7444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-server-prop --provider-name "Multimaster Synchronization" \ |
| | | > --set group-id:2 -X -n</screen> |
| | | <screen>$ dsconfig -p 6444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-server-prop --provider-name "Multimaster Synchronization" |
| | | --set group-id:1 -X -n |
| | | $ dsconfig -p 7444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-server-prop --provider-name "Multimaster Synchronization" |
| | | --set group-id:2 -X -n</screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | |
| | | from the replication protocol, and refuse updates from client |
| | | applications.</para> |
| | | |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set writability-mode:internal-only -X -n</screen> |
| | | <screen>$ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set writability-mode:internal-only -X -n</screen> |
| | | </section> |
| | | |
| | | <section> |
| | |
| | | <para>For each directory server, set safe data mode for the replication |
| | | domain, and also set the safe data level.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | > --domain-name "dc=example,dc=com" \ |
| | | > --set assured-type:safe-data --set assured-sd-level:1 -X -n |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" |
| | | --set assured-type:safe-data --set assured-sd-level:1 -X -n |
| | | |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | > --domain-name "dc=example,dc=com" \ |
| | | > --set assured-type:safe-data --set assured-sd-level:1 -X -n</screen> |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" |
| | | --set assured-type:safe-data --set assured-sd-level:1 -X -n</screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | |
| | | <para>For each directory server, set safe read mode for the replication |
| | | domain.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | > --domain-name "dc=example,dc=com" --set assured-type:safe-read -X -n |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" --set assured-type:safe-read -X -n |
| | | |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | > --domain-name "dc=example,dc=com" --set assured-type:safe-read -X -n</screen> |
| | | $ dsconfig -p 5444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" --set assured-type:safe-read -X -n</screen> |
| | | </step> |
| | | </procedure> |
| | | |
| | |
| | | fractional replica to include only some <literal>inetOrgPerson</literal> |
| | | attributes.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | --domain-name "dc=example,dc=com" -X -n --set \ |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" |
| | | --domain-name "dc=example,dc=com" -X -n --set |
| | | fractional-include:inetorgperson:cn,givenname,mail,mobile,sn,telephonenumber</screen> |
| | | |
| | | <para>As another example, you might exclude a custom attribute called |
| | | <literal>sessionToken</literal> from being replicated.</para> |
| | | |
| | | <screen>dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | <screen>dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-replication-domain-prop --provider-name "Multimaster Synchronization" \ |
| | | --domain-name "dc=example,dc=com" --set fractional-exclude:*:sessionToken -X -n</screen> |
| | | |
| | | <para>This last example only works if you first define a sessionToken |
| | |
| | | <para>Notice the value of the <literal>changeLogCookie</literal> attribute |
| | | for the last of the two changes.</para> |
| | | |
| | | <screen>$ ldapsearch -b cn=changelog -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -J "1.3.6.1.4.1.26027.1.5.4:false" "(objectclass=*)" \* + |
| | | <screen>$ ldapsearch -b cn=changelog -p 1389 -D "cn=Directory Manager" -w password |
| | | -J "1.3.6.1.4.1.26027.1.5.4:false" "(objectclass=*)" \* + |
| | | dn: cn=changelog |
| | | cn: changelog |
| | | objectClass: top |
| | |
| | | |
| | | <para>In this example, a description was added to Babs Jensen's entry.</para> |
| | | |
| | | <screen>$ ldapsearch -b cn=changelog -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > -J "1.3.6.1.4.1.26027.1.5.4:false:\ |
| | | > dc=example,dc=com:0000013087cbc34a12d100000002;" "(objectclass=*)" \* + |
| | | <screen>$ ldapsearch -b cn=changelog -p 1389 -D "cn=Directory Manager" -w password |
| | | -J "1.3.6.1.4.1.26027.1.5.4:false: |
| | | dc=example,dc=com:0000013087cbc34a12d100000002;" "(objectclass=*)" \* + |
| | | dn: cn=changelog |
| | | cn: changelog |
| | | objectClass: top |
| | |
| | | global configuration property, <literal>idle-time-limit</literal>. By |
| | | default, no idle time limit is set.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set idle-time-limit:24h -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set idle-time-limit:24h -X -n</screen> |
| | | |
| | | <para>The example shown sets the idle time limit to 24 hours.</para> |
| | | </section> |
| | |
| | | add groups with large numbers of members, those add requests can go beyond |
| | | the 5 MB limit.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-connection-handler-prop --handler-name "LDAP Connection Handler" \ |
| | | > --set max-request-size:20mb -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-connection-handler-prop --handler-name "LDAP Connection Handler" |
| | | --set max-request-size:20mb -X -n</screen> |
| | | |
| | | <para>The example shown sets the maximum request size on the LDAP connection |
| | | handler to 20 MB.</para> |
| | |
| | | classes defined per entry, you can relax schema checking to warn rather |
| | | than reject entries having this issue.</para> |
| | | |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop |
| | | --set single-structural-objectclass-behavior:warn -X -n</screen> |
| | | |
| | | <para>You can allow attribute values that do not respect the defined syntax |
| | | with the <command>dsconfig</command> command as well.</para> |
| | | |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop |
| | | --set invalid-attribute-syntax-behavior:warn -X -n</screen> |
| | | |
| | | <para>You can even turn off schema checking altogether, although turning |
| | |
| | | you simply want to turn off schema checking temporarily to speed up import |
| | | processing.</para> |
| | | |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop --set check-schema:false -X -n</screen> |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop --set check-schema:false -X -n</screen> |
| | | </section> |
| | | |
| | | <section> |
| | |
| | | warn when entries have more than one structural object class instead of |
| | | reject such entries being added, set the property as follows.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-global-configuration-prop |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-global-configuration-prop |
| | | > --set single-structural-objectclass-behavior:warn -X -n</screen> |
| | | |
| | | <para>By default, OpenDJ also checks syntax for a number of attribute types. |
| | |
| | | software. For example, the Java environment is distributed with a key store |
| | | holding many CA certificates.</para> |
| | | |
| | | <screen>$ keytool -list -keystore $JAVA_HOME/lib/security/cacerts -storepass changeit \ |
| | | > | wc -l |
| | | <screen>$ keytool -list -keystore $JAVA_HOME/lib/security/cacerts -storepass changeit |
| | | | wc -l |
| | | 334</screen> |
| | | |
| | | <para>The self-signed server certificates that can be configured during |
| | |
| | | settings, so to force OpenDJ to compress the entries, import the data |
| | | from LDIF.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-backend-prop --backend-name userRoot --set entries-compressed:true -X -n |
| | | $ import-ldif -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -l /path/to/Example.ldif -n userRoot -b dc=example,dc=com -t 0 |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-backend-prop --backend-name userRoot --set entries-compressed:true -X -n |
| | | $ import-ldif -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -l /path/to/Example.ldif -n userRoot -b dc=example,dc=com -t 0 |
| | | Import task 20110627101758486 scheduled to start Jun 27, 2011 10:17:58 AM CEST</screen> |
| | | </section> |
| | | |
| | |
| | | JVM. Test database pre-load on startup by setting the |
| | | <literal>preload-time-limit</literal> for the backend.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-backend-prop --backend-name userRoot --set preload-time-limit:30m -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-backend-prop --backend-name userRoot --set preload-time-limit:30m -X -n</screen> |
| | | |
| | | <para>Database pre-load is single-threaded, and loads each database one |
| | | at a time.</para> |
| | |
| | | you have a few large static groups and applications that regularly check |
| | | group membership, you could cache your group entries.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > create-entry-cache --cache-name "Large Group Entry Cache" --type fifo \ |
| | | > --set cache-level:1 --set include-filter:"(ou=Large Static Groups)" \ |
| | | > --set max-entries:10 --set enabled:true -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | create-entry-cache --cache-name "Large Group Entry Cache" --type fifo |
| | | --set cache-level:1 --set include-filter:"(ou=Large Static Groups)" |
| | | --set max-entries:10 --set enabled:true -X -n</screen> |
| | | </section> |
| | | |
| | | <section> |
| | |
| | | bottleneck, as each client request results in multiple access log |
| | | messages. Consider disabling the access log in such cases.</para> |
| | | |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > set-log-publisher-prop --publisher-name "File-Based Access Logger" \ |
| | | > --set enabled:false -X -n</screen> |
| | | <screen>$ dsconfig -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | set-log-publisher-prop --publisher-name "File-Based Access Logger" |
| | | --set enabled:false -X -n</screen> |
| | | </section> |
| | | </section> |
| | | </chapter> |
| | |
| | | attribute is defined by the server configuration, which is not |
| | | replicated.</para> |
| | | |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password \ |
| | | > create-virtual-attribute --name "Served By Description" \ |
| | | > --type user-defined --set enabled:true \ |
| | | > --set attribute-type:description --set base-dn:dc=example,dc=com \ |
| | | > --set value:"Served by OpenDJ.Example.com" -X -n |
| | | <screen>$ dsconfig -h `hostname` -p 4444 -D "cn=Directory Manager" -w password |
| | | create-virtual-attribute --name "Served By Description" |
| | | --type user-defined --set enabled:true |
| | | --set attribute-type:description --set base-dn:dc=example,dc=com |
| | | --set value:"Served by OpenDJ.Example.com" -X -n |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com uid=bjensen description |
| | | dn: uid=bjensen,ou=People,dc=example,dc=com |
| | | description: Served by OpenDJ.Example.com |
| | |
| | | <para>With the collective attributes defined, you can see the results on |
| | | user entries.</para> |
| | | |
| | | <screen>$ ldapsearch -p 1389 -b dc=example,dc=com uid=bjensen \ |
| | | > classOfService mailQuota diskQuota |
| | | <screen>$ ldapsearch -p 1389 -b dc=example,dc=com uid=bjensen |
| | | classOfService mailQuota diskQuota |
| | | dn: uid=bjensen,ou=People,dc=example,dc=com |
| | | mailQuota: 1 GB |
| | | classOfService: bronze |
| | | diskQuota: 10 GB |
| | | |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com uid=kvaughan \ |
| | | > classOfService mailQuota diskQuota |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com uid=kvaughan |
| | | classOfService mailQuota diskQuota |
| | | dn: uid=kvaughan,ou=People,dc=example,dc=com |
| | | mailQuota: 5 GB |
| | | classOfService: silver |
| | | diskQuota: 50 GB |
| | | |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com uid=scarter \ |
| | | > classOfService mailQuota diskQuota |
| | | $ ldapsearch -p 1389 -b dc=example,dc=com uid=scarter |
| | | classOfService mailQuota diskQuota |
| | | dn: uid=scarter,ou=People,dc=example,dc=com |
| | | mailQuota: 10 GB |
| | | classOfService: gold |
| | |
| | | |
| | | <preface> |
| | | <title>About OpenDJ</title> |
| | | |
| | | <!-- |
| | | <para>Test link to <citetitle xlink:role="http://docbook.org/xlink/role/olink" |
| | | xlink:href="admin-guide#admin-guide">Admin Guide</citetitle>.</para> |
| | | --> |
| | | <para>OpenDJ is an LDAPv3 compliant directory service, developed for |
| | | the Java platform, providing a high performance, highly available, |
| | | and secure store for the identities managed by your organization. Its |
| | |
| | | <title>Examples</title> |
| | | <para>The following example demonstrates measuring simple bind |
| | | performance.</para> |
| | | <screen>$ authrate -p 1389 -g "rand(names.txt)" \ |
| | | > -D "uid=%s,ou=people,dc=example,dc=com" -w password -c 10 -f |
| | | <screen>$ authrate -p 1389 -g "rand(names.txt)" |
| | | -D "uid=%s,ou=people,dc=example,dc=com" -w password -c 10 -f |
| | | ----------------------------------------------------------------- |
| | | Throughput Response Time |
| | | (ops/second) (milliseconds) |
| | |
| | | <refsect1> |
| | | <title>Examples</title> |
| | | <para>The following example backs up all user data on the server.</para> |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password \ |
| | | > -a -d /path/to/OpenDJ/bak -t 0 |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password |
| | | -a -d /path/to/OpenDJ/bak -t 0 |
| | | Backup task 20110613143801866 scheduled to start Jun 13, 2011 2:38:01 PM CEST</screen> |
| | | |
| | | <para>The following example schedules back up of all user data every night at |
| | | 2 AM, and notifies diradmin@example.com when finished, or on error.</para> |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password -a \ |
| | | > -d /path/to/OpenDJ/bak --recurringTask "00 02 * * *" \ |
| | | > --completionNotify diradmin@example.com --errorNotify diradmin@example.com |
| | | <screen>$ backup -p 5444 -D "cn=Directory Manager" -w password -a |
| | | -d /path/to/OpenDJ/bak --recurringTask "00 02 * * *" |
| | | --completionNotify diradmin@example.com --errorNotify diradmin@example.com |
| | | Recurring Backup task BackupTask-988d6adf-4d65-44bf-8546-6ea74a2480b0 |
| | | scheduled successfully</screen> |
| | | </refsect1> |
| | |
| | | <title>Examples</title> |
| | | <para>The following example displays debugging information about the |
| | | equality index for <literal>sudoUser</literal>.</para> |
| | | <screen>$ dbtest dump-database-container -n userRoot -b dc=example,dc=com \ |
| | | > -d sudoUser.equality |
| | | <screen>$ dbtest dump-database-container -n userRoot -b dc=example,dc=com |
| | | -d sudoUser.equality |
| | | Indexed Value (6 bytes): %admin |
| | | Entry ID List (8 bytes): 165 |
| | | |
| | |
| | | <title>Examples</title> |
| | | <para>This example lists server properties.</para> |
| | | <screen> |
| | | $ dsframework -p 4444 -h `hostname` -D "cn=Directory Manager" -w password -X \ |
| | | > list-server-properties |
| | | $ dsframework -p 4444 -h `hostname` -D "cn=Directory Manager" -w password -X |
| | | list-server-properties |
| | | Option Types: |
| | | |
| | | r -- Property value(s) are readable |
| | |
| | | for a new replica whose admin port is 5444 from an existing replica |
| | | whose admin port is 4444.</para> |
| | | |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" \ |
| | | > --bindPassword1 password --replicationPort1 8989 \ |
| | | > --host2 `hostname` --port2 5444 --bindDN2 "cn=Directory Manager" \ |
| | | > --bindPassword2 password --replicationPort2 9989 |
| | | <screen>$ dsreplication enable -I admin -w password -X -n -b dc=example,dc=com |
| | | --host1 `hostname` --port1 4444 --bindDN1 "cn=Directory Manager" |
| | | --bindPassword1 password --replicationPort1 8989 |
| | | --host2 `hostname` --port2 5444 --bindDN2 "cn=Directory Manager" |
| | | --bindPassword2 password --replicationPort2 9989 |
| | | |
| | | Establishing connections ..... Done. |
| | | Checking registration information ..... Done. |
| | |
| | | See |
| | | /var/.../opends-replication-7958637258600693490.log |
| | | for a detailed log of this operation. |
| | | $ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com \ |
| | | > -h `hostname` -p 4444 |
| | | $ dsreplication initialize-all -I admin -w password -X -n -b dc=example,dc=com |
| | | -h `hostname` -p 4444 |
| | | |
| | | Initializing base DN dc=example,dc=com with the contents from localhost:4444: |
| | | 160 entries processed (100 % complete). |
| | |
| | | <refsect1> |
| | | <title>Examples</title> |
| | | <para>The following command deletes a user entry from the directory.</para> |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password \ |
| | | > uid=bjensen,ou=people,dc=example,dc=com |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password |
| | | uid=bjensen,ou=people,dc=example,dc=com |
| | | Processing DELETE request for uid=bjensen,ou=people,dc=example,dc=com |
| | | DELETE operation successful for DN uid=bjensen,ou=people,dc=example,dc=com</screen> |
| | | <para>The following command deletes the ou=Groups entry and all entries |
| | | underneath ou=Groups.</para> |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password -x \ |
| | | > Processing DELETE request for ou=groups,dc=example,dc=com |
| | | <screen>$ ldapdelete -p 1389 -D "cn=Directory Manager" -w password -x |
| | | ou=groups,dc=example,dc=com |
| | | Processing DELETE request for ou=groups,dc=example,dc=com |
| | | DELETE operation successful for DN ou=groups,dc=example,dc=com</screen> |
| | | </refsect1> |
| | | </refentry> |
| | |
| | | ou: People |
| | | gidNumber: 10636 |
| | | |
| | | $ ldapmodify -p 1389 -a -f newuser.ldif \ |
| | | > -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | $ ldapmodify -p 1389 -a -f newuser.ldif |
| | | -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | Processing ADD request for uid=newuser,ou=People,dc=example,dc=com |
| | | ADD operation successful for DN uid=newuser,ou=People,dc=example,dc=com</screen> |
| | | |
| | |
| | | add: description |
| | | description: A new user's entry |
| | | |
| | | $ ldapmodify -p 1389 -f newdesc.ldif \ |
| | | > -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | $ ldapmodify -p 1389 -f newdesc.ldif |
| | | -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | Processing MODIFY request for uid=newuser,ou=People,dc=example,dc=com |
| | | MODIFY operation successful for DN uid=newuser,ou=People,dc=example,dc=com</screen> |
| | | |
| | |
| | | replace: description |
| | | description: Another description |
| | | |
| | | $ ldapmodify -p 1389 -f moddesc.ldif \ |
| | | > -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | $ ldapmodify -p 1389 -f moddesc.ldif |
| | | -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | Processing MODIFY request for uid=newuser,ou=People,dc=example,dc=com |
| | | MODIFY operation successful for DN uid=newuser,ou=People,dc=example,dc=com</screen> |
| | | |
| | |
| | | dn: uid=newuser,ou=People,dc=example,dc=com |
| | | changetype: delete |
| | | |
| | | $ ldapmodify -p 1389 -f deluser.ldif \ |
| | | > -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | $ ldapmodify -p 1389 -f deluser.ldif |
| | | -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | Processing DELETE request for uid=newuser,ou=People,dc=example,dc=com |
| | | DELETE operation successful for DN uid=newuser,ou=People,dc=example,dc=com</screen> |
| | | </refsect1> |
| | |
| | | <screen>$ cat /tmp/currpwd.txt /tmp/newpwd.txt |
| | | bribery |
| | | secret12 |
| | | $ ldappasswordmodify -p 1389 -C /tmp/currpwd.txt -F /tmp/newpwd.txt \ |
| | | > -a "dn:uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | $ ldappasswordmodify -p 1389 -C /tmp/currpwd.txt -F /tmp/newpwd.txt |
| | | -a "dn:uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -D uid=kvaughan,ou=people,dc=example,dc=com -w bribery |
| | | The LDAP password modify operation was successful</screen> |
| | | </refsect1> |
| | | </refentry> |
| | |
| | | version 3.0;acl "Admins can run amok"; allow(all) groupdn = |
| | | "ldap:///cn=Directory Administrators,ou=Groups,dc=example,dc=com";)</literallayout> |
| | | <para>The following command locks a user account.</para> |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery set-account-is-disabled -O true \ |
| | | > -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery set-account-is-disabled -O true |
| | | -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | Account Is Disabled: true</screen> |
| | | <para>The following command unlocks a user account.</para> |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" \ |
| | | > -w bribery clear-account-is-disabled \ |
| | | > -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | <screen>$ manage-account -p 4444 -D "uid=kvaughan,ou=people,dc=example,dc=com" |
| | | -w bribery clear-account-is-disabled |
| | | -b uid=bjensen,ou=people,dc=example,dc=com -X |
| | | Account Is Disabled: false</screen> |
| | | </refsect1> |
| | | </refentry> |
| | |
| | | using the modrate command to write random 16-character description values |
| | | to all entries in a sample file.</para> |
| | | <screen>$ grep ^uid: /path/to/Example.ldif | sed -e "s/uid: //" > names.txt |
| | | $ modrate -p 1389 -D cn=directory\ manager -w secret12 \ |
| | | > -b "uid=%s,ou=people,dc=example,dc=com" -g "rand(names.txt)" \ |
| | | >"description:%s" -g "randStr(16)" -A -F -c 4 -t 4 |
| | | $ modrate -p 1389 -D cn=directory\ manager -w secret12 |
| | | -b "uid=%s,ou=people,dc=example,dc=com" -g "rand(names.txt)" |
| | | "description:%s" -g "randStr(16)" -A -F -c 4 -t 4 |
| | | ----------------------------------------------------------------- |
| | | Throughput Response Time |
| | | (ops/second) (milliseconds) |
| | |
| | | <para>The following example schedules a task to start immediately that |
| | | rebuilds the <literal>cn</literal> (common name) index.</para> |
| | | |
| | | <screen>$ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password \ |
| | | > -b dc=example,dc=com -i cn -t 0 |
| | | <screen>$ rebuild-index -p 4444 -h `hostname` -D "cn=Directory Manager" -w password |
| | | -b dc=example,dc=com -i cn -t 0 |
| | | Rebuild Index task 20110607160349596 scheduled to start Jun 7, 2011 4:03:49 PM</screen> |
| | | </refsect1> |
| | | </refentry> |
| | |
| | | <title>Examples</title> |
| | | <para>The following example schedules a restore as a task to begin |
| | | immediately.</para> |
| | | <screen>$ restore -p 5444 -D "cn=Directory Manager" -w password \ |
| | | > -d /path/to/OpenDJ/bak -I 20110613080032 -t 0 |
| | | <screen>$ restore -p 5444 -D "cn=Directory Manager" -w password |
| | | -d /path/to/OpenDJ/bak -I 20110613080032 -t 0 |
| | | Restore task 20110613155052932 scheduled to start Jun 13, 2011 3:50:52 PM CEST</screen> |
| | | </refsect1> |
| | | </refentry> |
| | |
| | | <title>Examples</title> |
| | | <para>The following example demonstrates measuring search performance.</para> |
| | | <screen>$ grep ^uid: /path/to/Example.ldif | sed -e "s/uid: //" > names.txt |
| | | $ searchrate -p 1389 -b dc=example,dc=com \ |
| | | > -g "rand(names.txt)" "(uid=%s)" -A -F -c 4 -t 4 |
| | | $ searchrate -p 1389 -b dc=example,dc=com |
| | | -g "rand(names.txt)" "(uid=%s)" -A -F -c 4 -t 4 |
| | | ------------------------------------------------------------------------------- |
| | | Throughput Response Time |
| | | (ops/second) (milliseconds) |
| | |
| | | <title>Examples</title> |
| | | <para>The following command installs OpenDJ directory server, enabling |
| | | StartTLS and importing 100 example entries without interaction.</para> |
| | | <screen>$ ./OpenDJ/setup --cli -b dc=example,dc=com -d 100 -D "cn=Directory Manager" \ |
| | | > -w password -h `hostname` -p 1389 \ |
| | | > --generateSelfSignedCertificate --enableStartTLS -n |
| | | <screen>$ ./OpenDJ/setup --cli -b dc=example,dc=com -d 100 -D "cn=Directory Manager" |
| | | -w password -h `hostname` -p 1389 |
| | | --generateSelfSignedCertificate --enableStartTLS -n |
| | | |
| | | OpenDJ <?eval ${project.version}?> |
| | | Please wait while the setup program initializes... |