Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 5

Image RemovedImage Added

The shaded objects show the foundation of the Certificate Manager PKI environment, which is created in the bootstrap procedure. 

This article describes how to bootstrap Nexus Certificate Manager

The purpose of the bootstrap procedure is to build the foundation for a PKI environment, including certificate authorities (CAs) and security officers, and revoke the bootstrap CA. A bootstrapping must be performed after a new system installation, before the system can be used for production of certificates. 

When performing the bootstrap procedure you will be using the two Certificate Manager clients Administrator's workbench (AWB) and Registration Authority (RA) as well as other utility programs described below.

In addition to using software tokens for SSL TLS and PIN encryption it is possible to store the tokens in hardware security modules (HSMs). It is also possible to combine one software token with one stored in HSM. The bootstrap procedure will differ depending on the use of HSM. 

Note

Use the two

security officer (SO)

bootstrap officers soft tokens in the boot kit until you have created two officers, and after that use the smart cards that you have then personalized. For the bootstrap officers, two step signing is disabled.


Create officer and system CA

Expand
titleCreate Officer and System CA key

To create an Officer and System CA key:

  1. Generate a new CA key for the Officer and System CA, according to Create CA key.

  2. . In Key name, enter Officer and system CA key. In Device, select an RSA type.


Expand
titleCreate Officer and System CA

To create an Officer and System CA:

  1. Use the key Officer and system CA key created in the previous step, to create an Officer and System CA, according to Create CA.

  2. In CA name, enter Officer and system CA.

  3. Do the following selections in the CA Request dialog box:

    • Issuing CA - select Self-signed

    • Usage - Certificate signing

    • Format - self-signed ca-cert

    • Country - current country

    • Common name - Officer and system CA

    • Organization - current organization

Info

No distribution rule is required but can be added later if necessary.


Create

security

bootstrap officers

Expand
titleCreate certificate procedure for officer certificates

To create a certificate procedure:

  1. Create a certificate procedure to be used when issuing smart cards based on the Officer and System CA key. See Create certificate procedure.

  2. Do the following selections in the Certificate Procedure Request dialog box:

    • Procedure name - Officer certificates

    • Key usage - do not select any key usage

    • Issuing CA - Officer and System CA

    • CA chain - none

    • Certificate format - rfc5280

    • Set the Validity and Signature algorithm parameters as required.


Expand
titleCreate token procedure for officer smart cards

To create a token procedure for smart cards:

  1. Create a token procedure to be used when issuing smart cards based on the certificate procedure you created in the previous step. See Create token procedure

  2. Do the following selections in the Token Procedure Request dialog box:

    • Procedure name - Officer cards

    • Storage profile - Smart Card

    • Card serial number - Yes

    • Serial number range - Mandatory

    • PIN procedure - Show PINs in client

    • Issuer certificates - do not store any

    • Certificate procedure - Officer certificates

Note

Smart cards are recommended. If, for some reason, it is not possible to use smart cards, PKCS#12 tokens can also be used as storage profiles.



Expand
titlePersonalize two officer smart cards

To personalize two smart cards:

  1. Produce two pre-personalized smart cards in your Key Generation System (KGS). See CM8 - Produce smart cards.

  2. Register the two smart cards with information concerning two subjects who should become officers 1 and 2 of your system.

    See

    See Issue smart card

    certificates

    certificate.

  3. In the Smart Card tab of the Registration Authority application window, do the following steps for each of the two cards:

    1. Select action Add for each displayed key.

    2. Select the procedure you created in the previous step.

  4. Make a note of the PIN codes assigned for the cards.

Note

If PKCS#12 has been chosen as storage profile in the token procedure, use the Soft Token tab in Registration Authority (RA) to issue certificates for your officers. If you use PKCS#12 officer tokens it is recommended to store the associated keys in an HSM.



Expand
titleCreate two officers

To create two officers:

  1. Create two officers based on the smart cards from the previous step. See Create officer profile and Create officer.

    Any certificate on the smart card may be selected in the Officer Request dialog box.

Set up tokens for secure system communication

Create hardware tokens for SSL and PIN encryption

These tasks are related to administrative system hardware tokens only, when a hardware security module (HSM) is used. 

Expand
titleCreate a token procedure with storage profile PKCS#10

To create a token procedure with storage profile PKCS#10:

  1. Create a token procedure, according to Create token


Expand
titleCreate certificate procedure for TLS, KAR and PIN encryption

To create a certificate procedure for TLS, KAR and PIN encryption:

