Creating a self-signed personal certificate on UNIX, Linux, and Windows

We can create a self-signed certificate by using the strmqikm (iKeyman) GUI, or from the command line using runmqckm (iKeycmd) or runmqakm (GSKCapiCmd).

Note: IBM MQ does not support SHA-3 or SHA-5 algorithms. You can use the digital signature algorithm names SHA384WithRSA and SHA512WithRSA because both algorithms are members of the SHA-2 family.

The digital signature algorithm names SHA3WithRSA and SHA5WithRSA are deprecated because they are an abbreviated form of SHA384WithRSA and SHA512WithRSA respectively.

For more information about why you might want to use self-signed certificates, see Use self-signed certificates for mutual authentication of two queue managers.

Not all digital certificates can be used with all CipherSpecs. Ensure that you create a certificate that is compatible with the CipherSpecs you need to use. IBM MQ supports three different types of CipherSpec. For details, see Interoperability of Elliptic Curve and RSA CipherSpecs in the Digital certificates and CipherSpec compatibility in IBM MQ topic. To use the Type 1 CipherSpecs (those with names beginning ECDHE_ECDSA_) you must use the runmqakm command to create the certificate and you must specify an Elliptic Curve ECDSA signature algorithm parameter; for example, -sig_alg EC_ecdsa_with_SHA384.


Use iKeyman

iKeyman does not provide a FIPS-compliant option. If you need to manage TLS certificates in a way that is FIPS-compliant, use the runmqakm command.

Use the following procedure to obtain a self-signed certificate for your queue manager or IBM MQ MQI client:
  1. Start the iKeyman GUI by using the strmqikm command .
  2. From the Key Database File menu, click Open. The Open window displays.
  3. Click Key database type and select CMS (Certificate Management System).
  4. Click Browse to navigate to the directory that contains the key database files.
  5. Select the key database file in which you want to save the certificate, for example key.kdb.
  6. Click OK. The Password Prompt window displays.
  7. Type the password you set when you created the key database and click OK. The name of your key database file is displayed in the File Name field.
  8. From the Create menu, click New Self-Signed Certificate. The Create New Self-Signed Certificate window is displayed.
  9. In the Key Label field, enter the certificate label. The label is either the value of the CERTLABL attribute, if it is set, or the default ibmwebspheremq with the name of the queue manager or IBM MQ MQI client logon user ID appended, all in lowercase. See Digital certificate labels for details.
  10. Type or select a value for any field in the Distinguished name, or any of the Subject alternative name fields.
  11. For the remaining fields, either accept the default values, or type or select new values. For more information about Distinguished Names, see Distinguished Names.
  12. Click OK. The Personal Certificates list shows the label of the self-signed personal certificate you created.


Use the command line

Use the following commands to create a self-signed personal certificate by using iKeycmd or runmqakm:

  • Use iKeycmd on UNIX, Linux , and Windows:
    runmqckm -cert -create -db filename -pw 
    password -label label
            -dn distinguished_name -size key_size
     -x509version version -expire days
     -sig_alg algorithm
    

    Instead of -dn distinguished_name, we can use -san_dsname DNS_names, -san_emailaddr email_addresses, or -san_ipaddr IP_addresses.

  • Use runmqakm:
    runmqakm -cert -create -db filename -pw 
    password -label label
            -dn distinguished_name -size key_size
     -x509version version -expire days
    
            -fips -sig_alg algorithm