Certificação Digital no ambiente Webrun

Manual do Maker 2

Certificação Digital no ambiente Webrun

Certificado Digital é um documento eletrônico que contém informações da identidade de uma pessoa ou de uma instituição. Existem duas maneiras para se obter um Certificado Digital, solicitando a uma Autoridade Certificadora (Certificate Authority ou CA) ou gerando por conta própria, por meio de ferramentas adequadas, por exemplo, a ferramenta gratuita OpenSSL.

Iremos utilizar as seguintes ferramentas:

A ferramenta OpenSSL pode ser baixada no site www.openssl.org juntamente com sua documentação e esta será utilizada para demonstrar como gerar seu próprio Certificado Digital.

Recomendações:

  • Para gerar o Certificado Digital, é necessária a instalação do Tomcat a partir da versão 6;

  • Sugere-se criar uma pasta C:\CertificadoSSL.

Criando Sua Própria Autoridade Certificadora

Gerando Chaves Privadas e Certificados para sua própria CA

Execute os seguintes passos:

  1. Crie uma pasta chamada CertificadoSSL;

  2. Execute o seguinte comando no diretório C:\OpenSSL\bin:

openssl req -new -newkey rsa:1024 -nodes -out C:\CertificadoSSL\CA.csr -keyout C:\CertificadoSSL\CA.key

A mensagem exibida abaixo do comando significa que a chave foi gerada. Mensagem de confirmação.

  1. Preencha as informações solicitas:

Country Name (2 letter code) [AU]:BR

State or Province Name (full name) [Some-State]:Bahia

Locality Name (eg, city) []:Salvador

Organization Name (eg, company) [Internet Widgits Pty Ltd]:Softwell Solutions

Organizational Unit Name (eg, section) []:Softwell Solutions

Common Name (eg, YOUR name) []:localhost

Email Address []:[email protected]

e

A challenge password []:123456

An optional company name []:Softwell Solutions

Não é necessário preencher os três últimos campos, entretanto é importante definir o campo Common Name como sendo o endereço correto do servidor.

Gerando o Arquivo CA.pem

O Arquivo CA.pem contém as informações da chave privada.

Para gerar o arquivo, execute o seguinte comando no diretório C:\OpenSSL\bin:

openssl x509 -trustout -signkey "C:\CertificadoSSL\CA.key" -days 1825 -req -in "C:\CertificadoSSL\CA.csr" -out "C:\CertificadoSSL\CA.pem"

A mensagem exibida abaixo do comando significa que o arquivo foi gerado.

Gerando os Certificados

Para a criação do certificado do servidor, é utilizada a ferramenta keytool que vem instalada na versão do J2SE. A keytool armazena as chaves e os certificados em um local chamado keystore. O keystore é normalmente implementado na forma de arquivos, protegendo as chaves privadas com passwords.

A keytool fica na pasta bin do diretório do j2sdk.

Certificado do Servidor

Para a criação do certificado do servidor, acesse o diretório C:\Arquivos de programas\Java\jdk1.5.0_12\bin e execute:

keytool -genkey -keystore localhost -alias softwell -keyalg RSA keystore "C:\CertificadoSSL\softwell.keystore”

Preencha os campos:

Enter keystore password: 123456

What is your first and last name?

[Unknown]: admin

What is the name of your organizational unit?

[Unknown]: Softwell Solutions

What is the name of your organization?

[Unknown]: Softwell Solutions

What is the name of your City or Locality?

[Unknown]: Salvador

What is the name of your State or Province?

[Unknown]: Bahia

What is the two-letter country code for this unit?

[Unknown]: BR

Is CN=admin, OU=Softwell Solutions, O= Softwell Solutions, L=Salvador, ST=Bahia, C=BR correct?

[no]: yes

Enter key password for <tomcat>

(RETURN if same as keystore password): 123456

O comando acima gera um certificado referenciado pelo alias softwell e que será armazenado em um arquivo chamado softwell.keystore.

O certificado foi gerado utilizando o algoritmo RSA e foi solicitada uma senha para o armazenamento da chave no keystore.

O algoritmo RSA é utilizado, preferencialmente, por ser considerado um algoritmo seguro e por ser compatível com a maioria dos servidores de componentes.

