Server certificates
Creating a key database file
Requesting a server certificate from a well-known CA
Requesting a server certificate from an unknown CA
Creating the public/private keys and certificate request
Sending the certificate request
Receiving and storing the server certificate
Making server certificates available to clients
Creating a self-signed certificate
Stopping and re-starting the Host On-Demand Service Manager
Creating a key database file
Certificate Management allows you to enable Secure Sockets Layer (SSL) communications between hod server and clients.
Before you begin configuring SSL communications, you must create the HODServerKeyDb.kdb key database file. This file is not shipped with hod, so it must be created after the first install.
To create a new key database file:
Once the HODServerKeyDb.kdb key database file has been created, it holds all security information needed by the HOD server. Any additions or changes are made to the existing HODServerKeyDb.kdb key database file.
To open an existing key database file:
After you have created or opened the HODServerKeyDb.kdb file, you can:
Note: Whenever you change the HODServerKeyDb.kdb file, you must stop and re-start
the Host On-Demand Service Manager.
Complete the procedures in this section to set up SSL security using a certificate issued by a well-known CA. The following CA signer certificates are automatically stored in a newly created HODServerKeyDb.kdb key database file and marked as trusted certificates:
When you finish creating and submitting a certificate request that corresponds to one of these types of certificates, you can create a self-signed certificate to use while you are waiting to receive the certificate from the CA. Following is an overview of the steps used to set up SSL security using a well-known CA:
Creating the keys and a certificate request
To create the public/private keys and certificate request:
When you click OK, your information is processed and four files are produced or updated:
File | Description |
HODServerKeyDb.kdb | Key database file |
HODServerKeyDb.sth | Key database password file |
HODServerKeyDb.rdb | Key database private key file |
certificate_name | Default name (certreq.arm) or the name you assigned to the certificate request file. This file is a PKCS 10-type file in armored 64 format. |
Do not attempt to edit these files. They should all be backed up at the end of this step. If the HODServerKeyDb.rdb file is not present or is corrupted when you attempt to enter the certificate into the key database file, you will have to resubmit your certificate request to the CA.
Sending the certificate request
Start a Web browser and access the CA's Web page. Follow the instructions provided to submit the certificate request. The following list provides the URLs of some well-known CAs:
Depending on the CA you choose, you can either e-mail the certificate request generated by Certificate Management or incorporate the certificate request into the form or file provided by the CA.
While you are waiting for the CA to process your certificate request, you
can enable SSL security for controlled testing purposes only by
creating and storing a self-signed certificate using the procedure described in
"Creating a Self-Signed Certificate".
Sending the certificate request
Follow the unknown CA's procedures to submit the certificate request.
Depending on the CA you choose, you can either e-mail the certificate request generated by Cerficate Management or incorporate the certificate request into the form or file provided by the CA.
While you are waiting for the CA to process your certificate request, you
can enable SSL security for controlled testing purposes only by
creating and storing a self-signed certificate using the procedure described in
"Creating a Self-Signed Certificate".
Storing the server certificate
When you receive the certificate from the CA, use Certificate Management to put the certificate into the key file, HODServerKeyDb.kdb, located on the server. You should make a backup copy of the certificate issued to your server before starting this step.
Complete the procedures in this section to set up SSL security using a certificate issued by a CA that is not already defined in the database. When you finish creating and submitting a certificate request to a CA, you can create a self-signed certificate to use for controlled testing purposes only while you are waiting to receive the certificate from the CA. Following is an overview of the steps used to set up SSL security using a certificate from a CA that is not predefined:
When you receive the certificate from the CA, contact the CA to obtain the CA's root certificate. You must store the CA root certificate in the key database file before you store the applied-for certificate. The CA root certificate is used to validate the applied-for certificate. You should make a backup copy of both the CA's root certificate as well as the certificate issued to your server before starting this step.
To store the CA's root certificate:
To store the applied-for certificate:
Creating a self-signed certificate
It can take about two to three weeks to get a certificate from a CA. While waiting for a public server certificate to be issued, you can use Cerficate Management to create a self-signed certificate for controlled testing purposes only to enable SSL sessions between clients and the server.
Use the following procedures to set up your site with a self-signed certificate:
Making server certificates available to clients
There are three types of Host On-Demand clients: locally installed, downloaded, and cached.
The locally-installed client is installed to the user's local machine from the Host On-Demand product CD. All Host On-Demand code and information is kept on the user's local machine. To run the locally installed client, the user loads a Web page and additional code off the local hard disk and then creates a secure connection to a Host On-Demand redirector or other telnet server. This type of client is considered the most secure because all code and security information is loaded off the local hard disk and not from the Internet. Personal Communications clients act the same as Host On-Demand locally installed clients in this respect.
The downloaded client is not installed to the local machine, but loaded completely from the Host On-Demand server every time the Host On-Demand Web page is accessed. To start the downloaded client, the user loads a Web page and additional code from the Host On-Demand server, and then creates a secure connection to a Host On-Demand redirector or telnet server. This type of client is considered least secure because all code and security information must pass over the Internet and could be corrupted or forged in transit.
The cached client is a cross between the locally installed and the downloaded client. Like the downloaded client, the cached client is initially loaded completely from the Host On-Demand server over the Internet. But, like the locally installed client, some of the code files received in the initial download are stored on the local hard disk and only re-loaded if they are later changed on the server. This type of client is considered more secure than the downloaded client, because after the initial download less code and information is loaded off the Internet. However, it is still not as secure as the locally installed client because the initial download could be corrupted or forged, and some security files must still be loaded off the server each time the cached client is started.
All the certificates in HODServerKeyDb.kdb are available to the Host On-Demand server. However, in some configurations one of these certificates must also be made available to the clients that access the server. If your server uses a site certificate from an unknown CA, the unknown CA's root certificate must be made available to all its clients. If your server uses a self-signed certificate, a copy of the self-signed certificate must be made available to all its Host On-Demand and Personal Communications clients.
For Host On-Demand downloaded and cached clients, this is done by extracting the certificate to a temporary file, then creating or updating a file named CustomizedCAs.p12, and copying the file to the Host On-Demand publish directory. This file must be password protected and given the default password of "hod". Do not change this password.
For Personal Communications and Host On-Demand locally installed clients, the certificate must be extracted to a file, securely transferred to the client, and then added to the key database file of the client machine.
To create CustomizedCAs.p12 file for downloaded and cached clients
If your server uses a site certificate issued by an unknown CA:
To create a certificate file for IBM Personal Communications and Host On-Demand locally installed and other clients:
If your server uses a site certificate issued by an unknown CA:
On Windows NT:
On AIX:
ps -ef | grep NCServiceManager
Host On-Demand
The system responds with a line similar to:
root 20130 22944 0 Feb 16 pts/1 0:20 java /com/ibm/eNetwork/onDemand/services/admin/NCServiceManager/usr/local/ondemand
The first number after root is the process id (20130 in the example above). Enter:
kill -9 20130