Il forum è andato offline, poi errore di rinnovo del certificato riguardo la configurazione del firewall?

Ciao!

Il mio forum è andato offline stanotte, tra le 10 e le 17 ore fa (non riesco a dire precisamente). Le pagine sembravano caricare versioni in cache e molte risorse non venivano caricate.

Ho fermato e riavviato il container senza successo.

L’ho ricostruito (una volta) e ora ho un messaggio di certificato scaduto.

https://www.ssllabs.com/ssltest/analyze.html?d=unicyclist.com restituisce:
Valido fino a Mer, 13 apr 2022 23:22:28 UTC (scaduto 11 ore e 15 minuti fa) SCADUTO

acme.sh.log mi dice questo:

Errore creazione nuovo ordine. Le_OrderFinalize non trovato. {
  "type": "urn:ietf:params:acme:error:rateLimited",
  "detail": "Errore creazione nuovo ordine :: troppe autorizzazioni fallite di recente: vedi https://letsencrypt.org/docs/rate-limits/",
  "status": 429
}

Ho esaminato il log più attentamente e ho visto in precedenza più volte, una volta al giorno da marzo (non abbastanza per attivare il limite di frequenza di Letsencrypt, per quanto riguarda i miei log):

unicyclist.com:Errore verifica:Recupero http://unicyclist.com/.well-known/acme-challenge/uSv1JIUxVs-Nn7Zn2cIZO355KGaqrtutELs4pgw67_Y: Timeout durante la connessione (probabile problema firewall)

Ho impostato queste regole del firewall su Hetzner all’inizio di marzo:

Quindi, in sostanza, ho alcune domande:

  1. Queste regole del firewall di Hetzner potrebbero essere il problema? Se sì, quale/i regola/e mancano che potrebbero causare il problema? Ho rimosso tutte queste regole al momento, comunque.

  2. Perché ho avuto il messaggio unicyclist.com:Errore verifica:Recupero […] Timeout durante la connessione (probabile problema firewall) 10 volte in una singola ricostruzione stamattina? Una singola ricostruzione potrebbe attivare il limite di frequenza di Letsencrypt? :thinking:

  3. Dato che ho raggiunto un limite di frequenza, ciò significa che il mio forum è fondamentalmente offline per una settimana e non posso farci niente? :grimacing:

[quote=“Canapin, post:1, topic:224261”]
Dato che ho raggiunto un limite di frequenza, significa che il mio forum è fondamentalmente inattivo per una settimana e non posso farci niente? :grimacing:
[/quote]La soluzione che ho utilizzato è aggiungere un secondo nome host (ad esempio, www, ma potrebbe essere qualsiasi cosa) come suggerito in Configurazione di Let’s Encrypt con domini multipli, ma credo che ci siano state alcune modifiche ai template che fanno sì che queste istruzioni non funzionino. Quello che ho fatto per un altro sito un paio di giorni fa è stato modificare /etc/runit/1.d/letsencrypt e aggiungere -d newdomain nei punti in cui si vede -d realdomain. Quindi assicurati che il nuovo dominio sia puntato al tuo server ed esegui /etc/runit/1.d/letsencrypt.

Potrebbe anche essere necessario aprire la porta 80. La mia comprensione è che non sia necessaria quando c’è un certificato valido, ma tu non hai un certificato valido, quindi penso che debba leggere dalla porta 80 per iniziare. Non c’è alcuno svantaggio nell’avere la porta 80 aperta, poiché alcune persone potrebbero provare ad accedere tramite http:// e se hai la porta 80 aperta possono essere reindirizzate a https.

Lavorerò per aggiornare quelle istruzioni, ma domani arriva un camion traslocatore e dovrei davvero prepararmi per quello piuttosto che pubblicare su meta. :slight_smile:

3 Mi Piace

Grazie per la tua risposta!
L’utilizzo di un nuovo dominio/sottodominio richiederebbe comunque un “rebake” di tutti i post? Ho 1,6 milioni di post. Un “rebake” attiverebbe anche il limite di frequenza per l’incorporamento di YouTube, come ho riscontrato quando ho importato questo forum da vBulletin.

Il problema con un nuovo dominio/sottodominio temporaneo è che non sono il proprietario del dominio su cui è ospitato il mio forum, il che è piuttosto fastidioso. Le risposte del proprietario possono essere lente e, se qualcosa va storto, sono altre email che vanno avanti e indietro… Non molto pratico :grimacing:

Ho effettivamente visto su Challenge Types - Let's Encrypt che la porta 80 dovrebbe essere disponibile in alcune “sfide” (non so che tipo di sfida venga utilizzata quando si rinnova un certificato da Discourse).