Gerado o arquivo keystore, o próximo passo a realizar é editar o arquivo de configuração do servidor Tomcat.

Abra o arquivo de configuração do servidor server.xml que se encontra na pasta conf do diretório onde o Tomcat está instalado e inclua o código abaixo:

Defina uma porta para o conector SSL. Por padrão, é utilizada a 8443. Informe o caminho onde o arquivo keystore se encontra.

Certificado do Cliente

Para a criação do certificado do cliente; é utilizado o comando abaixo no diretório C:\OpenSSL\bin:

openssl req -new -newkey rsa:1024 -nodes -out C:\CertificadoSSL\CLIENTE.req -keyout C:\CertificadoSSL\CLIENTE.key

A mensagem abaixo significa que o arquivo foi criado.

Preencha as informações:

Country Name (2 letter code) [AU]:BR

State or Province Name (full name) [Some-State]:Bahia

Locality Name (eg, city) []:Salvador

Organization Name (eg, company) [Internet Widgits Pty Ltd]:

Organizational Unit Name (eg, section) []:

Common Name (eg, YOUR name) []:JOAO DA SILVA

Email Address []:

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:123456

An optional company name []:

Assinar os certificados

Importando as informações da Chave Privada Para o arquivo keystore do Servidor

Execute o seguinte comando no diretório C:\Arquivos de programas\Java\jdk1.5.0_12\bin:

keytool -import -keystore C:\CertificadoSSL\softwell.keystore -file C:\CertificadoSSL\CA.pem -alias myautoCA

Enter keystore password: 123456

Owner: [email protected], CN=localhost, OU=Softwell Solutions,

O=Softwell Solutions, L=Salvador, ST=Bahia, C=BR

Issuer: [email protected], CN=localhost, OU=Softwell Solutions,

O=Softwell Solutions, L=Salvador, ST=Bahia, C=BR

Serial number: e4d11b87e3619e81

Valid from: Wed Aug 13 14:12:31 BRT 2008 until: Mon Aug 12 14:12:31 BRT 2013

Certificate fingerprints:

MD5: F1:35:6F:42:1E:48:CA:0C:7D:C5:78:77:76:74:52:8C

SHA1: 2B:9D:D4:E4:C9:92:79:54:62:33:BA:4D:B4:52:15:4B:C2:E5:DB:26

Trust this certificate? [no]: yes

Certificate was added to keystore

Assinando o Certificado do Cliente

Execute o seguinte comando no diretório C:\OpenSSL\bin:

openssl x509 -req -in C:\CertificadoSSL\CLIENTE.req -CA C:\CertificadoSSL\CA.pem -CAkey C:\CertificadoSSL\CA.key -CAcreateserial -out C:\Certificado\CLIENTE.pem

A mensagem que será exibida abaixo do comando, significa que o Certificado foi assinado.

Gerando o Arquivo CLIENTE.p12

O arquivo CLIENTE.p12 contém as informações do certificado digital gerado e da chave privada do servidor.

Para gerar o arquivo, execute o seguinte comando no diretório C:\OpenSSL\bin:

openssl pkcs12 -export -in "C:\CertificadoSSL\CLIENTE.pem" -inkey "C:\CertificadoSSL\CLIENTE.key" -out "C:\CertificadoSSL\CLIENTE.p12"

Enter export password: 123321

Verifying export password: 123321

O certificado está pronto e já pode ser utilizado.

Como carregar o Certificado Digital no browser

Internet Explorer:

  • Selecione o menu Ferramentas, em seguida, Opção da Internet;

  • Abra a aba Conteúdo. Clique no botão Certificados, importe o certificado e digite uma senha;

  • Clique no botão Avançar e depois no botão Procurar. Em seguida, localize o certificado e confirme todos os passos.

Mozilla Firefox:

  • Selecione o menu Ferramentas, na aba Criptografia, clique no botão Certificados, em seguida, importe o certificado;

  • Localize o certificado, digite uma senha e confirme todos os passos.

____________________________________________________________________________

Caso este tópico não tenha comentário satisfatório, envie e-mail para [email protected]