Sì, la sfida HTTP-01 funziona in congiunzione con Cloudflare in modalità “orange cloud”. Ma non funziona tramite HTTPS, la sfida HTTP-01 funziona solo sulla porta 80, e:
Molte persone che utilizzano Cloudflare impostano Cloudflare per reindirizzare automaticamente HTTP a HTTPS, e questo rende la porta 80 sul server di origine non disponibile, e questo impedisce il funzionamento delle sfide HTTP-01.
Quindi, se non si abilitano questi reindirizzamenti, funzionerà.
Quindi, a rigor di termini, questo non è vero.
Let’s Encrypt fallirà se Cloudflare è impostato per reindirizzare il traffico sulla porta 80 prima che raggiunga il server di origine.
Sono d’accordo, tuttavia, poiché la sicurezza IT è ora più presente che mai e le persone iniziano a lavorare maggiormente con prodotti Zero Trust, di cui CF Tunnel fa parte, vedremo e dovremmo vedere un aumento dell’utilizzo di questo tipo di tecnologia, ecco perché l’ho sollevata.
Penso che tu abbia frainteso come funziona la sfida HTTP-01 di LE.
Cerca il token che certbot o altre varianti del client LE inseriscono, il più delle volte, nella sottocartella .well-known del webserver.
Ma non è codificato in modo da avviare la richiesta sulla porta 80, ignorare eventuali reindirizzamenti del codice HTTP e fallire completamente se non riesce a trovare il token.
La sfida HTTP-01 è in grado di seguire i reindirizzamenti HTTP (quindi 301 e 302) ed è quindi in grado di leggere la cartella .well-known tramite 443 e HTTPS.
E il motivo per cui funziona con Cloudflare Universal SSL CON Reindirizzamento (e Cloudflare Tunnel) è che Cloudflare risponde al posto del webserver sulla porta 80, reindirizza la richiesta alla porta 443, dove LE può leggere il token e la CA può emettere il certificato.
Diagramma di alto livello del flusso:
Certbot avvia HTTP-01
→ POST richiesta certificato alla CA e inserisce il token in .well-known
→ La CA avvia GET per il Token su FQDN porta 80
→ CF reindirizza alla porta 443 e protegge la richiesta con il suo certificato Universal SSL
→ La richiesta viene inoltrata al webserver stesso (tramite CF Tunnel o diretto)
→ La CA è in grado di ottenere il token in .well-known perché la porta 443 è in grado di presentare il token allo stesso modo in cui farebbero HTTP e la porta 80
→ La CA invia tramite POST i dati RAW del certificato e Certbot crea i file
Penso di averla capita abbastanza bene. Hai ragione, può essere reindirizzata a HTTPS, ma dipende dalle impostazioni di Cloudflare e dalla configurazione del webserver se ciò funzionerà o meno, poiché inizialmente non ci sarà un certificato valido sul server di origine.
Sì, possono essere reindirizzate a una porta diversa, ma le sfide HTTP-01 devono sempre iniziare sulla porta 80.
La sfida HTTP-01 può essere eseguita solo sulla porta 80. Consentire ai client di specificare porte arbitrarie renderebbe la sfida meno sicura, quindi non è consentito dallo standard ACME.
Sono d’accordo, ho solo sottolineato la tua imprecisione sul fatto che non funzionerà mai.
La citazione della mia frase che hai eseguito qui è piuttosto subdola poiché suggerisce la circostanza sbagliata della discussione e implica un altro significato. La mia frase completa era
e la parte importante della mia frase era la combinazione di “codificato in modo fisso per avviare la richiesta sulla porta 80” E “ignora qualsiasi reindirizzamento HTTP” E “fallisce immediatamente”, poiché hai detto
e questo implica che il motivo del fallimento della sfida HTTP-01 sia solo il reindirizzamento, il che non è vero.
Inoltre, a rigor di termini, un reindirizzamento non rende la porta 80 “non disponibile”.
Rende la porta 80 del server di origine non disponibile per tutto il traffico diretto all’hostname.
Non mi piace il tono attuale della conversazione in questo argomento, quindi lo sto smettendo di seguire.
La mia opinione su Cloudflare in combinazione con Discourse può essere riassunta come “molte persone apparentemente non sono in grado di configurarlo correttamente, quindi in generale ne sconsiglierei l’attivazione. Se si desidera utilizzarlo per la protezione DDoS, allora ne consiglierei l’attivazione con impostazioni molto specifiche.”
Questa potrebbe essere un’altra domanda stupida, ma dato che mi rivolgo solo a un pubblico finlandese, non vedo alcun motivo per usare Cloudflare, quindi lo conosco solo per reputazione.
Ma se il suo unico vantaggio è fermare i DDoS, e i DDoS significano principalmente troppe chiamate effettuate da
crawler SEO inutili
altri bot creati da script kiddies
allora perché non usare Nginx davanti a Discourse e fermare gli user agent noti lì? Se combinato con Fail2ban, ciò ridurrebbe il carico di circa il 90% (statistica di Stetson, ma comunque molta).
Questa discussione è molto preziosa. Per un amministratore di siti web cinese, Flare può significare se gli utenti cinesi possono scambiare dati normalmente con il mondo esterno. Ho fatto un test qualche tempo fa. Se non si utilizza Orange Cloud e si accede a server in altri paesi dalla Cina, il jitter di rete sarà molto serio. La cosa peggiore è che gestire un forum in Cina è soggetto a una rigorosa censura. Anche se gestivo un forum non politico, ho comunque subito. Dobbiamo presumere che il server del sito web si trovi al di fuori della Cina. Quindi, se creo un forum utilizzando Discourse, devo considerare se può utilizzare Cloud Flare.