WebSphere

 

Portal Express, Version 6.0
Operating systems: i5/OS, Linux, Windows

 

Set up LDAP over SSL with Novell eDirectory

Configure your Novell eDirectory over SSL to ensure the confidentiality of the data exchanged between WebSphere Application Server, WebSphere Portal Express, and your LDAP user registry.

 

Overview

You might want to configure IBM® WebSphere® Application Server and IBM WebSphere Portal Express access to your LDAP user registry over SSL to ensure the confidentiality of the data exchanged between WebSphere Application Server, WebSphere Portal Express, and your LDAP user registry. For example, user passwords are sent over the network between LDAP user registry and WebSphere Portal Express. This occurs to set the password if WebSphere Portal Express user management tools are used to create users and change passwords and also when WebSphere Application Server authenticates any user name and password pair through an LDAP BIND operation. Configuring LDAP over SSL can be important to protect sensitive data. Also, it might be required to ensure that user attributes that are retrieved from the directory are not viewed by someone watching packets on the network, if the attributes of a user include sensitive information or privacy is a concern.

In order to ensure that all this information remains private, it is necessary to configure both WebSphere Application Server and WebSphere Portal Express to use LDAP over SSL to the LDAP user registry. Configuring LDAP over SSL for WebSphere Application Server and WebSphere Portal Express is a separate operation from configuring the IBM HTTP Server to accept incoming browser requests over HTTPS, or configuring HTTPS between the HTTP Server and WebSphere Application Server in a distributed setup.

A full primer on the configuration of all the LDAP user registries and WebSphere Application Server is beyond the scope of this documentation. Consult the documentation for your LDAP server to configure the directory for SSL traffic. For WebSphere Application Server, refer to http://www.redbooks.ibm.com/ and do a search for Security Handbooks for the latest information about configuring WebSphere Application Server for LDAP over SSL. You can also consult the http://www.ibm.com/software/webservers/appserv/was/library/.

 

Set up LDAP over SSL

It is required that you first get LDAP (non-SSL) successfully working before setting up LDAP over SSL. This allows you to verify that the directory is responding to LDAP requests before setting it up for SSL.

 

1. Install WebSphere Portal Express and WebSphere Application Server

Refer to Installing on Windows and Linux for more information.

Also refer to Installing on Windows and Linux for instructions on how to install WebSphere Portal Express on an existing profile of WebSphere Application Server that has security enabled.

 

2. Install and setup your LDAP

IBM recommends that you first get LDAP (non-SSL) successfully working before setting up LDAP over SSL. This allows you to verify that the directory is responding to LDAP requests before setting it up for SSL. Refer to Novell eDirectory for more information.

 

3. Generate or import certificates as necessary and activate SSL on the directory

Refer to the Novell eDirectory documentation for more information.

 

4. Import certificates to WebSphere Portal Express to enable SSL connection

 

Importing certificates to a WebSphere Application Server keystore

 

Windows and Linux: To make either the self-signed certificate or the CA certificate chain available to WebSphere Application Server and WebSphere Portal Express Server, use the key management tool supplied by WebSphere Application Server to import the certificate(s) into the necessary Java Key Store (.jks) format key storage files. You must use the Application Server-supplied key management tool, IKeyMan and import the certificates that you have exported from the Novell certificate management process. IKeyMan supports the Java Key Store file formats necessary for WebSphere Application Server and WebSphere Portal Express Server. Consult the WebSphere Application Server documentation for details about how to use this tool.

A brief overview of the steps to import the certificates to configure LDAP over SSL for WebSphere Application Server is:

  1. Activate the IKeyMan utility, which is located in was_profile_root/bin. One way to do this is to issue the ikeyman.exe or ikeyman.sh command from the command line, depending on your operating system.

  2. Open the Java Key Store file which will be used by WebSphere Application Server for LDAP over SSL. The user can create new key files and define a new SSL repertoire. WebSphere Application Server provides a default repertoire called DefaultSSLSetting. Use the default repertoire which contains the default WebSphere Application Server server trust file. Open DummyServerTrustFile.jks located at was_profile_root/etc directory. The password to the dummy server trust file is "WebAS".

  3. Select Signer Certificates from the top pull-down, then click Add.

  4. Select Base64-encoded ASCII data as the data type, and browse to the certificate file of that type that you exported from the Novell certificate management process.

  5. You will be asked for a label for the new certificate. Enter the same value that you specified for the label when you created the certificate.

  6. Save the updated key store file.

 

i5/OS: If your application uses commercial certificate authority certificates (signer or CA certificates), you might be able to use the cacerts keystore (the default trust keystore) with your application. The integrated file system path for cacerts is /QIBM/ProdData/Java400/jdk14/lib/security/cacerts. However, in no case should you attempt to modify the original cacerts keystore. Create a private copy of the cacerts file, and then add or remove certificates to the private copy. The password for cacerts is changeit. Be sure to change the password that protects your private copy of the cacerts file. Also, note that initially, all keystores created using iKeyman contain a number of commercial CA certificates.

You can create your Java keystores in any System i5 integrated file system directory. However, it might be convenient to place them in the same directory as those that are used by your profile. This might make it easier to include them in your backup and restore procedure. WebSphere Application Server provides an initial set of Java keystores that are used to secure connections between components. These keystores are found in the etc directory of your profile. For example, the keystores for the default profile are found in the app_server_root/etc directory.

