cURL - (60) SSL certificate problem: unable to get local issuer certificate

  • Wie kann ich das Problem mit cURL und den SSL-Zertifikat-Problem beheben.


    Leider kann ich nicht wie in mancher Installationsanleitung das "cacert.pem" herunterladen und die PHP.ini entsprechend ändern, da diese ja von LiveConfig erzeugt bzw. verwaltet wird. Die Datei ist ja geschützt und kann nicht ohne weiteres geändert werden, wahrscheinlich aus gutem Grund.


    Kann ich evtl. meine IP, welche zu LC führt durch eine Domain ersetzen, also mit der Canonical-Methode und dieser Domain Bsp. (admin.domain.fqdn) dann ein echtes SSL-Zertifikat hinzufügen.


    Würde das dann das Problem beheben?

  • Wieso kannst du die php.ini nicht bearbeiten? Hierzu gibts die PHP Einstellungen in der individuelle Konfigurationen hinzu gefügt werden können. Ansonsten "man curl" und man sehe eine -k bzw --insecure Option.

  • Also der Fehler ist folgender in cURL - (60) SSL certificate problem: unable to get local issuer certificate.


    Ich habe jetzt die neuste cacert.pem heruntergeladen und nach /etc/ssl/certs/ca-certificates.crt verschoben.


    Ich kann zwar im PHP-Code curl -k verwenden, ist jedoch nicht vorgesehen. cURL muss ja auch so funktionieren. Die php.ini in der ich gerne den Pfad (curl.cainfo = "/etc/ssl/certs/ca-certificates.crt") zu cURL anpassen würde, lässt sich über die Konsole nicht bearbeiten bzw. ist schreibgeschützt, da diese von LiveConfig verwaltet wird. Ich könnte dies auch über das LC-Admin machen, was ich da allerdings eingeben muss, damit das funktioniert, weiß ich leider nicht.


    Meine Frage war: Wie behebe ich das Problem und kann ich dies beheben indem ich das Default-SSL-Zertifikat durch ein echtes SSL-Zertifikat ersetze? Oder bin ich da auf dem völlig falschen Weg und es hat damit überhaupt nichts zu tun?

  • Also der Fehler ist folgender in cURL - (60) SSL certificate problem: unable to get local issuer certificate.


    Ich habe jetzt die neuste cacert.pem heruntergeladen und nach /etc/ssl/certs/ca-certificates.crt verschoben.


    Welche cacert.pem? (also von welcher Quelle?)


    Zitat

    Die php.ini in der ich gerne den Pfad (curl.cainfo = "/etc/ssl/certs/ca-certificates.crt") zu cURL anpassen würde, lässt sich über die Konsole nicht bearbeiten bzw. ist schreibgeschützt, da diese von LiveConfig verwaltet wird. Ich könnte dies auch über das LC-Admin machen, was ich da allerdings eingeben muss, damit das funktioniert, weiß ich leider nicht.


    Es gibt zwei Möglichkeiten:
    - in /etc/php5/conf.d/ eine Datei namens z.B. "curl.ini" anlegen und dort die gewünschte Anweisung eintragen, oder
    - im LiveConfig in der php.ini-Verwaltung einen neuen Schlüssel namens "curl.cainfo" anlegen, Typ=Text, Wert="/etc/ssl/certs/ca-certificates.crt").
    Macht aber beides vermutlich keinen Sinn, weil dann alle anderen CA-Zertifikate nicht mehr anerkannt werden.


    Zitat

    Meine Frage war: Wie behebe ich das Problem und kann ich dies beheben indem ich das Default-SSL-Zertifikat durch ein echtes SSL-Zertifikat ersetze? Oder bin ich da auf dem völlig falschen Weg und es hat damit überhaupt nichts zu tun?


    Ich weiß noch immer nicht welches SSL-Zertifikat Sie meinen und was das mit cURL zu tun hat.
    Möchten Sie lokal auf dem Server via cURL auf LiveConfig zugreifen? Welches SSL-Zertifikat (für welchen Dienst) meinen Sie? ...
    Unter Debian gibt es einen eigenen Weg, um "eigene" CA-Zertifikate zu installieren (/usr/local/share/ca-certificates/, siehe man-Page zu "update-ca-certificates").

  • Es läuft nun! :)


    Ok, was habe ich gemacht:


    1. Die cacert.pem von https://curl.haxx.se/docs/caextract.html heruntergeladen und in nach /etc/ssl/certs/ca-certificates.crt verschoben.


    2. apt-get update && apt-get install php5-curl noch einmal durchlaufen lassen.


    3. Apache neu gestartet


    Es hat noch ein paar Minuten gedauert, aber dann ging es auf einmal. Vielleicht macht LC im Hintergrund noch ein paar Crons?


    Zitat

    Ich weiß noch immer nicht welches SSL-Zertifikat Sie meinen und was das mit cURL zu tun hat.
    Möchten Sie lokal auf dem Server via cURL auf LiveConfig zugreifen? Welches SSL-Zertifikat (für welchen Dienst) meinen Sie? ...
    Unter Debian gibt es einen eigenen Weg, um "eigene" CA-Zertifikate zu installieren (/usr/local/share/ca-certificates/, siehe man-Page zu "update-ca-certificates").


    Hat auch nichts mit cURL zu tun. Ich dachte das jedoch am Anfang. Ich wollte eigentlich wissen, ob man das default-SSL-Zertifikat, welches bei der Installation von LC angelegt wird löschen bzw. durch ein vollwertiges SSL-Zertifikat tauschen kann. Wie gesagt ich habe das jetzt mit der Canonical-Methode gemacht und über eine Subdomain geroutet. Vielen Dank ;)

  • Ich wollte eigentlich wissen, ob man das default-SSL-Zertifikat, welches bei der Installation von LC angelegt wird löschen bzw. durch ein vollwertiges SSL-Zertifikat tauschen kann.


    eines kaufen oder via Let's Encrypt beantragen?!?


    Zitat

    Wie gesagt ich habe das jetzt mit der Canonical-Methode gemacht und über eine Subdomain geroutet.


    Also eine Subdomain in LiveConfig angelegt, ein passendes SSL-Zertifikat über Let's Encrypt geholt und dieses Zertifikat ggf. noch anderweitig installiert? Das hat aber null nada mit dem "cacert.pem" zu tun.


    Das Default-Zertifikat existiert auch weiterhin. Browser, die SNI können, sehen das nur nicht mehr.


    Ansonsten bei der IP-Konfiguration HTTPS von "gemeinsam" auf "exklusiv" stellen. Dann wird nur noch dieses Zertifikat konfiguriert - aber heißt dann auch, dass es sonst kein Zertifikat mehr geben kann ;)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!