Utilizando o certbot é possível gerar e assinar digitalmente certificados ssl para seu webserver utilizar https gratuitamente.
Embora o certbot possua algumas limitações, acreditamos que seu uso é adequado para soluções iniciais e/ou pequenas empresa.
Veja a seguir como realizar a instalação do certbot e configuração de um ssl para seu dominio usando o certbot com nginx no linux ubuntu 20.04:
*obs: também é possível utilizar o certbot para assinar certificados já gerados e também utilizá-lo com apache2. Este tutorial destina-se à sua utilização com nginx
É importante que o domínio já esteja apontado para seu webserver, caso contrário o certbot retornará um erro. A porta deve estar liberada e o domínio escutando-a corretamente (porta http)
Instalando o Certbot
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt install certbot python3-certbot-nginx
Gerando o certificado para um domínio específico configurado no nginx
sudo certbot --nginx -d dominiosemwww.com -d www.dominiocomwww.com
O certbot perguntará diversas coisas. Incluindo se deseja redirecionar o tráfego http para https. Recomendamos que você permita o redirecionamento.