Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 
 

Ele tem o objetivo de ensinar como tornar o seu website mais seguro obtendo um certificado SSL gratuito, habilitando HTTPS criptografados em servidores web. Você usará o Certbot para obter um certificado SSL gratuito para o Nginx no Ubuntu 22.04 e configurar seu certificado para ser renovado automaticamente.

 

PASSO 1 - INSTALANDO O CERTBOT:

 

Vamos usar o Let’s Encrypt para obter um certificado SSL, portanto vamos instalar o software Certbot e seu plug-in do Nginx para realizar essa tarefa. Use o comando a seguir no terminal linux:

sudo apt install certbot python3-certbot-nginx

 

PASSO 2 - CONFIGURANDO O NGINX:

 

O Certbot pode configurar automaticamente o SSL para o Nginx, porem ele precisa encontrar o bloco de server correto na sua configuração. Ele faz isso procurando uma diretiva server_name que corresponda ao domínio para o qual você está solicitando um certificado. Se você está começando com uma nova instalação do Nginx, você pode atualizar o arquivo de configuração padrão. Abra-o com o seu editor de texto favorito em /etc/nginx/sites-available/default e encontre a linha server_name existente e substitua o sublinhado _ pelo seu nome de domínio, como no exemplo: "server_name exemplo.com", você pode também colocar mais de um domínio ou subdomínios: "server_name exemplo.com www.exemplo.com". Salve o arquivo e saia do seu editor.


Recarregue o Nginx para carregar a nova configuração usando o comando a seguir no terminal linux:

sudo systemctl reload nginx

O Certbot agora consegue encontrar o bloco de server correto e atualizá-lo automaticamente.

PASSO 3 - OBTENÇÃO DE UM CERTIFICADO SSL:

 

ATENÇÃO: Antes de começar esse passo, você precisa apontar o DNS do domínio/subdomínio para o IP da máquina onde está ocorrendo a instalação do certificado.

O Certbot fornece uma variedade de maneiras de obter certificados SSL, através de vários plug-ins. O plug-in Nginx irá cuidar de reconfigurar o Nginx e recarregar a configuração sempre que necessário. Use o comando a seguir no terminal linux:

sudo certbot --nginx -d exemplo.com

Onde está exemplo no comando acima mude para o seu domínio.

 

Se quiser pode adicionar mais domínios e/ou subdomínios:

sudo certbot --nginx -d exemplo.com -d www.exemplo.com

Se esta for sua primeira vez executando o Certbot , você será solicitado a digitar um endereço de e-mail e concordar com os termos de serviço. 

Depois disso, o Certbot se comunicará com o servidor Let's Encrypt e executará um desafio para verificar se você controla o domínio para o qual está solicitando um certificado. Se isso for bem-sucedido, o Certbot perguntará como você gostaria de definir suas configurações de HTTPS. 

 Saída 
 Por favor, escolha se deseja ou não redirecionar o tráfego HTTP para HTTPS, removendo o acesso HTTP.
 -------------------------------------------------- -----------------------------
 1: Nenhum redirecionamento - Não faça mais alterações na configuração do servidor da web.
 2: Redirecionar - Redirecionar todas as solicitações para o acesso HTTPS seguro.  Escolha isto para
 novos sites ou se tiver certeza de que seu site funciona em HTTPS.  Você pode desfazer isso
 mudar editando a configuração do seu servidor web.
 -------------------------------------------------- -----------------------------
 Selecione o número apropriado [1-2] e depois [enter] (pressione 'c' para cancelar):

 

Selecione sua escolha e pressione ENTER . A configuração será atualizada e o Nginx será recarregado para pegar as novas configurações. O Certbot irá finalizar com uma mensagem informando que o processo foi bem sucedido e onde seus
certificados estão armazenados:

 

 Saída 
 ANOTAÇÕES IMPORTANTES:
 Parabéns!  Seu certificado e cadeia foram salvos em
    /etc/letsencrypt/live/example.com/fullchain.pem.  Seu certificado
    expiram em 2017-10-23.  Para obter uma versão nova ou ajustada deste
    certificado no futuro, simplesmente execute certbot novamente com o
    opção "certonly".  Renovar de forma não interativa * todos * os seus
    certificados, execute "certbot renew"
  - As credenciais da sua conta foram salvas no seu Certbot
    diretório de configuração em / etc / letsencrypt.  Você deveria fazer um
    backup seguro desta pasta agora.  Este diretório de configuração
    também contém certificados e chaves privadas obtidos pela Certbot assim
    fazer backups regulares desta pasta é ideal.
  - Se você gosta do Certbot, considere apoiar nosso trabalho:

    Doando para ISRG / Let's Encrypt: https://letsencrypt.org/donate
    Doando para a EFF: https://eff.org/donate-le

 

