Sim, o desafio HTTP-01 funciona em conjunto com o Cloudflare no modo “nuvem laranja”. Mas não funciona via HTTPS, o desafio HTTP-01 só funciona na porta 80, e:
Muitas pessoas que usam o Cloudflare configuram o Cloudflare para redirecionar automaticamente HTTP para HTTPS, e isso torna a porta 80 no servidor de origem indisponível, e isso impede que os desafios HTTP-01 funcionem.
Portanto, se você não habilitar esses redirecionamentos, funcionará.
Portanto, estritamente falando, isso é falso.
O Let’s Encrypt falhará se o Cloudflare for configurado para redirecionar o tráfego na porta 80 antes que ele chegue ao servidor de origem.
Concordo, no entanto, como a segurança de TI está mais presente do que nunca e as pessoas começam a trabalhar mais com produtos Zero Trust, dos quais o CF Tunnel faz parte, veremos e deveríamos ver um aumento na utilização desse tipo de tecnologia, é por isso que eu a mencionei.
Acho que você entendeu mal como o desafio HTTP-01 do LE funciona.
Ele procura o token que o certbot ou outra variante do cliente LE colocou, na maioria das vezes, na subpasta .well-known do servidor web.
Mas não está codificado para iniciar a solicitação na porta 80, ignorar quaisquer redirecionamentos de código HTTP e falhar completamente se não conseguir encontrar o token.
O desafio HTTP-01 é capaz de seguir redirecionamentos HTTP (portanto, 301 e 302) e, portanto, é capaz de ler a pasta .well-known através da porta 443 e HTTPS.
E o motivo pelo qual funciona para o SSL Universal da Cloudflare COM Redirecionamento (e Cloudflare Tunnel) é que a Cloudflare responde no lugar do servidor web na Porta 80, redireciona a solicitação para a porta 443, onde o LE pode ler o token e a CA pode emitir o certificado.
Diagrama de alto nível do fluxo:
Certbot inicia HTTP-01
→ POSTs solicitação de certificado para a CA e coloca o token em .well-known
→ CA inicia GET para Token no FQDN porta 80
→ CF redireciona para a porta 443 e protege a solicitação com seu certificado SSL Universal
→ A solicitação é encaminhada para o próprio servidor web (através do CF Tunnel ou direto)
→ A CA é capaz de obter o token em .well-known porque a porta 443 é capaz de apresentar o token da mesma forma que o HTTP e a porta 80 fariam
→ CA POSTs os dados brutos do certificado e o Certbot cria os arquivos
Acho que entendo muito bem. Você está certo, ele pode ser redirecionado para HTTPS, mas depende das configurações do Cloudflare e da configuração do servidor web se isso funcionará ou não, já que inicialmente não haverá um certificado válido no servidor de origem.
Sim, eles podem ser redirecionados para uma porta diferente, mas os desafios HTTP-01 devem sempre começar na porta 80.
O desafio HTTP-01 só pode ser feito na porta 80. Permitir que os clientes especifiquem portas arbitrárias tornaria o desafio menos seguro e, portanto, não é permitido pelo padrão ACME.
Concordo, apenas apontei sua imprecisão de que isso nunca funcionará diretamente.
A citação da minha frase que você executou aqui é bastante maldosa, pois sugere a circunstância errada de discussão e implica outro significado. Minha frase completa foi
e a parte importante da minha frase foi a combinação de “codificado para iniciar a solicitação na porta 80” E “ignorar qualquer redirecionamento HTTP” E “falhar imediatamente”, já que você disse
e isso implica que a razão pela qual o desafio HTTP-01 falha é apenas o redirecionamento, o que não é verdade.
Além disso, estritamente falando, um redirecionamento não torna a porta 80 “indisponível”.
Torna a porta 80 do servidor de origem indisponível para todo o tráfego direcionado ao nome do host.
Não gosto do tom atual da conversa neste tópico, então vou deixar de segui-lo.
Minha opinião sobre o Cloudflare em combinação com o Discourse pode ser resumida como “muitas pessoas aparentemente não conseguem configurá-lo corretamente, então, em geral, eu recomendaria não ativá-lo. Se você quiser usá-lo para proteção contra DDoS, então eu recomendaria ativá-lo com configurações muito específicas apenas.”
Esta pode ser outra pergunta estúpida, mas como estou atendendo apenas ao público finlandês, não vejo razão para usar o Cloudflare, então o conheço apenas pela reputação.
Mas se seu único benefício é parar DDoS, e DDoS significa principalmente muitas chamadas feitas por
rastreadores de SEO inúteis
outros bots feitos por script kiddies
então por que não usar o Nginx na frente do Discourse e parar user agents conhecidos lá? Quando combinado com Fail2ban, isso reduziria a carga em algo como 90% (estatística de Stetson, é claro, mas ainda assim muito).
Esta discussão é muito valiosa. Para um administrador de site chinês, o Cloudflare pode significar se os usuários chineses podem trocar dados normalmente com o mundo exterior. Fiz um teste há algum tempo. Se você não usar o Orange Cloud e acessar servidores em outros países da China, a instabilidade da rede será muito séria. A coisa maldita é que administrar um fórum na China está sujeito a censura rigorosa. Mesmo que eu estivesse administrando um fórum não político, ainda sofri. Devemos presumir que o servidor do site está localizado fora da China. Portanto, se eu criar um fórum usando Discourse, terei que considerar se ele pode usar o Cloudflare.