Sun OpenSSO Enterprise Policy Agent 3.0 Guide for Apache HTTP Server 2.0.x

Using SSL With the Apache HTTP Server 2.0.x Agent (Optional)

If you specify the HTTPS protocol during the Apache HTTP Server 2.0.x agent installation, the agent is automatically configured and ready to communicate over Secure Sockets Layer (SSL). Before continuing with the tasks in this section, however, ensure that the Apache HTTP Server instance is configured for SSL. For information, see the Apache HTTP Server 2.0 documentation:http://httpd.apache.org/docs/2.0/.

Disabling the Trust Behavior of the Apache HTTP Server Agent

By default, the Apache HTTP Server 2.0.x agent installed on a remote Apache HTTP Server instance trusts any server certificate presented over SSL by the OpenSSO Enterprise host server. For the Apache HTTP Server 2.0.x agent to perform certificate checking, you must disable this behavior.

ProcedureTo Disable the Trust Behavior of the Apache HTTP Server Agent

  1. Find the Apache HTTP Server 2.0.x agent's OpenSSOAgentBootstrap.properties file in the agent's /config directory. For example:

    /opt/web_agents/apache_agent/Agent_001/config/OpenSSOAgentBootstrap.properties

  2. In the OpenSSOAgentBootstrap.properties file, set the SSL-related properties, depending on your specific deployment.

    Note: These properties have new names for version 3.0 web agents.

    • Disable the option to trust the server certificate sent over SSL by the OpenSSO Enterprise host server:

      com.sun.identity.agents.config.trust.server.certs = false

    • Specify the certificate database directory. For example:

      com.sun.identity.agents.config.sslcert.dir = /opt/apache-2.0.63/conf/certdb

    • If the certificate database directory has multiple certificate databases, set the following property to the prefix of the database you want to use. For example:

      com.sun.identity.agents.config.certdb.prefix = prefix-

    • Specify the certificate database password:

      com.sun.identity.agents.config.certdb.password = password

    • Specify the certificate database alias:

      com.sun.identity.agents.config.certificate.alias = alias-name

  3. Save the changes to the OpenSSOAgentBootstrap.properties file.

    The agent uses information in the OpenSSOAgentBootstrap.properties file to start and initialize itself and to communicate with OpenSSO Enterprise server.

Installing the OpenSSO Enterprise Root CA Certificate on the Apache HTTP Server Instance

The root CA certificate that you install on the Apache HTTP Server instance must be the same certificate that is installed on the OpenSSO Enterprise host server.

Sun provides the Certificate Database Tool, certutil, in the Apache HTTP Server agent distribution file, to manage the root CA certificate and the certificate database.

For information about using certutil, see http://www.mozilla.org/projects/security/pki/nss/tools/certutil.html.

ProcedureTo Install the OpenSSO Enterprise Root CA Certificate on the Apache HTTP Server Instance

  1. Obtain the root CA certificate file that is installed on the OpenSSO Enterprise host server.

  2. On the Apache HTTP Server instance, locate the certutil utility.

    After you unzip the Apache HTTP Server agent distribution file, certutil is available in the PolicyAgent-base/bin directory.

    For example: /opt/web_agents/apache_agent/bin/certutil

  3. Before you use certutil, set the LD_LIBRARY_PATH environment variable to the location of the certutil library files.

    After you unzip the Apache HTTP Server agent distribution file, these library files are available in the PolicyAgent-base/lib directory.

    For example: /opt/web_agents/apache_agent/lib

  4. If necessary, create the certificate database using certutil. For example:

    # cd /opt/web_agents/apache_agent/bin
    # mkdir /opt/apache-2.0.63/conf/certdb
    # ./certutil -N -d /opt/apache-2.0.63/conf/certdb
  5. Install the OpenSSO Enterprise root CA certificate using certutil. For example:

    # ./certutil -A -n cert-name -t "C,C,C" -d /opt/apache-2.0.63/conf/certdb -i cert-request-file
    

    where:

    • cert-name is the name of the OpenSSO Enterprise root CA certificate.

    • cert-request-file is the binary root CA certificate request file.

  6. To verify that the root CA certificate is installed correctly, use certutil with the -L option. For example:

    # ./certutil -L -d /opt/apache-2.0.63/conf/certdb

    You should see the name of the root CA certificate.

  7. Restart the Apache HTTP Server instance.