Disabe letsencrypt a échoué et l'exécution de discourse-setup a présenté une alerte anormale

Je tente de reconfigurer le certificat SSL et souhaite désactiver le certificat gratuit Let’s Encrypt.
Comme j’ai acheté un certificat, j’ai trouvé quelques opérations via Google.

J’ai modifié directement app.yml et confirmé que les fichiers clé et certificat dans /var/discourse/shared/standalone/ssl/ portent des noms cohérents avec le fichier de configuration. Après avoir reconstruit, le résultat a échoué et le certificat Let’s Encrypt est toujours utilisé.

nginx affiche des erreurs dans ses journaux :


2021/09/25 16:37:26 [emerg] 48#48: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:27 [emerg] 78#78: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:28 [emerg] 80#80: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:29 [emerg] 82#82: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:30 [emerg] 95#95: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:31 [emerg] 104#104: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:32 [emerg] 106#106: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

J’ai vérifié la présence des fichiers dans le répertoire :

root@discourse-test:/var/discourse/shared/standalone/ssl# ls -al ssl.*
-rw-r--r-- 1 root root 7868 Sep 25 16:24 ssl.cer
-rw------- 1 root root 1675 Sep 25 16:24 ssl.key

J’ai également trouvé une discussion sur l’URL suivante :

Removing Let’s Encrypt from installation choice

Lorsque j’exécute ./discourse-setup, j’obtiens l’alerte suivante :

./discourse-setup: line 471: [: 1234567890123456: binary operator expected

Avez-vous des suggestions pour désactiver Let’s Encrypt ou résoudre ce problème de reconfiguration ?

2 « J'aime »

Il existe plusieurs sujets sur la façon d’utiliser votre propre certificat. Vous pouvez essayer de chercher, mais ce domaine relève de Configuration avancée uniquement : autorisation de SSL / HTTPS pour votre configuration Discourse Docker

1 « J'aime »

Bonjour pfaffman

Merci pour votre réponse.
Concernant les informations que vous avez fournies, j’ai déjà une référence et une expérience.
Cependant, le résultat a échoué : le service nginx ne parvient pas à lire le fichier.

Le message d’erreur est décrit ci-dessus :

2021/09/25 16:37:26 [emerg] 48#48: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:27 [emerg] 78#78: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:28 [emerg] 80#80: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:29 [emerg] 82#82: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:30 [emerg] 95#95: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:31 [emerg] 104#104: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)

2021/09/25 16:37:32 [emerg] 106#106: cannot load certificate "/shared/ssl/ssl.crt": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/shared/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
1 « J'aime »

J’ai réussi à utiliser mon propre certificat.

Je continuais à utiliser le mauvais nom de fichier d’identification : la configuration nginx nécessite un fichier crt, mais j’installais et testais un fichier cer.
J’ai donc résolu le problème SSL.

Merci.

3 « J'aime »

Un élément qui a ressorti dans vos premiers messages était :

cannot load certificate "/shared/ssl/ssl.crt"

et

Avez-vous confirmé la présence du fichier dans le répertoire ?

root@discourse-test:/var/discourse/shared/standalone/ssl# ls -al ssl.*

Remarquez la différence après la partie /shared/ des chemins. Nginx s’attendait à ce que le fichier ssl.crt se trouve dans le dossier shared/ssl/. Vous l’avez trouvé dans shared/standalone/. Le fichier n’était pas au bon endroit où nginx le cherchait.

@JimPas Merci pour votre réponse.
J’ai fourni des informations indiquant que le chemin ne correspondait pas, car l’un est un chemin de volume Docker et l’autre un chemin de fichier réel sur le serveur.

Configuration avancée uniquement : Autoriser SSL / HTTPS pour votre configuration Discourse Docker

volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared

Cela semble ne pas correspondre, mais en réalité c’est identique.
Le premier problème a été résolu.
La cause racine pour moi est que je n’ai pas remarqué le format du certificat.
La configuration attend un format crt, mais j’utilisais toujours des fichiers au format cer, ce qui empêchait nginx de lire correctement le fichier de certificat.

2 « J'aime »

:man_facepalming:
Je ne l’avais jamais remarqué. Bon, je me fais bien réprimander !
Content que tu t’en sois rendu compte et que ce soit réglé. :+1:

1 « J'aime »

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