cURL – Trusting Self-Signed CA Certificate

Nach dem letzten Update von Piwik auf Version 1.8.2 hat auf einmal das Plugin WP-Piwik nicht mehr funktioniert. Dann begann die Fehlersuche und anscheinend hat cURL mein Selbstsigniertes CA Zertifikat nicht geschmeckt, wohlgemerkt hat dieses aber vor dem Piwik Update noch ohne Probleme funktioniert, naja 🙂

Es gibt nun folgende Lösungen für das Problem:


1. Die Plugin-Datei modifizieren (echt unschön und was ist beim nächsten Update?!)

# Dazu wird die Datei wp-piwik.php angepasst
nano /../wp-content/plugins/wp-piwik.php
/**
 * Get remote file
 * 
 * @param String $strURL Remote file URL
 */
function getRemoteFile($strURL) {
  // Use cURL if available	
  if (function_exists('curl_init')) {
    // Init cURL
    $c = curl_init($strURL);
 
+    curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true);
+    curl_setopt($c, CURLOPT_SSL_VERIFYHOST, 2);
+    curl_setopt($c, CURLOPT_CAINFO, "/root/myCA/mycacert.pem");

2. Das CA Zertifikat im System als vertrauenswürdig deklarieren

# Zertifikat z.B. wie folgt in das System einbinden
mkdir /usr/share/ca-certificates/myCA/
cp /root/myCA/mycacert.pem /usr/share/ca-certificates/myCA/mycacert.crt
 
# Folgende Zeile in die Konfiguration einfügen
nano /etc/ca-certificates.conf
+ myCA/mycacert.crt
 
update-ca-certificates --fresh
 
# cURL testen
curl https://stats.blix0r.de
 
Piwik › Sign in
.
.

Quelle:
WP-Piwik – HTTPS (SSL) support
Using cURL in PHP to access HTTPS (SSL/TLS) protected sites
cURL: Adding/Installing/Trusting New Self-Signed Certificate

Ein Gedanke zu „cURL – Trusting Self-Signed CA Certificate

  1. hi,

    vielen Dank für den Artikel. Da ich mich schon an Piwik usw gewandt habe, dennoch bis dato keine Lösung / Antwort erhielt frage ich Dich mal.

    Ich habe in meine WordPress htaccess folgendes hinzugefügt:

    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

    seitdem findet kein Tracking mehr statt. Nehme ich es raus, funktioniert es einwandfrei.

    Nur ohne dem, liegt meine Startseite nicht im SSL Modus. Obwohl ich in WordPress alles richtig angegeben habe.

    Woran könnte das Problem mit Piwik liegen?

    Vielen Dank für Rat und Tat. Gruss Riccarda

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.