Мы исправили это, закомментировав строку 377 вdownloader/lib/Mage/HTTP/Client/Curl.php
//$this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1')
Там может быть настройка, которая позволяет этому пройти, но мы не зашли так далеко.
Мы исправили это, закомментировав строку 377 вdownloader/lib/Mage/HTTP/Client/Curl.php
//$this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1')
Там может быть настройка, которая позволяет этому пройти, но мы не зашли так далеко.
Ответы:
Есть две вещи, которые могут вызвать это.
Убедитесь, что вы не используете OpenSSL,
php -r "print_r(curl_version());" | grep ssl_version
Если он отображает что-то кроме OpenSSL - тогда это ваш ответ. Решением будет удаление / комментирование рассматриваемой строки.
Похоже, ваша библиотека OpenSSL устарела.
Например. Типичный веб-сервер будет показывать,
openssl ciphers | tr ':' '\n'
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
SRP-DSS-AES-256-CBC-SHA
SRP-RSA-AES-256-CBC-SHA
SRP-AES-256-CBC-SHA
DHE-DSS-AES256-GCM-SHA384
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-DSS-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-DSS-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
DHE-DSS-CAMELLIA256-SHA
ECDH-RSA-AES256-GCM-SHA384
ECDH-ECDSA-AES256-GCM-SHA384
ECDH-RSA-AES256-SHA384
ECDH-ECDSA-AES256-SHA384
ECDH-RSA-AES256-SHA
ECDH-ECDSA-AES256-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
CAMELLIA256-SHA
PSK-AES256-CBC-SHA
ECDHE-RSA-DES-CBC3-SHA
ECDHE-ECDSA-DES-CBC3-SHA
SRP-DSS-3DES-EDE-CBC-SHA
SRP-RSA-3DES-EDE-CBC-SHA
SRP-3DES-EDE-CBC-SHA
EDH-RSA-DES-CBC3-SHA
EDH-DSS-DES-CBC3-SHA
ECDH-RSA-DES-CBC3-SHA
ECDH-ECDSA-DES-CBC3-SHA
DES-CBC3-SHA
PSK-3DES-EDE-CBC-SHA
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES128-SHA
SRP-DSS-AES-128-CBC-SHA
SRP-RSA-AES-128-CBC-SHA
SRP-AES-128-CBC-SHA
DHE-DSS-AES128-GCM-SHA256
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-DSS-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-DSS-AES128-SHA
DHE-RSA-SEED-SHA
DHE-DSS-SEED-SHA
DHE-RSA-CAMELLIA128-SHA
DHE-DSS-CAMELLIA128-SHA
ECDH-RSA-AES128-GCM-SHA256
ECDH-ECDSA-AES128-GCM-SHA256
ECDH-RSA-AES128-SHA256
ECDH-ECDSA-AES128-SHA256
ECDH-RSA-AES128-SHA
ECDH-ECDSA-AES128-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
SEED-SHA
CAMELLIA128-SHA
PSK-AES128-CBC-SHA
ECDHE-RSA-RC4-SHA
ECDHE-ECDSA-RC4-SHA
ECDH-RSA-RC4-SHA
ECDH-ECDSA-RC4-SHA
RC4-SHA
RC4-MD5
PSK-RC4-SHA
EDH-RSA-DES-CBC-SHA
EDH-DSS-DES-CBC-SHA
DES-CBC-SHA
EXP-EDH-RSA-DES-CBC-SHA
EXP-EDH-DSS-DES-CBC-SHA
EXP-DES-CBC-SHA
EXP-RC2-CBC-MD5
EXP-RC4-MD5
Что openssl version
показывает?
Похоже, вам нужно обновить свою библиотеку SSL по нескольким причинам, а не только по этой причине (т. Е. Многочисленные раскрытые уязвимости в старых библиотеках).
Я спросил Nexcess (ссылаясь на этот пост) и получил этот ответ:
Страница, которую вы нашли, действительно правильная. Мы видели это много с новым обновлением. Случилось так, что Magento обновил некоторый код, чтобы сделать его более безопасным, но они сделали предположение, что curl будет скомпилирован с библиотеками SSL, которые они могли проверять с помощью определенных команд.
К сожалению, серверы RedHat и CentOS (которые мы используем) имеют cURL, скомпилированный с NSS, который обеспечивает безопасность без некоторых дыр, с которыми у OpenSSL были проблемы. Побочным эффектом этого является то, что проверка, которую выполняет Magento, не отправляет правильный вопрос и получает «неизвестный» ответ.
Закомментирование строки, которая упоминается в решении для Magento Downloader 1.9.2, список неизвестных шифров до сих пор помогал всем. Мельница слухов, что Magento скоро решит эту проблему.
на нашем сервере Centos 6 NSS обновлена до этого выпуска, но не до последнего выпуска. другие решения, комментирующие строки, добавляющие строки не работают. единственное решение, которое работает, это принудительно установить https в false, добавив строку
$https = false;
перед линией
$uriModified = $this->getModifiedUri($uri, $https);
и комментируя
$this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');
У нас работает на 1.9.2.4 Magento.
На 1.9.2.3 используйте следующую загрузочную / lib / Mage / HTTP / Client / Curl.php строку 370 ish:
$uriModified = $this->getModifiedUri($uri, $https);
$this->_ch = curl_init();
$this->curlOption(CURLOPT_URL, $uriModified);
$this->curlOption(CURLOPT_SSL_VERIFYPEER, false);
//$this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');
$this->curlOption(CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
$this->getCurlMethodSettings($method, $params, $isAuthorizationRequired);
Проверьте закомментированные биты и новую строку чуть ниже
@ben в 1 есть еще один подслуча: комментирование одной строки может не сработать, если curl и nss не устарели.
Если не построен с openssl, curl может быть построен с помощью nss (CentOS / RHEL curl). Убедитесь, что библиотеки curl и nss обновлены.