Ошибка сертификата Drupal Curl SSL

Мы используем сайт Drupal / Ubercart, и недавно я заметил, что запросы на оплату не выполняются.

В логах Drupal я вижу такую ​​ошибку:

Ошибка cURL: проблема с сертификатом SSL: невозможно получить локального эмитента
сертификат

Я нашел несколько решений и попытался реализовать их, но безрезультатно. Вот некоторые вещи, которые я пробовал:

  1. Модификация моего /etc/php5/fpm/php.ini файл для включения строки curl.cainfo = /srv/keys/cacert.pem (это файл, который я скачал с http://curl.haxx.se/ca/cacert.pem).
  2. Добавление кода в uc_authorizenet.module файл для непосредственного указания cainfo: curl_setopt($ch, CURLOPT_CAINFO, "/srv/keys/cacert.pem");,

Прежде чем предпринять эти шаги, я убедился, что ca-certificates Пакет установлен и обновлен. После каждого изменения я перезагружался php5-fpm а также nginx, но я все еще получаю ту же ошибку о том, как он не может получить сертификат локального эмитента.

Спасибо за любую помощь!

0

Решение

Проблема в том, что корневой CA для https://secure.authorize.net/gateway/transact.dll (и, возможно, другие защищенные URL-адреса на authorize.net) не включены в комплект CA http://curl.haxx.se/ca/cacert.pem , по уважительной причине: если вы посетите страницу и посмотрите подробности корневого центра сертификации в пути к сертификату, вы заметите, что отпечаток Sha1 составляет 99 a6 9b e6 1a fe 88 6b 4d 2b 82 00 7c b8 54 fc 31 7e 15 39 , Поиск в Интернете приведет вас к этой странице
https://blog.mozilla.org/security/2014/09/08/phasing-out-certificates-with-1024-bit-rsa-keys/ , что объясняет, что этот корневой сертификат больше не является доверенным. Решение представлено в похожем вопросе: Как получается, что authorize.net использует сертификат, подписанный центром сертификации, которого нет в хорошо известном списке curl.haxx.se/ca/cacert.pem?

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector