Let's Encrypt zertifikate nicht mehr zu beziehen

  • Hi,


    Ich habe seit vorgestern plötzlich Meldungen das etwas mit meinem SSL Zertifikat nicht mehr stimmen würde.

    Aber hauptsächlich von Anwendungen die auf die Nextcloud zugreifen.

    Das kam sehr zu meiner Überraschung. Also mal Server neu gestartet, das brachte erwartungsgemäß keine Besserung.


    Als nächsten Step habe ich die Zertifikate fallen lassen und wollte sie von Let's Encrypt wieder neu beziehen.

    Normal kein großes Thema geht recht schnell und man hat wieder tolle frische.


    Aber dort geht nun das Problem los.

    Mein Server ist sicherlich nicht das Topmodell als TS-231 ist er ein bisschen in die Jahre gekommen.

    Aber bei den Zertifikaten hatte ich bisher noch nie Probleme.

    Ich bekomme keine neuen. Ich denke über die quota für requests bin ich noch nicht hinaus.


    Also erste google Rescherchen angestoßen.


    cd /mnt/ext/opt/QcloudSSLCertificate/bin

    ./download_logs.sh


    Das einzige, was etwas infos mit sich brachte, war die ssl_agent.log


    Nun habe ich gestern im Zuge meiner Fehlersuche gefunden das Let's Encrypt das rootzertifikat geändert hat.

    Meine Befürchtung ist nun das der Let's Encrypt client in der betagten NAS zu alt ist und damit nicht klar kommt.


    Leider finde ich mit den Fehlercodes nicht wirklich etwas was die zu bedeuten haben.


    Ich hoffe das ich alles notwendige hier habe ich würde mich über eine Antwort freuen.

  • Könnte evtl. damit zusammenhängen.


    Gruss


    Edit: Könnte nicht nur, ist es, aber von QNAP ist kein altes OS aufgeführt (oder ich habe es nicht gesehen).

  • Ja, das habe ich ja auch im letzten Absatz erwähnt, aber alles, was ich zu der Umstellung bisher gefunden habe, war, dass die Clients, also mein Handy nicht mehr drauf zu greifen kann.

    Aber nicht der Webserver selbst, welche die Zertifikate beziehen will.

    Meine Befürchtung ist das der letsencrypt acme bot (certbot), welcher diese bezieht, sich geändert hat der in der NAS aber nicht.

  • Zusätzlich habe ich noch ein weiteres Logging gefunden:


    Einmal editiert, zuletzt von 9_Mad-Max_5 ()

  • Mhm das ist schlecht.
    Ich hatte den Fehler auch gesehen aber nicht für voll genommen.

    Der zweite Server läuft ja noch mit dem letsencrypt zertifikat.

    Hast du eine Idee wie man das flicken kann?
    Liegt es an curl selbst?

  • Das Intermediate Zertifikat LetsEncrypt R3 sowie das Root Zertifikat ISRG Root X1 müssen in den Trust Store des QTS eingefügt werden, damit wieder eine SSL-Verbindung zu LetsEncrypt aufgebaut werden kann.


    Ich habe aber noch keinen Weg gefunden, wie das bei QTS manuell funktioniert.


    Im QNAPClup-Repo gibt es das Paket CACert 1.04, ich vermute, das es genau diese Certs installiert, aber auch das habe ich noch nicht ausprobiert.

  • Ja das habe ich auch gefunden aber das brauch QPerl und das ist auf der TS-231 nicht zu installieren.

    Auf deinen beiden sollte das aber kein Problem darstellen.

    Nach langer suche im Web, bin ich hier drauf gestoßen:
    Install Root & Intermediate Certificate Bundles on QNAP! (andreadraghetti.it)


    Dessen Anleitung hat aber leider nicht vollständig funktioniert.
    Aus unterschiedlichen Gründen, drum habe ich mir auch noch diese Seiten zu rate gezogen:

    Korrekter curl:
    Yannik/qnap-letsencrypt: Let's Encrypt on QNAP (github.com)


    Funktionierenden awk Befehl:

    shell - How to split a PEM file - Server Fault

    Daraus ist dann folgenden Befehl entstanden:

    Code
    cd /share/
    curl --silent --location --remote-name --insecure https://curl.haxx.se/ca/cacert.pem
    mkdir certs
    cat cacert.pem | awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {if(length($0) > 0) print > "certs/cert" n ".pem"}' 
    for filename in cert*pem;do mv $filename `openssl x509 -hash -noout -in $filename`.0; done;
    cp *.0 /etc/ssl/certs/


    Das hat auch soweit funktioniert.

    Damit lieferte

    Code
    curl https://acme-v02.api.letsencrypt.org/directory

    keinen Fehler mehr zurück.

    Allerdings scheitere ich mit QTS SSL Certificate an derselben Stelle wie zuvor.


    EDIT:

    Da auch diese Lösung nicht zielführend war und die Warnung wirklich ein Dorn im Auge bin ich den einzigen übrigen weggegangen.

    Yannik/qnap-letsencrypt: Let's Encrypt on QNAP (github.com)


    Das ist ein Python Script, was eben besser gepflegt ist.
    Die Anleitung ist an sich sehr gut und lässt nur wenige Wünsche offen.

    Es muss entware installiert sein aber das ist in jedem Fall eine Sache, die man tun sollte.


    Einzige Stolperfalle in der Anleitung ist unter dem Kapitel qnap-letsencrypt der Punkt 5
    Da hier ein absoluter Pfad für den Cronjob angegeben werden muss am besten an der eigenen Maschine zuerst prüfen.

    Einmal editiert, zuletzt von 9_Mad-Max_5 () aus folgendem Grund: Nun klappt es aber eben ohne QNAP

  • Hallo, ich hab gleiches Problem mit meiner TS -231. Ist es möglich das das Problem nur bei diesem Modell auftritt?

    Der QNAP Support teilt mir nur mit das Gerät sei End of Life. Wenn von QNAP keine Lösung kommt würde ich das zum Anlass nehmen mir ein neueres Modell zuzulegen. Wenn aber mehr Typen betroffen sind darf ja ggf noch auf ein Update hoffen ?


    Gruß Kai

  • Bei mir ist es eine TS-453Be - ich denke nicht, das es am Modell liegt.

  • Denke auch nicht das es mit dem Modell zusammenhängt.

    Und man muss einfach gestehen die Anleitung zu dem eigenen Skript ist sehr gut.
    Sie sollte nach ein wenig einfinden auch von einem bash anfänger zu bewältigen sein.

  • Ich warte mal ab ob es noch ein Update dazu geben wird. Würde ich vermutlich mit der Anleitung hinbekommen, aber am Ende hab ich mir das NAS geholt um sowas nicht machen zu müssen...

    Support hat sich gemeldet und bestätigt das alle Geräte derzeit betroffen sind.

    Es gäb auch ein Workaround (habs noch nicht ausprobiert bei mir):


    SSH (admin):
    ln -sf /etc/ssl/openssl.cnf /usr/openssl.cnf

    Einmal editiert, zuletzt von sirkai ()

  • Hi,


    bin leider absolut kein Spezialist in dem Thema - habe aber genau das gleiche Problem. Nutze aktuell Mount und curl von Nextcloud aus - und auch mein TS212P ist sicher nicht die neueste Kiste (aber funktioniert dafür seit Jahr und Tag klaglos).


    Auch das Update des Zertifikats funktioniert nicht :(


    Als Workaround werde ich mal versuche mount und curl davon zu überzeugen, das beide das jetzige (alte) Zertifikat akzeptieren - augenscheinlich möchte QNAP lieber die eigenen Zertifikate verkaufen....


    Im Übrigen: Wenn auf der QNAP über die Verweigerungsliste nur die IP des Nextcloud-Servers zugelassen ist, dann kann man auch problemlos ein eigenes Zertifikat verwenden und diesem vertrauen, oder?



    Update: Der Workaround mit dem obigen Linkkommando funktioniert - allerdings nur wenn man ein neues Letsencrypt Zertifikat mittels der App QTS SSL Certificate erstellt. Leider gibt es beim Zugriff (z.B. mittels CURL) leider immer noch Fehler - aber diesmal wohl ein anderer:


    curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number


    Hat jemand eine Idee woran es jetzt noch liegen kann?

    Einmal editiert, zuletzt von srgd () aus folgendem Grund: Neue Erkenntnisse....

  • Schaue mal nach dem System Cert Store.

    Da ist sicherlich das abgelaufene Zwischenzertifikat von LetsEncrypt drin.

    Das ist vor kurzem abgelaufen.

  • Hi,


    der curl Fehler lag eher daran, das ich nicht gewartet habe, bis das Zertifikat auch auf dem Client als valid certificate bekannt war - die Lösung den Link zu ändern und danach das Zertifkat neu ausstellen zu lassen hat somit funktioniert!


    Besten Dank für Eure Hilfe!!

  • Ich bin völlig am verzweifeln, weil mir das alles leider nichts sagt.

    Ich habe mittlerweile die V5.0.0.1837 installiert und alles läuft bis auf die Möglichkeit, mittels des Updaters über WinSCP meine Nextcloud-Version zu aktualisieren.

    Wenn ich, wie bislang, den Updater ausführe, erhalte ich die Meldung:

    Code
    [Exception] 
    Could not do request to updater server: SSL certificate problem: certificate has expired

    Ich habe gelesen, daß das an einem abgelaufenenen Zertifikat DST Root CA X3 liegen soll. Es wird geraten, dieses Zertifikat aus /etc/ssl/certs/ zu entfernen.

    Wenn ich das aber mache, erhalte ich beim Ausführen des Updaters die neue Meldung:

    Code
    [Exception]
    Could not do request to updater server: SSL certificate problem: unable to get local issuer certificate

    Kann jemand Schritt-für-Schritt erklären, wie ich den Updater wieder zum funktionieren bringen kann?


    Mir sagt das z.B. überhaupt nichts:

    Schaue mal nach dem System Cert Store.


    Wie oder wo finde ich einen System Cert Store? Ist das eine App oder eine Lokation auf der NAS?