AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 781267
Accepted
xpt
xpt
Asked: 2024-08-02 20:17:29 +0800 CST2024-08-02 20:17:29 +0800 CST 2024-08-02 20:17:29 +0800 CST

Sobre a renovação da certificação do Let's Encrypt e o nginx

  • 772

Estou fazendo o Let's Encrypt pela primeira vez e esta pergunta 101 pode ter sido respondida em algum lugar, mas de qualquer forma, em https://eff-certbot.readthedocs.io/en/latest/using.html#setting-up -renovação automatizada

A maioria das instalações do Certbot vem com renovações automáticas pré-configuradas. Isso é feito por meio de uma tarefa agendada que é executada certbot renewperiodicamente.

Então, para simplificar, estou usando o contêiner docker Certbot para obter o certificado, e esse contêiner não vem com renovações automáticas pré-configuradas, portanto, preciso habilitar essa funcionalidade sozinho.

A tarefa cron agendada é bastante simples:

0 0,12 * * * root sleep $SLEEPTIME && certbot renew -q

Minha pergunta é: os certificados Let's Encrypt são válidos por três meses , mas esta recomendação oficial do documento Certbot diz que precisamos tentar a renovação a cada 12 horas .

Isso parece realmente excessivo para mim. Alguém sabe quando poderemos fazer a renovação? (A partir da atualização do certificado "vamos criptografar" na linha de comando, sei que não há --force-renewalopção)

Eu quis dizer, se a renovação puder acontecer com 10 dias de antecedência, então meu cron job poderá ser definido a cada 5 dias; se for com 6 dias de antecedência, usarei 3.

Além disso, alguém sabe se certbot renewo código de retorno de pode ser usado para notificar meu script para acionar o recarregamento da configuração do nginx após a renovação realmente acontecer?

Obrigado

nginx
  • 1 1 respostas
  • 70 Views

1 respostas

  • Voted
  1. Best Answer
    Philip Couling
    2024-08-04T20:10:19+08:002024-08-04T20:10:19+08:00

    Quando você pode renovar?

    Do FAQ deles (ênfase minha)

    Nossos certificados são válidos por 90 dias. Você pode ler sobre o porquê aqui.

    Não há como ajustar isso, não há exceções. Recomendamos renovar automaticamente seus certificados a cada 60 dias.

    Dado que recomendam a renovação a cada 60 dias, é seguro presumir que são renováveis ​​pelo menos 30 dias antes do vencimento.

    Observe que certbotverifica automaticamente a expiração do certificado em relação ao relógio do sistema e, portanto, não disca para nenhuma API quando faltam mais de 30 dias para o certificado expirar. ( referência )

    Com que frequência ele deve ser executado?

    Isso parece realmente excessivo para mim. Alguém sabe quando poderemos fazer a renovação? (A partir da atualização do certificado "vamos criptografar" na linha de comando, sei que não há opção --force-renewal)

    Eu quis dizer, se a renovação puder acontecer com 10 dias de antecedência, então meu cron job poderá ser definido a cada 5 dias; se for com 6 dias de antecedência, usarei 3.

    Eu seria cauteloso com isso, não corte muito pequeno. Você pode desacelerar um pouco, mas lembre-se de que se o certbot falhar, não haverá nova tentativa imediata (ele pode falhar aleatoriamente por qualquer motivo) . Você deseja garantir que, se falhar, terá muitas oportunidades de tentar novamente e ter sucesso antes de expirar. Ninguém gosta que seus serviços falhem devido a erros de TLS/SSL.

    Acionando recarga:

    Então, para simplificar as coisas, estou usando o contêiner docker Certbot para obter o certificado

    ...

    Além disso, alguém sabe se o código de retorno da renovação do certbot pode ser usado para notificar meu script para acionar o recarregamento da configuração do nginx após a renovação realmente acontecer?

    Estranhamente, isso é algo que pode ser sutilmente mais complexo de executar no docker. A maneira canônica de executar o nginx config reload é usar um gancho de implantação usando --deploy-hook <script>.

    Fora do docker, você apenas usaria o script para acionar diretamente o recarregamento da configuração do nginx. Dentro do docker, pode ser necessário escrever um script que deixe um arquivo marcador. Então o comando para solicitar a execução do docker pode ser certbot renew && test -f <marker file>.

    Outras notas

    Apenas um aviso de que pode ser mais simples remover totalmente o TLS/SSL do nginx. Tanto o traefik quanto o caddy podem atuar como um gateway HTTPS em um back-end HTTP não criptografado. Ambos suportam nativamente Letsencrypt, o que significa que você simplesmente não precisa se preocupar em lidar com a renovação do certificado e recarregar a configuração do servidor HTTPS... tudo é feito para você. Minha preferência pessoal é Traefik

    • 3

relate perguntas

  • nginx falha na instalação no Debian estável

  • Nginx gzip_types - uma diretiva redundante em alguns casos?

  • Configuração php-fpm independente da versão Nginx

  • Localização do Nginx ~ /\.ht

  • Hospedando vários aplicativos no Nginx Ubuntu 14.04

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve