Renova certificados de cliente SSL

1

Para um software baseado na web usado internamente, que deve estar disponível em qualquer lugar, criei certificados de clientes instalados nos navegadores de consumidores autorizados.

Agora, com o término de 2012, todos eles expiraram e precisam ser renovados. Eu dei certificados PKCS # 12 (.p12)

Aqui minhas perguntas

  • É possível estender o tempo de vida do certificado do cliente?
  • Eu preciso reinstalar o certificado em todos os clientes ou existe outra maneira (por exemplo, centralmente do servidor, algum tipo de mecanismo de atualização talvez)?

  • Como faço para renovar / regenerar certificados de cliente usando o openssl no linux?

Como isso pode ser interessante, veja como eu criei os certificados de navegador

# client private key
openssl genrsa -des3 -out client.key 1024

# generate certificate signing request
openssl req -new -key client.key -out client.csr

# create certificate, sign with server key
openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt

# export into pkcs12
openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12
    
por Michel Feldheim 01.01.2013 / 17:28

1 resposta

2

Is it possible to extend the client certificate lifetime?

Não, isso não é possível.
O certificado do cliente tem uma determinada data de validade que não pode ser alterada. A única possibilidade é criar um novo certificado com uma nova data de validade.

Do I have to reinstall the certificate on all clients or is there another way

Você não tem acesso aos certificados no navegador do seu cliente a partir do seu servidor. O que você pode fazer é desenvolver uma página da Web (autenticada com certificados de cliente) que permita aos usuários criar um novo certificado e importá-lo para o navegador.
No lado do servidor desta página da Web, você pode criar um novo certificado com a mesma solicitação de certificado usada no ano passado (um pouco menos segura) ou criar uma nova solicitação de certificado com as informações que você tem sobre o usuário em seu banco de dados. Você pode fazer isso com o openssl da mesma forma que você descreveu em sua postagem.

How do I renew / regenerate client certificates using openssl on linux

Como escrevi na pergunta anterior, você precisa criar um novo certificado. Você pode fazer isso usando a solicitação de certificado usada no ano passado ou criar uma nova (mais segura, mas também mais complexa). Então você precisa assinar esse pedido com a chave do servidor e exportá-lo para o pkcs12.

Eu manteria seu tempo atual de validade (1 ano), mesmo que seja um problema renovar os certificados. Como quanto mais tempo os certificados são válidos, maior é a alteração, que algum usuário autorizado se torna não autorizado, mas ainda tem um certificado válido.

    
por 03.01.2013 / 20:27