For an example of how to create a Java keystore, see Using Java keystore files in the WebSphere Application Server for System i5 documentation.

Importing certificates to a WebSphere Portal Express keystore

WebSphere Portal Express can be configured to use to a specifically named Java Key Store so that WebSphere Portal Express and WebSphere Application Server can share the same configured truststore in the SSL configuration of the CSIv2 Outbound Transport. To specify the Java Key Store, follow these steps:

If WebSphere Application Server is not set up to use the LDAP as the user registry, the first seven steps are not necessary. For example, if you ran the enable-security-wmmur-ldap or enable-security-wmmur-db task to enable security.

  1. Stop WebSphere Portal Express.

  2. Logon to the WebSphere Application Server Administration Console.

  3. Navigate to Security > Global Security > LDAP.

  4. Check the sslEnabled box (set sslEnabled to true).

  5. Set the LDAP Port to port_number.

  6. Save changes.

  7. Perform the following steps to stop and restart the WebSphere Application Server:

    1. Open a command prompt and change to the following directory:

    2. Enter the following command:

      • Linux:

        ./stopServer.sh server1 -user admin_userid -password admin_password

      • Windows:

        stopServer.bat server1 -user admin_userid -password admin_password

      • i5/OS:

        stopServer.sh server1 -profileName profile_root -user admin_userid -password admin_password

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

      server1 is the name of your WebSphere Application Server administrative server.

    3. Enter the following command:

      • Linux:

        ./startServer.sh server1

      • Windows:

        startServer.bat server1

      • i5/OS:

        startServer.sh server1 -profileName profile_root

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

      server1 is the name of your WebSphere Application Server administrative server.

  8. In a text editor, open the file wmm.xml located in the portal_server_root/wmm directory.

    In a clustered environment, the wmm.xml file is moved from the portal_server_root/wmm/ directory to the was_profile_root/config/wmm directory via a configuration task that uploads and replicates to all cluster nodes.

  9. Navigate to the stanza that begins ldapRepository name="wmmLDAP".

  10. Verify that ldapPort="port_number".

  11. Verify that sslEnabled="true".

  12. At the end of this stanza, update

    where was_profile_root is the profile directory of the WebSphere Application Server installation.

    Notes:

    • The full pathname is only mandatory if the sslTrustStore file is not under was_profile_root\etc\; otherwise, you can just use the file name.

    • If you do not specify an sslTrustStore parameter here, Member Manager will use:

      In this case, you will need to import the root CA certificate for your LDAP server into the cacerts; refer to the 3. Generate or import certificates as necessary and activate SSL on the directory step for instructions.

    • As part of setting up SSL for the LDAP repository in a cluster environment, any changes made within the deployment manager to the file defined by sslTrustStore and changes made to the cacerts file are not automatically replicated to all nodes in the cell and must be manually backed up and copied to the node agents. The location of the dummy keys on the deployment manager is was_profile_root\deployment manager name\etc\.

  13. Save the file.

  14. Perform the following steps to stop and restart the WebSphere Application Server:

    1. Open a command prompt and change to the following directory:

    2. Enter the following command:

      • Linux:

        ./stopServer.sh server1 -user admin_userid -password admin_password

      • Windows:

        stopServer.bat server1 -user admin_userid -password admin_password

      • i5/OS:

        stopServer.sh server1 -profileName profile_root -user admin_userid -password admin_password

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

      server1 is the name of your WebSphere Application Server administrative server.

    3. Enter the following command:

      • Linux:

        ./startServer.sh server1

      • Windows:

        startServer.bat server1

      • i5/OS:

        startServer.sh server1 -profileName profile_root

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

      server1 is the name of your WebSphere Application Server administrative server.

  15. Perform the following steps to stop and restart the WebSphere Portal Express server:

    1. Open a command prompt and change to the following directory:

    2. Enter the following command:

      • Linux:

        ./stopServer.sh WebSphere_Portal -user admin_userid -password admin_password

      • Windows:

        stopServer.bat WebSphere_Portal -user admin_userid -password admin_password

      • i5/OS:

        stopServer.sh WebSphere_Portal -profileName profile_root -user admin_userid -password admin_password

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

    3. Enter the following command:

      • Linux:

        ./startServer.sh WebSphere_Portal

      • Windows:

        startServer.bat WebSphere_Portal

      • i5/OS:

        startServer.sh WebSphere_Portal -profileName profile_root

        where profile_root is the name of the WebSphere Application Server profile where WebSphere Portal Express is installed; for example, wp_profile.

 

i5/OS: You must also import the certificates to a keystore that can be used by the WebSphere Portal Express. In this case, WebSphere Portal Express has no configuration setting to point to a specifically named Java Key Store file. Instead, import the certificates into the default keystore file of the JVM, cacerts. However, in no case should you attempt to modify thecacerts keystore. Rather, you should create a private copy of the cacerts file, and then add or remove certificates. The configured truststore in the SSL configuration of the CSIv2 Outbound Transport must also be updated.

 

5. Close down the non-SSL port of the LDAP user registry server (optional)

This is an optional step. Closing the non-SSL port of the directory will ensure that traffic exchanged with the directory by WebSphere Application Server, WebSphere Portal Express, or any other application, is confidential.

 

Parent topic:

Novell eDirectory

 

Previous topic

Verifying LDAP