Instalando um certificado SSL

Você pode adquirir um Certificado SSL de uma certificadora como Verisign ou Thawte. Essas empresas oferecem excelentes documentações e instruções sobre como instalar o certificado em seu website.

Abaixo eu incluí um screenshot do processo de instalação do certificado no arquivo keystore.

Jbssl2.png

Atenção! Podemos ter uma importação pura e simples de um certificado, onde somente a chave pública é enviada ao servidor; no exemplo abaixo, procedimento para a importação de um certificado emitido pelo SERASA:

$ keytool -import -alias serasa -file serasa.cer

Será requisitado que você entre com uma password… essa password será a chave privada da keystore; ele só servirá para abrir o certificado do SERASA (serasa.jks), onde contém a chave publica.

Enter keystore password:
Re-enter new password:

Após a password, ele mostrará qual chain root foi importada…

Owner: CN=Autoridade Certificadora Raiz Brasileira, ST=DF, L=Brasilia, OU=Instituto Nacional de Tecnologia da Informacao - ITI, O=ICP-Brasil, C=BR
Issuer: CN=Autoridade Certificadora Raiz Brasileira, ST=DF, L=Brasilia, OU=Instituto Nacional de Tecnologia da Informacao - ITI, O=ICP-Brasil, C=BR Serial number: 4 Valid from: Fri Nov 30 10:58:00 BRST 2001 until: Wed Nov 30 21:59:00 BRST 2011 Certificate fingerprints:
         MD5:  96:89:7D:61:D1:55:2B:27:E2:5A:39:B4:2A:6C:44:6F
         SHA1: 8E:FD:CA:BC:93:E6:1E:92:5D:4D:1D:ED:18:1A:43:20:A4:67:A1:39
         Signature algorithm name: SHA1withRSA
         Version: 3
Extensions: #1: ObjectId: 2.5.29.15 Criticality=true KeyUsage [
 Key_CertSign
 Crl_Sign
#2: ObjectId: 2.5.29.19 Criticality=true BasicConstraints:[
 CA:true
 PathLen:2147483647
#3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 8A FA F1 57 84 11 13 35 90 42 FA 57 49 54 69 0D ...W...5.B.WITi. 0010: A4 C4 F0 37 ...7 #4: ObjectId: 2.5.29.31 Criticality=false CRLDistributionPoints [
 [DistributionPoint:
    [URIName: http://acraiz.icpbrasil.gov.br/LCRacraiz.crl]
#5: ObjectId: 2.5.29.32 Criticality=false CertificatePolicies [
 [CertificatePolicyId: [2.16.76.1.1.0]
[PolicyQualifierInfo: [
 qualifierID: 1.3.6.1.5.5.7.2.1
 qualifier: 0000: 16 2C 68 74 74 70 3A 2F   2F 61 63 72 61 69 7A 2E  .,http://acraiz.
0010: 69 63 70 62 72 61 73 69 6C 2E 67 6F 76 2E 62 72 icpbrasil.gov.br 0020: 2F 44 50 43 61 63 72 61 69 7A 2E 70 64 66 /DPCacraiz.pdf ]] ]   Trust this certificate? [no]: yes
Certificate was added to keystore

Para listar a chave importada…

keytool -list

Será requisitada a password e posterior listagem… neste ponto, a keystore se encontra em $HOME/.keystore

Enter keystore password:
Keystore type: JKS Keystore provider: SUN Your keystore contains 1 entry serasa, 18/02/2008, trustedCertEntry,
Certificate fingerprint (MD5): 96:89:7D:61:D1:55:2B:27:E2:5A:39:B4:2A:6C:44:6F

Melhor renomear a .keystore para um nome que se entenda… como:

mv ../../.keystore serasa.jks

Usaremos entao como keystore serasa.jks

Dica: No Windows a keystore fica armazena no userdir, e.g., C:\Documents and Settings\ccsilva.

Mais tem um detalhe…

Obviamente você já deve ter percebido que precisará da senha da keystore, criptografada, para depois abrir o certificado e retirar a assinatura; ela não pode aparecer em plain-text e sim num properties, como abaixo:

user.jks=gHUrtR3FCQbigUmFOY/eXKxOtcajYEhp+g==RO6SyDLaAQ==

Então, para criptografar uma senha, você vai precisar de um pequeno aplicativo, disponível aqui; veja abaixo screenshot CriptografaSenha.png

  • Execute:
$ java -jar criptografia.jar

Have fun!

Published by

Claudio Cardozo

Ubuntu Kernel Team Membership, Certified SCRUM Master, System Architect, Open Source enthusiastic, Java and JavaFX passioned, OpenCRX Team, Theologist, minimalist lifestyle, eitaa!

Leave a Reply