Adicionando certificado SSL grátis do Let's Encrypt no NGINX
Baixe o cerbot e dê permissão de execução:
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
Se preferir, coloque o certbot no PATH do sistema.
Você precisa indicar o caminho do “.well-known” do seu site, para o Let’s Encrypt conseguir confirmar que o site é realmente seu. Ajuste os caminhos de acordo com sua arquitetura.
server {
listen 80;
listen [::]:80;
server_name meusite.com www.meusite.com;
location ~ ^/.well-known {
root /var/www/meusite;
}
location / {
return 301 https://$server_name$request_uri;
}
}
Reinicie o NGINX para carregar as novas configurações.
sudo service nginx restart
Agora você vai rodar o comando que irá validar seu domínio e obter o certificado se tudo estiver configurado corretamente:
sudo ./certbot-auto certonly --webroot -w /var/www/meusite -d meusite.com.br -d www.meusite.com.br
Se o processo for concluído com sucesso, adicione mais uma diretiva ao seu arquivo de configuração, que será responsável por servir a versão https do seu site:
server {
listen 443 ssl;
listen [::]:443;
server_name meusite.com www.meusite.com;
ssl_certificate /etc/letsencrypt/live/meusite.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/meusite.com/privkey.pem;
location ~ ^/.well-known {
root /var/www/meusite;
}
location / {
...
}
}