ошибка curl 35: неизвестная ошибка протокола SSL в соединении - PullRequest
9 голосов
/ 13 июля 2010
$ curl -I https://9.185.173.135
curl: (35) Unknown SSL protocol error in connection to 9.185.173.135:443

Это защищенная страница, к которой мне нужно получить доступ. Но я не знаю, как получить файл сертификата. Я пытался использовать Firefox, но он говорит, что не может получить ssl-сертификат после ввода URL.

$ curl -I http://9.185.173.135
HTTP/1.1 200 OK
Content-Length: 686
Content-Type: text/html
Content-Location: http://9.185.173.135/Default.htm
Last-Modified: Mon, 16 Mar 2009 05:05:38 GMT
Accept-Ranges: bytes
ETag: "a851dbd8f4a5c91:d41"
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Tue, 13 Jul 2010 04:09:35 GMT

Сервер определенно доступен с моего ноутбука. Получив файл сертификата, я предполагаю, что могу затем импортировать его в Firefox и затем использовать свои учетные данные для прохождения аутентификации (я уже получил имя пользователя / пароль).

Извините, я вообще не специалист по безопасности. Могу ли я попробовать что-нибудь еще?

Большое спасибо заранее.

Ответы [ 6 ]

5 голосов
/ 05 июня 2013

попробуйте

curl_setopt($ch, CURLOPT_SSLVERSION, 3); // Force SSLv3 to fix Unknown SSL Protocol error
2 голосов
/ 14 июля 2010

Руди: Спасибо за подсказку, которая сообщает мне чертовски много информации.

Каким-то образом администратор защищенной страницы ежедневно обновляет состояние сертификатов. Поэтому, хотя я вчера получил доступ к нему, он щедро позволяет мне получить другой сертификат и добавить его в список исключений Firefox.

Так что все работает, и я действительно кое-что узнал из вчерашнего опыта.

0 голосов
/ 04 октября 2018

У меня была похожая проблема:

 curl https://localhost:3000
 ...
 curl: (35) Unknown SSL protocol error in connection to localhost:-9847

(не уверен, откуда этот номер -9847 пришел с тех пор, как я запросил порт 3000)

fix: оказывается, что мой сервер на порту 3000 работал«http» не «https» иди на цифру.

0 голосов
/ 19 октября 2017

У меня есть несколько решений, которые решают проблему для меня:

1] попробуйте обновить ваш curl / php / apache [yum update]

2] перезапустите apache

Те работали на меня!

0 голосов
/ 17 августа 2016

Я получил ту же ошибку при запуске curl / httpie на сервере Tomcat на моем локальном хосте, развернутом из Eclipse. Оказывается, что по умолчанию server.xml, развернутый Eclipse , отключает https. В частности, раздел ниже закомментирован в server.xml.

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" />

После раскомментирования и добавления двух параметров хранилища ключей начинает работать команда curl (с параметром --insecure, если сертификат самоподписан).

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" />
           keystoreFile="/path/to/your/keystore"
           keystorePass="yourpass" />
0 голосов
/ 27 апреля 2016

У меня была такая же ошибка после обновления моего SSL-сертификата на целевом сайте SSL.Моя исходная ОС была Centos 6, и обновление до новой версии curl решило эту проблему.* Обратите внимание, что я уже использовал curl -k (небезопасная опция), но все равно получаю эту ошибку.По сути, эта ошибка вызвана устареванием nss или openssl.yum -y install curl nss openssl Помните, что если у вас есть веб-приложение, такое как PHP, вызывающее curl, вам потребуется перезапустить Apache, чтобы обновление вступило в силу.

Я обновил на основе этого руководства: http://realtechtalk.com/curl_35_Unknown_SSL_protocol_error_in_connection_Solution_Centos-1988-articles

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...