Actualizar certificados de SHA-1 para SHA-2

O SHA-1 é considerado inseguro, no entanto continua a ser usado em vários certificados e aplicações de gestão como o CPanel e Plesk continuam a emitir em SHA-1.

É necessária a reemissão dos certificados em SHA-2 para evitar erros nas próximas versões do Google Chrome.

Cão Serra da Estrela

O Chrome vai começar a mostrar erros aos websites com certificados emitidos com o algoritmo SHA-1 para forçar a sua alteração gradual para SHA-2. É já a partir de Novembro que as novas versões do Chrome vão começar a mostrar avisos nos websites com certificados emitidos com SHA-1.

O Internet Explorer e o Firefox vão deixar de suportar estes certificados em 2017, podendo ser apresentados erros antes deste período, à semelhança do Chrome.

Por incrível que pareça a emissão de certificados por aplicações de gestão de servidores como o CPanel ou o Plesk continuam a usar SHA-1. É assim necessário efectuar a emissão manual de uma nova Private Key e CSR.

Com as recentes noticias do POODLE e a desactivação do suporte a SSLv3 para resolver esta situação, nada melhor que aproveitar e actualizar também os certificados para SHA-2.

Emissão manual de um novo certificado em SHA-2

Para fazer a transição de SHA-1 para SHA-2 é necessária a reemissão do certificado. Por SSH no servidor devemos correr o seguinte comando:

1
openssl genrsa -out ssl.key 2048

Este comando vai gerar uma Private Key. Se desejarem um certificado a 4096 bits devem alterar o número de 2048 para 4096.

1
openssl req -sha256 -new -key ssl.key -out ssl.csr

Com este comando vamos gerar o CSR. Ao indicar o parâmetro -sha256 estamos a forçar a emissão em SHA-2.

Ao correr este comando vão ser efectuadas algumas perguntas como o nome da organização e o domínio a que o certificado corresponde para configurar o CSR.

Basta agora copiar a Private Key do ficheiro ssl.key e o CSR do ficheiro ssl.csr para fazer a reemissão do certificado e instalar o mesmo no servidor.

Devemos ainda obter o novo CA (Certificate Authority Bundle) com a chave em SHA-2. Esta chave é disponibilizada pela entidade que emite o certificado.

Certificado self-signed em SHA-2

Se estão a usar um certificado self-signed, por exemplo para proteger uma área de administração de um website, é necessário fazer a emissão do certificado manualmente. Depois de gerar a Private Key e o CSR com os comandos indicados acima corremos o seguinte:

1
openssl x509 -req -sha256 -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt

O certificado vai ser criado no ficheiro ssl.crt.

Instalação do certificado no CPanel

Acedendo ao WHM clicamos em Install an SSL Certificate on a Domain. Em Domain colocamos o domínio que pretendemos, em Certificate colocamos os conteúdos do ficheiro ssl.crt e em Private Key os conteúdos do ficheiro ssl.key.

 
Copyright © 1985 - 2017 Eduardo Maio. Alguns direitos reservados.
eduardomaio.net - Às vezes mais valia ser Agricultor do que Programador
Ao navegar no blog eduardomaio.net está a concordar com os termos legais e de privacidade.