Certificate Management

SSL requires the use of certificates.  A StarPipes server certificate must be installed in the Windows certificate store prior to configuring an SSL listener, and a client certificate may be optionally required for all clients connecting to the StarPipes server via SSL.  In the case where multiple certificate authorities are involved, you may need to ensure that the StarPipes server, the hosts that it is connecting to, and clients that are connecting to StarPipes recognize the certificate authorities involved so that certificates are trusted.

Below are some typical scenarios:

Requesting and installing a server certificate before enabling the SSL listener

Requesting and installing a client certificate

Other Certificate Authorities

Requesting and installing a server certificate before enabling the SSL listener

Configure the Subject (CN = Common Name) of the Server Certificate

Create a CSR (Certificate Signing Request)

Most public Certificate Authorities publish instructions for creating a CSR from Windows; for example, you can use these instructions from Entrust and RapidSSL as an illustrated guide.

Example:
CN = myserver.mydomain.com
O = Your organization name
OU = Department or Division (optional)
S = State
L = City or Locality
C = Country

Submit the CSR to the Certificate Authority (CA)

The following example shows the use of Microsoft Active Directory Certificate Services. Both Certificate Services and the WWW Publishing Service (IIS) should be running on the certificate server. Note that Certificate Services do not necessarily need to be run on a domain controller.

Using a public Certificate Authority is similar in concept but differs in the details. Using a public Certificate Authority usually involves some form of verification process.

If necessary, the Certificate Server administrator approves the request using the following steps on the Certificate Server:

Receive the certificate from the Certificate Authority

Back on the StarPipes machine, retrieve the certificate:

Install the certificate

Configure the SSL listener

After installing the server certificate, you can now create the SSL listener in StarPipes.

Requesting and installing a client certificate

Requesting and installing a client (aka user) certificate is necessary if your StarPipes server is connecting to another StarPipes server that requires a client certificate, or if you are configuring a client to communicate with a StarPipes server configured to require a client certificate.  Requesting a client certificate from Microsoft Active Directory Certificate Services is similar to the process above except

Unless you are using a client certificate from a public certificate authority, make sure that you import the CA certificate of the CA that issued the client certificate into the Trusted Root Certification Authorities folder of the StarPipes server that is configured to require a client certificate - i.e. the CA certificate should exist on both StarPipes systems.

Other Certificate Authorities

The above examples demonstrate the use of Microsoft Active Directory Certificate Services. Depending on your host and client environments, you may need to work with certificates created or used by other certificate mechanisms such as:

If you are using a mix of Certificate Authorities, you may need to export and import certificates between certificate stores.  

Below is an example of connecting an IBM System i server running i 7.x as a client to a StarPipes server. If the i 7.1 machine does not trust the CA that issued the Starpipes server certificate, you will get an error "CPD3E3C DDM TCP/IP Secure Sockets error occurred on SSL_Init() - Reason code 23" (reason code 23 is defined as SSL_ERROR_NOT_TRUSTED_ROOT in qsossl.h) when attempting a connection from the i Server to StarPipes.

ADDRDBDIRE RDB(MYRDB) RMTLOCNAME(myspip *IP) PORT(448) SECCNN(*SSL)