letsencrypt deaktivieren fehlgeschlagen und Run discourse-setup gab einige ungewöhnliche Warnungen

Ich versuche, das SSL-Zertifikat neu zu konfigurieren und das kostenlose Let’s Encrypt-Zertifikat zu deaktivieren.
Da ich ein gekauftes Zertifikat habe, habe ich über Google einige Schritte gefunden.

Ich habe app.yml direkt bearbeitet und bestätigt, dass der Schlüssel (key) und das Zertifikat (cer) im Verzeichnis /var/discourse/shared/standalone/ssl/ liegen und die Dateinamen mit der Konfigurationsdatei übereinstimmen. Beim erneuten Neuaufbau war das Ergebnis jedoch weiterhin fehlerhaft, und es wurde weiterhin das Let’s Encrypt-Zertifikat verwendet.

In den Nginx-Error-Logs tauchen folgende Meldungen auf:


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)

Ich habe bestätigt, dass die Dateien im Verzeichnis vorhanden sind:

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

Außerdem habe ich eine Diskussion unter folgender URL gefunden:

Removing Let’s Encrypt from installation choice

Beim Ausführen von ./discourse-setup erhalte ich folgende Warnung:

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

Gibt es Vorschläge, wie man Let’s Encrypt deaktivieren oder das Konfigurationsproblem lösen kann?

2 „Gefällt mir“

Es gibt einige Themen dazu, wie man ein eigenes Zertifikat verwendet. Du kannst zwar suchen, aber dieses Nischenthema lautet: Nur für fortgeschrittene Einrichtung: SSL/HTTPS für deine Discourse-Docker-Installation aktivieren

1 „Gefällt mir“

Hallo pfaffman,

danke für deine Antwort.
Zu den Informationen, die du bereitgestellt hast, habe ich bereits einen Referenzfall und ein Experiment durchgeführt. Das Ergebnis war jedoch fehlerhaft; der Nginx-Dienst kann die Datei nicht lesen.

Die Fehlermeldung ist wie oben beschrieben:

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 „Gefällt mir“

Ich habe erfolgreich mein eigenes Zertifikat verwendet.

Ich habe weiterhin den falschen Dateinamen für die Anmeldedaten verwendet. Die Nginx-Einstellung benötigt eine .crt-Datei, aber ich habe immer wieder die .cer-Datei installiert und getestet. So habe ich das SSL-Problem gelöst.

Vielen Dank.

3 „Gefällt mir“

Etwas, das in deinen ersten paar Beiträgen auffiel, war

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

und

Bestätige, dass die Datei im Verzeichnis vorhanden ist:

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

Beachte den Unterschied nach dem Teil /shared/ der Pfade. Nginx erwartete die Datei ssl.crt im Ordner shared/ssl/. Du hast sie jedoch in shared/standalone/ gefunden. Die Datei befand sich nicht im Pfad, in dem Nginx danach suchte.

@JimPas Danke für deine Antwort.
Ich habe Informationen dazu gegeben, dass die Pfade nicht übereinstimmen, weil ein Pfad ein Docker-Volume-Pfad ist und der andere der tatsächliche Pfad zu Dateien auf dem Server.

Nur für fortgeschrittene Einrichtung: Zulassen von SSL/HTTPS für deine Discourse-Docker-Einrichtung

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

Sieht so aus, als ob sie nicht übereinstimmen, sind aber tatsächlich identisch.
Das erste Problem habe ich bereits gelöst.
Die eigentliche Ursache für mich war, dass ich das Zertifikatsformat nicht beachtet habe.
Die Konfiguration erwartet das Format crt, aber ich habe immer Dateien im Format cer verwendet, sodass Nginx die Zertifikatsdatei nicht erfolgreich lesen konnte.

2 „Gefällt mir“

:man_facepalming:
Das ist mir nie aufgefallen. Na, dann werde ich mich wohl mal tadeln lassen!
Schön, dass du es bemerkt und behoben hast. :+1:

1 „Gefällt mir“

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