Oltre a questo, sono davvero interessato a sapere un po’ di più su quelle che sembrano essere 10 sfide fallite (è pari a una richiesta di certificato?) durante una singola ricostruzione.

Forse una risposta ufficiale a riguardo potrebbe essere interessante?

Perché se per qualche motivo questo innesca più richieste di certificati di quelle permesse dal limite di frequenza di Let’s Encrypt, allora non dovrebbe comportarsi in questo modo :white_question_mark:

Estratto di acme.sh.log:

[Thu 14 Apr 2022 10:29:01 AM UTC] payload
[Thu 14 Apr 2022 10:29:01 AM UTC] POST
[Thu 14 Apr 2022 10:29:01 AM UTC] _post_url='https://acme-v02.api.letsencrypt.org/acme/chall-v3/98157717290/JXMDvA'
[Thu 14 Apr 2022 10:29:01 AM UTC] _CURL='curl --silent --dump-header /shared/letsencrypt/http.header  -L '
[Thu 14 Apr 2022 10:29:01 AM UTC] _ret='0'
[Thu 14 Apr 2022 10:29:01 AM UTC] code='200'
[Thu 14 Apr 2022 10:29:01 AM UTC] Pending
[Thu 14 Apr 2022 10:29:01 AM UTC] sleep 2 secs to verify
[Thu 14 Apr 2022 10:29:03 AM UTC] checking
[Thu 14 Apr 2022 10:29:03 AM UTC] url='https://acme-v02.api.letsencrypt.org/acme/chall-v3/98157717290/JXMDvA'
[Thu 14 Apr 2022 10:29:03 AM UTC] payload
[Thu 14 Apr 2022 10:29:03 AM UTC] POST
[Thu 14 Apr 2022 10:29:03 AM UTC] _post_url='https://acme-v02.api.letsencrypt.org/acme/chall-v3/98157717290/JXMDvA'
[Thu 14 Apr 2022 10:29:03 AM UTC] _CURL='curl --silent --dump-header /shared/letsencrypt/http.header  -L '
[Thu 14 Apr 2022 10:29:04 AM UTC] _ret='0'
[Thu 14 Apr 2022 10:29:04 AM UTC] code='200'
[Thu 14 Apr 2022 10:29:04 AM UTC] unicyclist.com:Verify error:Fetching http://unicyclist.com/.well-known/acme-challenge/uSv1JIUxVs-Nn7Zn2cIZO355KGaqrtutELs4pgw67_Y: Timeout during connect (likely firewall problem)
[Thu 14 Apr 2022 10:29:04 AM UTC] pid

Poi, pochi secondi dopo:

[Thu 14 Apr 2022 10:29:18 AM UTC] payload
[Thu 14 Apr 2022 10:29:19 AM UTC] POST
[Thu 14 Apr 2022 10:29:19 AM UTC] _post_url='https://acme-v02.api.letsencrypt.org/acme/chall-v3/98157816830/tzknWw'
[Thu 14 Apr 2022 10:29:19 AM UTC] _CURL='curl --silent --dump-header /shared/letsencrypt/http.header  -L '
[Thu 14 Apr 2022 10:29:19 AM UTC] _ret='0'
[Thu 14 Apr 2022 10:29:19 AM UTC] code='200'
[Thu 14 Apr 2022 10:29:19 AM UTC] unicyclist.com:Verify error:Fetching http://unicyclist.com/.well-known/acme-challenge/UUi8goql9f4QjXwqdk_CUISDmwUpLHqhrSqwbr5D2aY: Timeout during connect (likely firewall problem)
[Thu 14 Apr 2022 10:29:19 AM UTC] pid

E così via, 10 volte durante questa ricostruzione.

Non ne so molto, quindi forse fraintendo completamente le cose.

È necessario aprire la porta 80. È richiesta per il rinnovo del certificato. Inoltre, il tuo sito non funzionerà per le persone che tenteranno di accedervi tramite HTTP per la prima volta, poiché non riceveranno il reindirizzamento permanente a HTTPS.

6 Mi Piace

Ho ricostruito il forum con la porta 80 disponibile e il mio forum è di nuovo online. Non ho dovuto aspettare una settimana.

Grazie!

4 Mi Piace

Sono contento che abbia funzionato! (Per la mia soluzione alternativa per troppe richieste Let’s Encrypt, non cambi l’URL del forum, aggiungi solo un secondo dominio alla richiesta del certificato. Può essere qualsiasi altro dominio, quindi potresti puntare un dominio che possiedi al forum e ricostruire come ho suggerito, ma per fortuna non ne hai avuto bisogno.)

1 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.