Gerar Certificado SSL via mkcert
Olá Pessoal,
Para termos sequência em nossos laboratórios e obviamente para outras características de teste na qual sempre necessitamos ter um certificado para acessar aplicações, desta forma essa é uma boa dica para ambientes que deseja executar um teste onde o certificado é exigido, ou bem como quando migrado esses testes locais para cloud utilizando o mesmo certificado, ou seja, podendo ser utilizado como validação de acesso de sua máquina local para aplicação confiando nesse certificado instalado.
O mkcert é uma ferramenta simples e eficiente para gerar certificados SSL/TLS de forma automática e confiável, sem a necessidade de uma Autoridade Certificadora (CA) pública. Ele é especialmente útil para ambientes de desenvolvimento local e testes em nuvem, garantindo que as aplicações funcionem corretamente com HTTPS sem enfrentar problemas de segurança ou alertas de certificado inválido no navegador.
Como observaram é uma solução rápida e prática e pode agilizar os seus LABs
, porém dependendo de seu sistema operacional algumas ações são diferentes, ou seja, vou colocar para ambos para que vocês possam seguir da melhor forma.
Instalação e criação do rootCA
Executar a instalação no Sistema Operacional correspondente conforme abaixo:
- macOS:
brew install mkcert
brew install nss # If using Firefox
- Windows (via Chocolatey or Scoop):
choco install mkcert # Chocolatey
scoop install mkcert # Scoop
- Linux (Debian/Ubuntu):
sudo apt install mkcert
Neste processo iremos instalar a rootCA localmente em sua máquina para que ela confie em seu certificado. Lembrando que esses comandos devem ser executados uma única vez, independente de quantos certificados posteriores você irá criar para seus domínios.
- macOS/Linux:
mkcert -install
- Windows (Command Prompt or PowerShell as Admin):
mkcert -install
Após o install
um log será gerado e será observado sobre a chave root criada.
Gerar Certificado para uma URL
Neste caso iremos gerar um certificado específico para uma URL. Em meu caso o nome da URL será app1.home.local
mkcert app1.home.local
Neste momento você irá visualizar que foram criados dois arquivos:
- app1.home.local.pem (certificate)
- app1.home.local-key.pem (private key)
Com esses arquivos você já pode utilizar em sua aplicação importando esses arquivos dentro da aplicação para garantir por exemplo uma comunicação fim-a-fim criptografado ou consumir esses arquivos para fazer instalação nos equipamentos que devem fazer proxy para sua aplicação.
Caso você deseje gerar um certificado wildcard
também é possível e simples. Segue abaixo:
mkcert "*.home.local"
Validação arquivo rootCA
Se por acaso você não identificar seu arquivo root no browser ou por algum motivo precisa verificar ele, pode ser consultado da seguinte forma:
- macOS:
security find-certificate -a -c "mkcert"
- Windows:
C:\Users\YourUser\AppData\Local\mkcert
- Linux:
~/.local/share/mkcert
Conclusão
Conforme vocês observaram o mkcert é uma forma prática e rápida para criarmos certificados e utilizarmos em nossos testes. Espero que tenham gostado e se tiver mais dicas fiquem a vontade para compartilhar. 👍
Atte,
Rodrigo