To prepare the
  1. Create a certificate procedure according to Create certificate procedure.

    Use the following parameters:

    • Storage profile - PKCS#10
    • Issuer certificates -

      Key usage - do not

      store

      select any key usage

    • Certificate procedures - the certificate procedure created for SSL and PIN encryption.
Expand
titlePrepare hardware security module for SSL token
    • Issuing CA - Officer and System CA

    • Certificate format - server certificate

    • Set the Validity and Signature algorithm parameters as required.

Note

It is normally not necessary to select distribution rules for these certificates.


Set up tokens for secure system communication

You can create hardware tokens or software tokens for TLS and PIN encryption.

Create hardware tokens for TLS and PIN encryption

These tasks are related to administrative system hardware tokens only, when a hardware security module (HSM)

for SSL tokens:
  1. Run hwsetup to generate a key pair, according to Generate RSA key pair.
  2. Run hwsetup to create a PKCS #10 request based on the generated key pair, according to Generate PKCS #10 certificate request.
  3. Issue a certificate to a file, based on the PKCS #10 certificate request and the token procedure created for PKCS #10:
    1. In Registration Authority (RA), go to the tab Certificate.
    2. In Request File, select the PKCS #10 certificate request you have created.
    3. In Procedure, select the token procedure for PKCS #10.
    4. In File for Media, enter the path and file name ssl.crt.
  4. Run hwsetup to store the certificate in HSM, according to Install certificate.
Expand
titlePrepare hardware security module for PIN encryption token

