Zertifikatsproblem

Hinweis: In dem Thema Zertifikatsproblem gibt es 12 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo an Alle,


    ich habe ein fieses Problem.
    Mein Server lief bis vor kurzem unter SuSe 12.3.
    Nachdem ich das lange aufgeschoben habe, habe ich kuerzlich auf 42.3 aktualisert.
    Auf dem Server laeuft unter anderem meine Homepage unter Apache mit SSL.
    Der https Server ist mit Let's Encrypt Zertifikat ausgestattet.
    Das Zertifikat wird mit getssl via daily cronjob aktualisiert.
    Lief auf 12.3 seit langem einwandfrei, aber auf 42.3 habe ich ziemlich Probleme:
    getssl nutzt CURL und CURL braucht ein CA-Zertifikat. Klassischerweise nimmt man ein Mozilla Zertifkat.


    Und hier faengt mein Problem an:
    Nach Vorschrift muss man folgendes installieren:
    ca-bundle.crt -- Bundle of CA Root Certificates
    ##
    ## Certificate data from Mozilla as of: Thu Jan 1 00:00:00 1970
    ##
    ## This is a bundle of X.509 certificates of public Certificate Authorities
    ## (CA). These were automatically extracted from Mozilla's root certificates
    ## file (certdata.txt). This file can be found in the mozilla source tree:
    ## certdata.txt?raw=1
    ##
    ## It contains the certificates in PEM format and therefore
    ## can be directly used with curl / libcurl / php_curl, or with
    ## an Apache+mod_ssl webserver for SSL client authentication.
    ## Just configure this file as the SSLCACertificateFile.
    ##
    Ich krieg das aber nicht hin...habe schon eine ganze Menge ausprobiert...vielleicht kann jemand helfen.
    Inzwischen ist mein Zertifikat abgelaufen, weil ich es nicht mehr schaffe per getssl ein neues hochzuladen :(



    Jede Hilfe ist willkommen.


    ...have fun...
    Michi

    Für den Inhalt des Beitrages 118654 haftet ausdrücklich der jeweilige Autor: michi1911

  • Letsencrypt Zertifikate gelten ein halbes Jahr. Da braucht es keinen täglichen Cronjob. Das kann man vollautomatisiert erledigen lassen.
    getssl ist eine völlig andere CA. Und die haben mit Letsencrypt nichts zu tun.
    curl braucht überhaupt kein Zertifikat. Das ist lediglich ein Tools, um mit allen möglichen Protokollen von allen möglichen Host alles mögliche zu holen.
    curl -k kann auch https ohne Validierung der Zertifikate.
    Mozilla spielt da nirgends mit. Die liefern nur Root CA Certs mit, damit man beim Browsen nicht ständig genervt wird. Ansonsten ist das für deinen Webserver völlig irrelevant.


    Wenn es dir nur um Letsencrypt Certs für deinen Webserver geht, nimm einfach den offiziellen certbot.
    Ansonsten poste exakt deine Befehle samt Beschreibung, was du damit erreichen willst.


    Wirklich verstehen, was du da treibst, kann man so nicht.
    Du vermischt da völlig verschiedene Dinge...

  • Hallo,


    ja, ich gebe dir recht, ich habe da einiges durcheinandergemischt...war gestern auch schon sehr spaet und ich bin etwas genervt (gewesen).
    Also versuche ich mal Ordnung reinzubringen:


    1. Mein Lets encrypt Zertifikat ist abgelaufen, weil ich zu spaet gemerkt habe, dass mein Cert-Update Service nach Upgrade nicht mehr funktioniert. Getssl hat ueber viele Monate anstandslos funktioniert.


    2. Getssl ist ein script zum automatischen Upgrade von Lets encrypt Zertifikaten, dass ich seit einiger Zeit problemlos im EInsatz hatte -> GitHub - srvrco/getssl: obtain free SSL certificates from letsencrypt ACME server Suitable for automating the process on remote servers.


    3. Curl wird von dem Getssl Script benutzt, funktioniert aber nach dem Upgrade auf 42.3 nicht mehr: Curl meldet Fehler 60:
    CURLE_SSL_CACERT (60) Peer certificate cannot be authenticated with known CA certificates.
    -> Ich habe mal nosecurity als Curl Option probiert, damit laeuft das Script aber nicht...da das Script nicht von mir ist wuerde es mehr Zeit brauchen um zu schauen was das Problem ist.


    4. Auf die Idee auf certbot auszuweichen bin ich auch schon gekommen, bin aber auch da auf ein Cert Problem gestossen:
    wget certbot-auto
    --2018-02-27 12:42:28-- certbot-auto
    Resolving dl.eff.org (dl.eff.org)... 151.101.112.201, 2a04:4e42:1b::201
    Connecting to dl.eff.org (dl.eff.org)|151.101.112.201|:443... connected.
    ERROR: cannot verify dl.eff.org's certificate, issued by ‘/C=US/O=SSL.com/OU=www.ssl.com/CN=SSL.com DV CA’:
    Unable to locally verify the issuer's authority.
    To connect to dl.eff.org insecurely, use `--no-check-certificate'.


    Klar kann ich das Problem mit --no-check-certificate temporär umgehen, aber ich befürchte, dass das nur kurzfristig hilft...ich will mein System aber lieber "clean" haben...deshalb die Fokussierung auf das root CA Thema.


    Sorry, wenn meine Informationen konfus und nicht zusammenhaengend wirken, ich kann nur Symptome reporten und nicht-fundierte Annahmen daraus ableiten. Ich bin bei der genauen Diagnose leider etwas überfordert.
    Ich hoffe jemand kann mir hier helfen, das Problem besser einzukreisen.
    Vielleicht ist die Lösung ja ganz trivial...z.B. das root CA im Yast eintragen oder so...aber da fehlt mir leider das Wissen und ich bitte einen Experten mir auf die Sprünge zu helfen.


    Wenn meine Ausführungen immer noch nicht klar genug sind, bitte nachfragen...ich komme alleine nicht mehr weiter.


    ...have fun...
    Michi

    Für den Inhalt des Beitrages 118665 haftet ausdrücklich der jeweilige Autor: michi1911

  • Ui...danke fuer den Hinweis...wusste gar nicht, dass certbot auch in der SuSe Distri drin ist...
    Leider passiert damit aber genau das, was ich befuerchtet habe...auch cert Probleme:


    Saving debug log to /var/log/certbot/letsencrypt.log
    Plugins selected: Authenticator apache, Installer apache
    Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
    An unexpected error occurred:
    SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)
    Please see the logfiles in /var/log/certbot for more details.


    Irgendwas ist an meiner SuSe Installation defekt...es wird immer wahrscheinlicher, dass ich komplett von Sratch neu installieren muss :(


    ...have fun...
    Michi

    Für den Inhalt des Beitrages 118671 haftet ausdrücklich der jeweilige Autor: michi1911

  • Nachtrag: Ich hab' die Zertifikate gefunden: /var/lib/ca-certificates/
    Jetzt bleibt nur noch die Frage warum die bei mir nicht im System eingehaengt sind!?


    Leider funktioniert das passende update script nicht:
    /usr/sbin/update-ca-certificates
    /usr/lib/ca-certificates/update.d/50java.run: line 22: trust: command not found
    /usr/lib/ca-certificates/update.d/70openssl.run: line 17: trust: command not found
    Can't exec "trust": No such file or directory at /usr/lib/ca-certificates/update.d/80etc_ssl.run line 88.
    Died at /usr/lib/ca-certificates/update.d/80etc_ssl.run line 88.
    /usr/lib/ca-certificates/update.d/99certbundle.run: line 34: trust: command not found


    Scheint aber legacy Kram zu sein...und in /etc/ssl/certs sind keine CA Zertifikate!?

    2 Mal editiert, zuletzt von michi1911 ()

    Für den Inhalt des Beitrages 118672 haftet ausdrücklich der jeweilige Autor: michi1911

  • Und was sagt /var/log/certbot dazu?
    Poste das bitte auf die Einträge des letzten Versuchs gekürzt (falls überhaupt Kürzen nötig, war ja wohl erste Verwendung)

  • @michi1911
    Benutze für Konsolenausgaben bitte Code-Tags!!!


    Erleichtert einfach das lesen uns verstehen der Beiträge.

    Für den Inhalt des Beitrages 118679 haftet ausdrücklich der jeweilige Autor: Sauerland