Passo 01 Execute o seguinte comando, trocando «domain» pelo domínio a ser criado.
/var/lib/docker/volumes/nginx_confdata/_data/letsencrypt/certbot-auto certonly --manual -d *."domain".ro.gov.br -d "domain".ro.gov.br --agree-tos --manual-public-ip-logging-ok --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory --force-renew
Passo 02 Aguarde até aparecer uma tela semelhante a imagem.
Passo 03 Adicione as informações sublinhadas no DNS do domínio como registro TXT. Exemplo:
A linha azul é o registro TXT.
_acme-challenge.detic.ro.gov.br. 300 IN TXT "-qroU_lfIgxEH8Rq0rzw2EjRnYB51FKEj34U117iFcQ"
Passo 04 Após ter adicionado o registro, altere o serial e aguarde propagar o registro. Pode ser verificado no dnschecker.org
Passo 05 Após propagado, apertar enter. Pode ser que apareça outro registro TXT, logo repita o passo 3 e 4.
Passo 06 Se tudo ocorrer certo, aparecerá uma imagem semelhante a esta:
Passo 07 Reinicie o container do NGINX.
docker restart <container_id>
PARA RENOVAR COMECE DO PASSO 1 ATÉ O 10 PULANDO O PASSO 7
Passo 08 Acesse:
cd /etc/letsencrypt/live/
Passo 09 Verifique o certificado renovado, se precisar renomeie ou mova o antigo para uma outra pasta, e deixe o novo com o nome do anterior. Exemplo:
mv detic.ro.gov.br detic.ro.gov.br-bk
mv detic.ro.gov.br-0002/ detic.ro.gov.br
O nome do novo certificado geralmente vem com -0002 no final.
Passo 10 Reinicie o container do NGINX
docker restart <container_id>
Passo 01 Criar uma pasta com o nome da aplicação.
mkdir /var/lib/docker/volumes/nginx_confdata/_data/www/<nome_aqui>/
**Passo 02** Criar ou alterar arquivo .config com o seguinte conteúdo.
server {
listen 80;
server_name <url_aqui>;
client_max_body_size 100m;
location /.well-known {
alias /etc/nginx/www/<nome_aqui>/.well-known;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_pass http://<ip_vm>;
}
}
Passo 03 Reinicie o container do NGINX
docker restart <container_id>
Passo 04 Executar o comando para gerar o certificado.
Não esquecer de alterar as informações.
/var/lib/docker/volumes/nginx_confdata/_data/letsencrypt/letsencrypt-auto certonly --webroot -w /var/lib/docker/volumes/nginx_confdata/_data/www/<nome_aqui>/ -d <url_aqui> --force-renew
Passo 05 Alterar arquivo .conf criado ou existente para adicionar certificado e responder por https.
server {
listen 80;
server_name <url_aqui>;
client_max_body_size 100m;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Scheme $scheme;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
location /.well-known {
alias /etc/nginx/www/<nome_aqui>/.well-known;
}
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name <url_aqui>;
client_max_body_size 100m;
ssl_certificate /etc/letsencrypt/live/<certificado_criado>/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/<certificado_criado>/privkey.pem;
ssl_client_certificate /etc/letsencrypt/live/ca-certificates.crt;
ssl_verify_client off;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_stapling on;
ssl_stapling_verify on;
location /.well-known {
alias /etc/nginx/www/<nome_aqui>/.well-known;
}
location / {
add_header X-Served-By $host;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Scheme $scheme;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass https://<ip_vm>;
proxy_ssl_server_name on;
}
}
PARA RENOVAR EXECUTE O COMANDO DO PASSO 4, EM SEGUIDA VERIFIQUE A PARTIR DO PASSO 6.
Passo 06 Acesse:
cd /etc/letsencrypt/live/
Passo 07 Verifique o certificado renovado, se precisar renomeie ou mova o antigo para uma outra pasta, e deixe o novo com o nome do anterior.
Exemplo:
mv detic.ro.gov.br detic.ro.gov.br-bk
mv detic.ro.gov.br-0002/ detic.ro.gov.br
O nome do novo certificado geralmente vem com -0002 no final.
Passo 08 Reinicie o container do NGINX
docker restart <container_id>