To prepare the hardware security module (HSM) for PIN encryption tokens:

  • Run hwsetup to generate a key pair, according to Generate RSA key pair.
  • Run hwsetup to create a

    is used. Hardware tokens are an alternative to software tokens.

    Expand
    titleCreate a token procedure with storage profile PKCS#10

    To create a token procedure with storage profile PKCS#10:

    1. Create a token procedure, according to Create token procedure.

      Use the following parameters:

      • Storage profile - PKCS#10

      • Issuer certificates - do not store any

      • Certificate procedures - the certificate procedure created for TLS, KAR and PIN encryption.


    Expand
    titlePrepare hardware security module for TLS token

    To prepare the hardware security module (HSM) for TLS tokens:

    1. Run hwsetup to generate a key pair with sign property, according to Generate DSA/EC/RSA key pair.

      Example: hwsetup -libname crypto -slot 0 -pin abcd -id tls -genrsa 2048 -sign

    2. Run hwsetup to create a PKCS #10 request based on the generated key pair, according to Generate PKCS #10 certificate request. Include the key usage extension.

    3. Issue a certificate to a file, based on the PKCS #10 certificate request and the token procedure created for PKCS #10:
      1. In Registration Authority (RA), go to the tab Certificate.
      2. In Request File, select the PKCS #10 certificate request you have created.
      3. In Procedure, select the token procedure for PKCS #10.
      4. In File for Media, enter the path and file name pin.crt.
    4. Run hwsetup to store the certificate in the HSM,

      Example, (on one line): hwsetup -libname crypto -slot 0 -pin abcd -id tls -keyusage -genreq "cn=localhost,o=Nexus"

    5. Use RA to issue a certificate to a file, tls.crt, based on the PKCS #10 request.

    6. Run hwsetup to store the certificate in HSM, according to Install certificate.


    This step is only performed if the key archiving and recovery (KAR) option has been licensed.

    The purpose of this step is to create a key encryption key (KEK) and to remove the temporary KEK included in the distribution. The KEK is used by the KARFactory in order to encrypt and decrypt archived keys.

    1. Run hwsetup to create a KEK. The KEK can be either a symmetric AES or DES3 key or an asymmetric RSA key pair:
      1. To generate a symmetric AES or DES3 key, see Generate AES or 3DES key.
      2. To generate an asymmetric RSA key, see Generate RSA key pair. There is no need to request and install a certificate, generating the key pair is sufficient.
    2. Open kar.conf for editing and do the following updates:
      1. Add the crypto library to the list of crypto libraries in the parameter kar.common.cryptolib.<N>.name.
      2. Add the new KEK to the list of tokens instead of the temporary KEK, by changing the value of kar.common.token.0.tokenlabel and kar.common.token.0.pin.
      3. Set the new KEK as the key to use for key archiving, by changing the value for kar.archive.kek.0.tokenlabel and kar.archive.kek.0.keylabel.
    Expand
    titleIf key archiving and recovery is licensed: Change token
    Note

    The value of kar.archive.kek.0.keylabel must be the label of the key. In case of an RSA key pair, it should be the label of the public key. The key label can be looked up using the command hwsetup -list. For more information, see Initializing Hardware Security Module.

    Optional: Create software tokens for SSL and PIN encryption

    These tasks are related to administrative system software tokens only. These are an alternative to hardware tokens.

    To create a certificate procedure for SSL and PIN encryption:

    Create a certificate procedure according to Create certificate procedure.
    Use the following parameters:
    • Key usage - do not select any key usage
    • Issuing CA - Officer and System CA
    • Certificate format - server certificate
    • Set the Validity and Signature algorithm parameters as required.
    It is normally not necessary to select distribution rules for SSL certificates
    Expand
    titleCreate certificate procedure for SSL and PIN encryption
    Note
    Prepare hardware security module for PIN encryption token

    To prepare the hardware security module (HSM) for PIN encryption tokens:

    1. Run hwsetup to generate an RSA key pair, according to Generate DSA/EC/RSA key pair. The private key needs the sign property to sign the PKCS #10 request.

      Example: hwsetup -libname crypto -slot 0 -pin abcd -id pin -genrsa 2048

    2. Run hwsetup to create a PKCS #10 request based on the generated key pair, according to Generate PKCS #10 certificate request. Include key usage extension with dataEncipherment.

      Example: hwsetup -libname crypto -slot 0 -pin abcd -id pin -keyusage dataEncipherment -genreq "cn=PIN encryption,o=Nexus"

    3. Use RA to issue a certificate to a file, pin.crt, based on the PKCS #10 request.

    4. Run hwsetup to store the certificate in the HSM, according to Install certificate.


    Expand
    titlePrepare hardware security module for KAR token

    This step is only performed if the key archiving and recovery (KAR) option has been licensed and enabled during installation.

    The purpose of this step is to create a key encryption key (KEK). The KEK is used by the KARFactory in order to encrypt and decrypt archived keys. The KEK can be either a symmetric AES or DES3 key or an asymmetric RSA key pair.

    AES or DES3 key

    1. Run hwsetup to generate a symmetric AES or DES3 key, see Generate AES or 3DES key.
      Example: hwsetup -libname crypto -slot 0 -pin abcd -id kekaes256 -label kekaes256 -genkey AES-256

    RSA keypair

    1. Run hwsetup to generate an asymmetric RSA key pair, see Generate DSA/EC/RSA key pair. The private key needs the sign property to sign the PKCS #10 request.
      Example: hwsetup -libname crypto -slot 0 -pin abcd -id kekrsa -label kekrsa -genrsa 2048
    2. Run hwsetup to create a PKCS #10 request based on the generated key pair (see Generate PKCS #10 certificate request). Include key usage extension with keyEncipherment and dataEncipherment.
      Example: hwsetup -libname crypto -slot 0 -pin abcd -id kekrsa -keyusage "keyEncipherment,dataEncipherment" -genreq "cn=KEK,o=Nexus"
    3. Use RA to issue a certificate to a file, kek.crt, based on the PKCS #10 request.
    4. Run hwsetup to store the certificate in HSM, according to Install certificate.

    Create software tokens for TLS and PIN encryption

    These tasks are related to administrative system software tokens only. Software tokens are an alternative to hardware tokens.

    Expand
    titleCreate token procedure for SSL TLS and PIN encryption

    To create a token procedure for SSL TLS and PIN encryption:

    1. Create a token procedure, according to Create token procedure.

      Use the following parameters:

      • Storage profile - PKCS#12

      • Pin procedure - Show PINs in client

      • Issuer certificates - do not store any

      • Certificate procedures - the certificate procedure created for

        SSL

        TLS, KAR and PIN encryption.


    Expand
    titleIssue software token for SSLTLS

    To issue a software token for SSLTLS:

    1. Issue a software token based on the token procedure for

      SSL

      TLS and PIN encryption, according to CM8 - Issue software tokens in Certificate Manager.

    2. Name the file

      ssl

      tls.p12.

    3. Make a note of the assigned PIN code.

    4. Save the file to a removable media for use in later tasks.


    Expand
    titleIssue software token for PIN encryption

    To issue a software token for PIN encryption:

    1. Issue a software token based on the token procedure for

      SSL

      TLS and PIN encryption, according to CM8 - Issue software tokens in Certificate Manager.

    2. Name the file pin.p12.

    3. Save the PIN encryption certificate to the file pin.crt.

    4. Make a note of the assigned PIN code.

    5. Save the files to a removable media for use in later tasks.

    Set up signing of audit logs

    Prepare data for CIS

    cis.audit.logsignkey = k48137b0392f30e3
  • Place the certificate file in CIS trust store: <configuration_root>/config/cistrust/system_ca.cer.
  • Remove the Boot CA file from CIS trust store: <configuration_root>/config/cistrust/bootca.cer.
  • Expand
    titleChange key for signing logs in Certificate Issuing System (CIS)

    To change the key for signing logs in Do these preparations for the Certificate Issuing System (CIS):

    1. In AWB, go to Key Registry > In Use > Officer and System CA key, and note the value of Identifier.

    2. Open

      <install

      <configuration_root>/config/cis.conf

      for

       for editing.

    3. Find the parameter cis.audit.logsignkey and set it to the value of Identifier found in the AWB (see step 1).

    Code Block
    titleExample: cis.audit.logsignkey


    Expand
    titleStop the system

    To stop the system:

    Stop the clients

    1. Stop the Nexus Certificate Issuing System (CIS) service (if external CIS service is installed).

    2. Stop the Nexus Certificate Factory (CF) service (CCM).

    3. Stop the clients.

    If you have installed and started the Nexus SNMP service, you may stop it, but it is not mandatory.

    Use tokens for secure system communication

    Please keep a record of the validity dates associated with the SSL server certificate. Expiration dates for CAs and certficates issued by Certificate Manager can be monitored using the Expiry Check Service (ECS) or the Administrator's Workbench (AWB)
    1. the new TLS server certificate works properly, delete the file tls.p12 from the removable media.

    Expand
    titleFor software token: Change the SSL TLS token

    If you have issued an SSL a TLS software token, it must be installed and configured in the CCM (or in the computers running Certificate Factory (CF) and CRLF CIS in case of a distributed configuration).

    To install and configure the SSL TLS software token:

    1. Make a backup copy of the current file

      ssl

      tls.p12 in the CCM.

    2. Copy the token from the removable media to replace the old file

      <install

      <configuration_root>/certs/

      ssl

      tls.p12.

    3. Set parameter parameter SSL.file and cis.ssl.file in cm.conf and SSL.file in cis.conf to the file path of the SSL TLS soft token file.
    4. Set parameter SSL.pin and cis.ssl.pin in cm.conf and SSL.pin in cis.conf to avoid manual intervention during start of Certificate Manager CM servers (also called Optional PIN).
    5. After you have tested that

      the new SSL server certificate works properly, delete the file ssl.p12 from the removable media.
    Note


    Please keep a record of the validity dates associated with the SSL server certificate. Expiration dates for CAs and certficates issued by Certificate Manager can be monitored using the Expiry Check Service (ECS) or the Administrator's Workbench (AWB
    1. .
    Expand
    titleFor hardware token: Change the SSL TLS token

    If you have prepared an SSL a TLS hardware token, it must be configured in the CCM (or in the computers running CF and CRLF CIS in case of a distributed configuration).

    To configure the SSL TLS hardware token:

    1. Set parameter parameter SSL.cert and cis.ssl.cert in cm.conf and SSL.cert in cis.conf to a case sensitive string value taken from the Common Distinguished Name in the SSL TLS server certificate. (Open the file containing the certificate created in task 12"Prepare hardware security module for TLS token" above.)
    2. Set parameter pkcs11.<n>, (where <n> is a sequence number for each library starting with 1) in cm.conf and cis.conf to specify the PKCS #11 libraries that should be available for use in SSL TLS authentication and that should be searched for the specified certificate.
    3. Set parameter SSL.pin and cis.ssl.pin in cm.conf and SSL.pin in cis.conf to avoid manual intervention during start of Certificate Manager CM servers (also called Optional PIN).
    4. Set parameter ssl SSL.nopin=true true in cm.conf and cis.conf to avoid showing unnecessary dialogs when the HSM has a PIN pad or if it does not require a PIN code.
    Note


    Expand
    titleFor software token: Change the PIN encryption token

    If you have issued PIN encryption software tokens, they must be installed and configured in the CCM (or in the computers running CF and CIS in case of a distributed configuration).

    To install and configure the PIN encryption software tokens:

    1. Make a backup copy of the current pin.p12 file in the CCM.

    2. Copy the tokens from the removable media to replace the old file <configuration_root>/certs/pin.p12.

    3. Set parameter pin.file in cm.conf to the file path of the PIN soft token file.

    4. Set parameter pin.pin in cm.conf to avoid manual intervention during start of CM servers (also called Optional PIN).


    Expand
    titleFor software hardware token: Change the PIN encryption token

    If you have issued prepared a PIN encryption software tokenshardware token, they it must be installed and configured in the CCM (or in the computers running CF and CRLF CIS in case of a distributed configuration).

    To install and configure the PIN encryption software tokenshardware token:

    1. Make a backup copy of the current file Set parameter pin.p12 file cert in the CCM.
    2. Copy the tokens from the removable media to replace the old file <install_root>/certs/pin.p12.
    3. Set parameter pin.file cm.conf to a case sensitive string value taken from the Distinguished Name in the PIN encryption certificate. (Open the file containing the certificate created in "Prepare hardware security module for PIN encryption token" above.)
    4. Set parameter pkcs11.<n>, (where <n> is a sequence number for each library starting with 1) in cm.conf to the file path of the PIN soft token filespecify the PKCS #11 libraries that should be available for use in PIN encryption and that should be searched for the specified certificate.
    5. Set parameter pin.pin in cm.conf to avoid manual intervention during start of

      Certificate Manager

      CM servers (also called Optional PIN).

    6. Set parameter pin.nopin=true to avoid showing unnecessary dialogs when the HSM has a PIN pad or if it does not require a PIN code.


    If you will use RA for card personalization, cards must be prepersonalized in the Key Generation System (KGS).

    In that case, install the PIN encryption certificate in KGS:

  • In KGS, replace the old file <install_root>\certs\pin.crt with the new file pin.crt from the removable media.
  • Restart the system for the changes to take effect
    Expand
    Expand
    titleOptional: Install PIN encryption certificate in Key Generation System (KGS)
    titleFor hardware token: Change the PIN encryption token

    If you have prepared a PIN encryption hardware token, it must be configured in the CCM (or in the computers running CF and CRLF in case of a distributed configuration).

    To configure the PIN encryption hardware token:

    1. Set parameter pin.cert in cm.conf to a case sensitive string value taken from the Common Name in the PIN encryption certificate. (Open the file containing the certificate created in task 12.)
    2. Set parameter pkcs11.<n>, (where <n> is a sequence number for each library starting with 1) in cm.conf to specify the PKCS #11 libraries that should be available for use in PIN encryption and that should be searched for the specified certificate.
    3. Set parameter pin.pin in cm.conf to avoid manual intervention during start of Certificate Manager servers (also called Optional PIN).
    4. Set parameter pin.nopin=true to avoid showing unnecessary dialogs when the HSM has a PIN pad or if it does not require a PIN code.
    Optional: Change the KAR token

    This step should only be performed if KAR is enabled. The KEK token prepared in "Prepare hardware security module for KAR token" above must be configured in the CCM.

    1. In kar.conf, add the crypto library to the list of crypto libraries (in the parameter kar.common.cryptolib.<N>.name).
    2. In kar.conf, add the new KEK to the list of tokens instead of the temporary KEK, that is, change the value of kar.common.token.0.tokenlabel and kar.common.token.0.pin.
    3. In kar.conf, set the new KEK as the key to use for key archiving, that is, change the value of kar.archive.kek.0.tokenlabel and kar.archive.kek.0.keylabel.
    Note

    The value of kar.archive.kek.0.keylabel must be the label of the key. In case of an RSA key pair, it should be the label of the public key. You can look up the key label using the command hwsetup -list. For more information on hwsetup, see CM8 - Initializing Hardware Security Module.



    Expand
    titleStart the system

    To start the system:

    1. Start the Nexus CIS service (if external CIS service is installed.
    2. Start the system.
      In case of a distributed configuration, restart the computers running CF and CRLFNexus CF service (CCM).

    Remove Nexus boot components

    Expand
    titleRevoke the Boot CA

    When everything works as expected, you can revoke the Boot CA. The boot bootstrap officers are prevented from logging in to Certificate Manager when revoking the Boot CA.

    To revoke the Boot CA:

    1. Test all connections to verify that everything works as expected, for example:

      1. Sign in to AWB with one of the new security bootstrap officers.

      2. Do an update and sign it, to test that both security bootstrap officers function as expected.

    2. Use the Revoke CA command in the Tools menu to revoke the Boot CA with revocation reason Cessation of Operation.


    Expand
    titleRemove the Boot CA key

    From the AWB, remove the Boot CA key, (which can be found in the “Retired keys” subgroup in the Key Registry), as described in “Removing a CA Key” in the Certificate Manager CA Administrator's Guidein Modify CA key.

    Note

    After removing this CA key, any procedures created with the Boot CA key can no longer be used and CIS log entries signed with this key can no longer be verified.