Comment conserver mon cacert.pem actuel pour des raisons de sécurité lors de l'utilisation de curl?

Je tiens à garder mes certificats racine de courant pour une utilisation avec cURL et PHP interne curl de commande, cependant il n'y a pas de paramètre actuellement pour télécharger le fichier en cours il a besoin pour une bonne connexion sécurisée et à les tenir à jour.

Et un exemple d'utilisation curl en PHP pour une connexion sécurisée qui nécessite un fichier nommé cacert.pem (PEM codée de la chaîne de certification pour la validation des connexions à distance) est comme suit :

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.google.com");
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_CAINFO, "pathto/cacert.pem");
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
if (!($data = curl_exec($ch))) {
    echo "No data received";
} else {
    echo strlen($data) + " total byte(s)";
}
curl_close($ch);

Alors que la plupart des gens tout simplement mis CURLOPT_SSL_VERIFYPEER à faux, et donc d'ignorer le problème, ce qui est mauvais . Vous pouvez voir ici où une autorité de certification montre que si vous n'avez pas ce fichier actuel, la seule façon de se connecter à un serveur sécurisé est de désactiver la vérification des certificats et des autres met en garde contre les implications derrière la désactivation de la vérification par les pairs.

Ce que je demande est pour une façon légitime de conserver une copie locale de cacert.pem de sorte que lorsque j'utilise curl en PHP pour communiquer avec d'autres serveurs, je peux continuer à le faire en toute sécurité .

Ce n'est pas une demande pour une ressource externe ou hors site, lien, etc, toutefois, en raison de la nature du problème, il est probable que peut être la SEULE façon de résoudre ce problème, car cela nécessiterait la mise à jour continue comme les chaînes de certificats révoqués. À ce jour, il n'existe aucun moyen d'obtenir ce fichier soit dans le cadre de la distribution de roulage lui-même, ou php, ou la bibliothèque curl de php et de continuer à le maintenir. Alors qu'il est décourageant de voir que ce n'est pas quelque chose qui d'une simple commande de mise à jour comme curl --update-root-ca serait bien, il n'existe pas de forme.

source d'informationauteur Kraang Prime