Ho appena aggiornato questo perché la vecchia versione non funzionava più. L’ho testato su due siti, quindi penso che dovrebbe andare bene.
MODIFICA: Trovato una soluzione, ignorare tutto quanto segue, ma lo lascio qui per le persone future. Lascio la soluzione in fondo.
Mi sono appena imbattuto in questo thread. Quindi, il mio sito è: forums.mysite.me. Ho 3 domini nella mia configurazione NGINX e nel mio provider di domini che sto usando DNS CNAME che stanno tornando come insicuri:
mysite.me
www.mysite.me
forum.mysite.me (senza la "s" se qualcuno sbaglia a scrivere o indovina l'URL)
Uso il mio dominio di base nella configurazione dell’articolo originale? O come lo imposto per tutti e 3?
after_ssl:
# indica a letsencrypt quali certificati aggiuntivi ottenere
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: "-d forums.mysite.me --keylength"
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--fullchainpath/
to: "-d forums.mysite.me --fullchainpath"
Sono confuso perché la prima sezione “replace” ha un from: /--keylength/ e quella sotto ha from: /--fullchainpath/. Quindi, devo fare 2 voci come quelle per ciascuno di questi 3 URL che ho elencato o?.. Oppure sarebbe questo?
after_ssl:
# indica a letsencrypt quali certificati aggiuntivi ottenere
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: "-d mysite.me -d www.mysite.me -d forum.mysite.me --keylength"
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--fullchainpath/
to: "-d mysite.me -d www.mysite.me -d forum.mysite.me --fullchainpath"
^ Sì, la casella sopra qui è stata la soluzione per più siti/LetsEncrypt. Sono così emozionato.
Sì. Ci sono due diverse sostituzioni nel file che devono essere aggiornate con i nomi host.
Non è quello che il post in cima ti ha dato quando hai inserito i nomi come descritto?
Come possiamo modificare l’OP in modo che non sia confusionario?
Personalmente, direi di spostarlo sopra la casella di input, in modo da vederlo mentre scrivi.
Il post ha dato quello, sì, ma non l’ho capito perché
Perché la sezione “se devi aggiungere domini multipli” che ho citato non risponde a questa domanda?
OK. Che ne dici di questo:
e poi dopo il codice da copiare, continua:
Ha senso?
Penso che sia più facile inserire il codice effettivo con più siti come esempio che ho usato sopra:
after_ssl:
# dire a letsencrypt quali certificati aggiuntivi ottenere
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: "-d mysite.me -d www.mysite.me --keylength"
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--fullchainpath/
to: "-d mysite.me -d www.mysite.me --fullchainpath"
Penso che la maggior parte delle persone vorrà aggiungere solo un dominio aggiuntivo, quindi il mio metodo è più semplice e fornisce un modo semplice per ottenere il testo esatto di cui hai bisogno senza dover apportare modifiche.
Forse è ancora chiaro che se il tuo sito è discourse.y.com e desideri certificati per discourse.y.com e y.com, devi solo inserire y.com nel campo “domain2” e fare clic sull’icona di copia?
Nel tuo esempio, se hai configurato il tuo Discourse come mysite.com, non hai bisogno della parte -d mysite.me nel tuo esempio (o se il tuo sito è www.mysite.me hai solo bisogno della parte -d mysite.me).
in quale file viene aggiunto questo codice per favore?
Il codice dovrebbe essere aggiunto quasi alla fine del file app.yml, nella sezione hooks:
18 messaggi sono stati divisi in un nuovo argomento: Let’s Encrypte con domini multipli non funzionava per i certificati ECC
Ho ancora bisogno delle altre due sostituzioni di snippet di codice o questo nuovo snippet di codice è tutto ciò di cui ho bisogno?
L’ho aggiunto e ricompilato, ma ricevo ancora un errore di privacy SSL quando vado su uno dei domini https che voglio reindirizzare.
Guardando il certificato, il suo nome comune è forum.domain.com, con O e OU non parte del certificato.
Sto cercando di reindirizzare https://domain.com e https://www.domain.com a https://forum.domain.com.
Quando uso http://domain.com e http://www.domain.com, si reindirizza correttamente a https://forum.domain.com.
Cosa hai inserito? Come si presenta la tua sezione after_ssl?
Sembra questo (modificato il nome effettivo del dominio)
after_ssl:
- replace:
filename: /etc/runit/1.d/letsencrypt
from: /-d forum.mydomain.com /
to: -d forum.mydomain.com -d www.mydomain.com -d mydomain.com
global: true
Ho anche aggiunto questo
LETSENCRYPT_ALTERNATE_NAMES: mydomain.com,www.mydomain.com
L’errore del browser è
net::ERR_CERT_COMMON_NAME_INVALID
I nomi si risolvono tutti? Non hanno Cloudflare davanti a loro? Hai raggiunto i limiti di frequenza? Puoi guardare nel contenitore e eseguire /etc/runit/1.d/letsencrypt e vedere cosa succede
Tutti i nomi si risolvono, niente cloudflare, gli hitrate dovrebbero andare bene.
Ecco il risultato dell’esecuzione di letsencrypt;
(Nome del dominio sostituito)
/var/www/discourse# /etc/runit/1.d/letsencrypt
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
[Tue Apr 29 04:02:13 PM UTC 2025] Unknown parameter : 4096
[Tue Apr 29 04:02:13 PM UTC 2025] Installing key to: /shared/ssl/forum.domain.com.key
[Tue Apr 29 04:02:13 PM UTC 2025] Installing full chain to: /shared/ssl/forum.domain.com.cer
[Tue Apr 29 04:02:13 PM UTC 2025] Run reload cmd: sv reload nginx
ok: run: nginx: (pid 429) 10662s
[Tue Apr 29 04:02:13 PM UTC 2025] Reload success
[Tue Apr 29 04:02:13 PM UTC 2025] Unknown parameter : ec-256
[Tue Apr 29 04:02:14 PM UTC 2025] Installing key to: /shared/ssl/forum.domain.com_ecc.key
[Tue Apr 29 04:02:14 PM UTC 2025] Installing full chain to: /shared/ssl/forum.domain.com_ecc.cer
[Tue Apr 29 04:02:14 PM UTC 2025] Run reload cmd: sv reload nginx
ok: run: nginx: (pid 429) 10663s
[Tue Apr 29 04:02:14 PM UTC 2025] Reload success
Ho guardato dentro il file, eccone uno divertente
issue_cert() {
LE_WORKING_DIR="${LETSENCRYPT_DIR}" /shared/letsencrypt/acme.sh --issue $2 -d forum.domain.com -d www.domain.com -d domain.com--keylength $1 -w /var/www/discourse/public
}
Sembra che manchi uno spazio tra l’ultimo dominio e --keylength?
domain.com--keylength
Risolvere quel problema ha risolto il problema, grazie per l’aiuto
Presumo che la correzione debba essere quella di aggiungere anche / al campo to:?
after_ssl:
- replace:
filename: /etc/runit/1.d/letsencrypt
from: /-d forum.domain.com /
to: "-d forum.domain.com -d www.domain.com "
global: true
Dovrebbero essere virgolette, non barre. Ho modificato il tuo post e l’OP. Quello che hai ora dovrebbe funzionare.