Convertendo Keystores PEM em Keystores do Build Forge

Keystores PEM recebidos de uma Autoridade de Certificação podem ser convertidos em keystores para uso com o Build Forge.

Antes de Iniciar

Faça download dos arquivos de política irrestrita para o SDK. Esse pré-requisito só se aplica se o tamanho da chave for muito grande para os arquivos de política restrita. Faça download dos arquivos a partir de https://www14.software.ibm.com/webapp/iwm/web/reg/signup.do?source=jcesdk&lang=en_US&S_PKG=142ww
Nota: Você deve usar o utilitário keytool fornecido pela IBM.

Sobre Esta Tarefa

Se você tiver um conjunto de arquivos PEM de uma Autoridade de Certificação, deverá usá-los para criar um conjunto de keystores OpenSSL e JSSE para o Build Forge.

Procedimento

  1. Inclua os diretórios de ferramentas do Build Forge em seu PATH.
    • <bfinstall>/openssl
    • <bfinstall>/ibmjdk/bin para Windows
    • <bfinstall>server/ibmjdk/bin para UNIX ou Linux
    Para UNIX e Linux, inclua o seguinte diretório em LD_LIBRARY_PATH:
    <bfinstall>/openssl
  2. Converta os arquivos PEM em um keystore PKCS12.

    Use o seguinte comando:

    openssl pkcs12 
            -export 
            -name "buildforge" 
            -out buildForgeKeyStore.p12 
            -inkey <key.pem> 
            -passin pass:<pempassword>
            -in <crt.pem>
            -password pass:<bfpassword>
  3. Verifique se o certificado foi incluído e pode ser lido.
    keytool -v
            -list
            -keystore buildForgeKeyStore.p12
            -storepass <bfpassword>
            -storetype pkcs12

    Se você obtiver um erro sobre um tamanho de chave inválido, faça download de arquivos de políticas não restritos. Use as instruções no início desta seção.

  4. Exporte o certificado público.

    Em uma janela de comando, acesse <bfinstall>/keystore e, em seguida, execute este comando:

    keytool -export
            -alias buildforge
            -file cert.der
            -keystore buildForgeKeyStore.p12
            -storepass <bfpassword>
            -storetype pkcs12
    • O certificado é armazenado no arquivo cert.der.
    • Use o mesmo <bfpassword> que foi especificado para os keystores durante a instalação. Caso contrário, você precisará alterar a configuração.
  5. Crie o truststore e importe o certificado público.

    Em uma janela de comando, acesse <bfinstall>/keystore e execute este comando:

    keytool -import
            -noprompt -trustcacerts
            -alias buildforge
            -file cert.der
            -keystore buildForgeTrustStore.p12
            -storepass <bfpassword>
            -storetype pkcs12
  6. Coloque o certificado de cliente público em buildForgeCert.pem.

    Em uma janela de comando, acesse <bfinstall>/keystore e, em seguida, execute este comando:

    openssl pkcs12 -clcerts -nokeys
            -in buildForgeKeyStore.p12
            -passin: pass:<bfpassword>
            -out buildForgeCert.pem
  7. Coloque o certificado e as chaves em buildForgeKey.pem

    Em uma janela de comando, acesse <bfinstall>/keystore e, em seguida, execute este comando:

    openssl pkcs12
            -in buildForgeKeyStore.p12
            -passin pass:<bfpassword>
            -passout pass:<bfpassword>
            -out buildForgeKey.pem
  8. Crie a Autoridade de Certificação PEM buildForgeCA.pem.
    1. Faça download do certificado raiz da autoridade de certificação para <bfinstall>/keystore. Ele é denominado CARootCert.crt. Precisa ser incluído nos keystores PEM e pode ser importado para buildForgeTrustStore.p12.
    2. Em uma janela de comando, acesse <bfinstall>/keystore e, em seguida, execute estes comandos:
      cat CARootCert.crt > buildForgeCA.pem
      keytool -import -noprompt -v -trustcacerts
              -alias "CA Root" 
              -file CARootCert.crt
              -keystore buildForgeTrustStore.p12
              -storepass <bfpassword>
              -storetype pkcs12

Resultados

O Build Forge usa um keystore PEM protegido por senha, buildForgeKey.pem. O servidor Apache solicita a senha durante a inicialização.
Se você não quiser ser solicitado a informar uma senha durante a inicialização, gere um keystore PEM que não seja protegido por senha e seja usado pelo servidor Apache. O comando a seguir é um exemplo.
openssl rsa -in buildForgeKey.pem 
            -passin pass:<password>
            -out buildForgeKeyForApache.pem

Certifique-se de que o keystore PEM não protegido possa ser lido por qualquer usuário que precise de acesso ao ID do processo que executa o Build Forge.


Feedback