Rinnovo SSL LetsEncrypt non funzionante (a causa di un reverse proxy aggiuntivo all'esterno)

Il certificato per la mia istanza di Discourse è scaduto oggi e il browser restituisce un errore. Ho provato a eseguire il rinnovo manualmente seguendo questa guida:

Il sistema ha indicato che il certificato è stato rinnovato: lo vedo nella cartella /shared/letsencrypt e il rinnovo sembra essere avvenuto correttamente. Ho riavviato nginx all’interno di Docker e ho anche eseguito un rebuild dell’istanza, ma sembra che venga ancora inviato il vecchio certificato.

Ho verificato il dominio con diversi siti web e tutti indicano che il certificato è scaduto, quindi il problema non è solo locale.

Sto tralasciando qualcosa?

Ho eseguito le stesse istruzioni 15 giorni fa.

cd /var/discourse
./launcher enter app
"/shared/letsencrypt"/acme.sh --cron --home "/shared/letsencrypt" --force
exit

La prima cosa che ho imparato è che se visualizzi il certificato con Chrome, potrebbe risultare non valido anche se in realtà è valido. Vedi: Bug di Chrome/Chromium: i certificati SSL mostrano date errate (scadute)

Poi ho provato

me@site:/var/discourse$ sudo ./launcher rebuild app

che non ha funzionato, e infine

sudo reboot

Il sito ha poi funzionato come previsto.


Anche se noto il passaggio relativo al rebuild, non sono sicuro che sia necessario, ma è stato un passaggio che ho eseguito lungo il percorso.

Dopo averci provato per ore, e proprio dopo aver pubblicato questo messaggio, ho capito che, dato che sto usando un deployment multi-sito con un reverse proxy nginx, dovevo anche riavviare il server nginx esterno, e ha iniziato a funzionare istantaneamente.
Lo segnerò come risposta, nel caso qualcuno si trovi in questa situazione.

Penso che l’ultimo sudo reboot abbia funzionato per te perché ha riavviato nginx, che è esattamente ciò che ho indicato nella mia soluzione precedente.

Alcune note al riguardo:

  • nella situazione citata, il browser in realtà non lo mostra come non valido nella barra degli indirizzi
  • a seconda del sistema operativo, potrebbe non segnalare problemi con la data del certificato se lo visualizzi

Hai individuato la causa principale per cui il certificato non si rinnovava automaticamente?

Sul sito ho notato che ciò è dovuto al fatto che non è in modalità produzione, quindi tutte le e-mail sono sospese, comprese quelle che rinnoverebbero il certificato.

image

Il motivo per cui l’e-mail è stata sospesa è che fa parte del processo di ripristino del database; nel caso specifico, è stato ripristinato da un’istanza diversa di Discourse.

L’e-mail è disabilitata per evitare che due siti invino le stesse e-mail.

l’unico modo in cui la posta elettronica è coinvolta nel processo in assoluto è che LE potrebbe inviarti un avviso se il tuo certificato sta per scadere e non lo hai rinnovato

OK. Grazie. Ora devo trovare la causa principale del motivo per cui il certificato non è stato rinnovato automaticamente.

C’è qualche motivo per cui un certificato non si rinnova?

Generalmente sono le personalizzazioni a interrompere inaspettatamente il processo. Aprirei un nuovo argomento mostrando i tuoi dettagli e cosa hai fatto.