Seus certificados são baixados, instalados e carregados automaticamente. Tente recarregar seu site usando https:// e observe o indicador de segurança do seu navegador. Ele deve indicar que o site está protegido corretamente, geralmente com um ícone de cadeado verde. Vamos terminar testando o processo de renovação.

 

PASSO 4 - RENOVAÇÃO AUTOMÁTICA DO CERTIFICADO SSL:

 

Os certificados da Let’s Encrypt possuem validade de apenas 90 dias. Isso visa incentivar os usuários a automatizar o processo de renovação de certificados. O pacote Certbot que instalamos cuida disso, adicionando um temporizador systemd que será executado duas vezes por dia e renovará automaticamente qualquer certificado que esteja dentro de 30 dias da expiração.

 

Você pode consultar o status do temporizador com o systemctl usando o seguinte comando no terminal linux:

sudo systemctl status certbot.timer


Ele deve retornar a mensagem: 

 

Resultado:
● certbot.timer - execute o certbot duas vezes por dia
Carregado: carregado (/lib/systemd/system/certbot.timer; ativado; predefinição de fornecedor: ativado)
Ativo: ativo (em espera) desde Seg 2020-05-04 20:04:36 UTC; 2 semanas 1 dias atrás
Disparador: Qui 2020-05-21 05:22:32 UTC; 9h restantes
Gatilhos: ● certbot.service

 

Para testar o processo de renovação, você pode realizar uma simulação com o Certbot usando o seguinte comando no terminal linux: 

sudo certbot renew --dry-run

Se não aparecerem erros, tudo funcionou. Quando necessário, o Certbot renovará seus certificados e recarregará o Nginx para aplicar as alterações. Se o processo de renovação automatizada alguma vez falhar, a Let’s Encrypt enviará uma mensagem para o e-mail que você especificou, informando quando o certificado vai expirar.

 

PASSO 5 - PERMITINDO O TRÁFEGO HTTPS PELO FIREWALL:

 

Para permitir adicionalmente o tráfego HTTPS, podemos permitir o perfil Completo Nginx e, em seguida, excluir a tolerância do perfil HTTP Nginx redundante, use os seguintes comandos no terminal linux:

sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'

 

Para verificar as regras ativas no firewall UFW use o seguinte comando no terminal linux:

sudo ufw status

A mensagem de retorno deve ter algo parecido com isso:

Output
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)

 

Agora estamos prontos para executar o Certbot e buscar nossos certificados.

 

A princípio é isso!

 

Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 

 

Fontes: 
https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04

Editado por luanluciano93 (veja o histórico de edições)

  • Respostas 13
  • Visualizações 7.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

Postado

Parabéns, seu tópico de conteúdo foi aprovado!
Muito obrigado pela sua contribuição, nós do Tibia King agradecemos.
Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.

Spoiler

Congratulations, your content has been approved!
Thank you for your contribution, we of Tibia King we are grateful.
Your content will help many other users, you received +1 REP.

 

Um puta de um lindo tutorial, vlw por trazer, a um tempo atrás pensei sobre isso e resolvi entender mais sobre os certificados, mas outras pendências não permitiu continuar a procura. Kkkkk, obrigado por compartilhar!

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Postado

bão d+

Postado

@luanluciano93, muito útil o tutorial. Só uma pergunta, dessa forma que tu fez ele já configura para enviar o tráfego do http para o https? Eu tentei alguns meses atrás e não sei se fiz algo errado, mas, eu tive que configurar para ele redirecionar o tráfego, se não o site ficava inacessível pelo http. By the way, dá para fazer com Apache2 também.

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo