1. Gerar um novo certificado para o mesmo cliente/servidor
Temos duas opções:
Opção A: Reutilizar a mesma chave privada
Mais rápido, útil se a chave está protegida e ainda segura.
./easyrsa renew nome-do-certificado
Isso usa a mesma chave e gera um novo certificado com nova validade (respeitando o EASYRSA_CERT_EXPIRE
definido).
Obs.: O comando
renew
só funciona se o certificado original não foi revogado e ainda está presente nopki/index.txt
.
Opção B: Gerar uma nova chave e CSR
Se preferir mais segurança, ou a chave antiga é suspeita.
./easyrsa gen-req nome-do-certificado nopass
Isso gera:
pki/private/nome-do-certificado.key
pki/reqs/nome-do-certificado.req
Depois, assine o CSR com a CA:
./easyrsa sign client nome-do-certificado
# ou "sign server" se for servidor
2. Distribuir o novo certificado
Copie os novos arquivos para o cliente ou servidor:
- Novo
.crt
- A chave
.key
(se foi regenerada) - A CA (
pki/ca.crt
) — geralmente não muda
No OpenVPN, por exemplo, atualize o cliente com os novos arquivos.
3. (Opcional) Revogar o certificado antigo (se ainda for válido)
Se o certificado antigo ainda não foi revogado (apenas expirado), você pode formalmente revogá-lo:
./easyrsa revoke nome-do-certificado
./easyrsa gen-crl
Depois, distribua a nova pki/crl.pem
ao servidor (ex: OpenVPN usa ela para validar certificados).
4. (Opcional) Aumentar o tempo de validade padrão
Se quiser que os novos certificados durem mais (ex: 2 anos = 730 dias):
export EASYRSA_CERT_EXPIRE=730
./easyrsa gen-req nome ...
# ou
./easyrsa renew nome
Ou adicione isso ao seu script de env (vars
).
Dicas
- Sempre guarde backups dos certificados e chaves.
- Use
openssl x509 -in arquivo.crt -noout -enddate
para ver quando expira. - Automatize verificação de validade com scripts (posso montar um para você).