15.12. Configuring Changelog Encryption

To increase security, Directory Server supports encrypting the changelog. This section explains how to enable this feature.

Prerequisites

The server must have a certificate and key stored in the network security services (NSS) database. Therefor, enable TLS encryption on the server as described in Section 9.4.1, “Enabling TLS in Directory Server”.

Procedure

To enable changelog encryption:
  1. Except for the server on which you want to enable changelog encryption, stop all instances in the replication topology by entering the following command:
    # dsctl instance_name stop
  2. On the server where you want to enable changelog encryption:
    1. Export the changelog, for example, to the /tmp/changelog.ldif file:
      # dsconf -D "cn=Directory Manager" ldap://server.example.com replication dump-changelog -o /tmp/changelog.ldif
    2. Stop the instance:
      # dsctl instance_name stop
    3. Add the following setting to the dn: cn=changelog5,cn=config entry in the /etc/dirsrv/slapd-instance_name/dse.ldif file:
      nsslapd-encryptionalgorithm: AES
    4. Start the instance:
      # dsctl instance_name start
    5. Import the changelog from the /tmp/changelog.ldif file:
      # dsconf -D "cn=Directory Manager" ldap://server.example.com replication restore-changelog from-ldif /tmp/changelog.ldif
  3. Start all instances on the other servers in the replication topology using the following command:
    # dsctl instance_name start

Verification

To verify that the changelog is encrypted, run the following steps on the server with the encrypted changelog:
  1. Make a change in the LDAP directory, such as updating an entry.
  2. Stop the instance:
    # systemctl stop dirsrv@instance_name
  3. Enter the following command to display parts of the changelog:
    # dbscan -f /var/lib/dirsrv/slapd-instance_name/changelogdb/replica_name_replGen.db | tail -50
    If the changelog is encrypted, you see only encrypted data.
  4. Start the instance:
    # systemctl start dirsrv@instance_name

Additional Resources