Назад | Перейти на главную страницу

Curl не может получить содержимое HTTPS

У меня проблема на рабочем сервере, работающем на Debian 6 (обновление apt-get; обновление apt-get выполнено успешно).

Когда я вызываю HTTPS-сервер (StartSSL), в Debian 6 появляется сообщение об ошибке:

#> curl --version
curl 7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6
Protocols: dict file ftp ftps http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

#> curl https://mydomain.com/api/
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html

Но когда я звоню по тому же адресу в Debian 7 (сервер тоже обновлен), все работает нормально:

#> curl --version
curl 7.26.0 (x86_64-pc-linux-gnu) libcurl/7.26.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.25 libssh2/1.4.2 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
Features: Debug GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP

#> curl https://mydomain.com/api/
{'code':'ko', 'message':'ERR_AUTH_BASIC_NEEDED'}

У вас есть идеи, почему HTTPS не работает на Curl Debian 6 и работает с Debian 7 curl?

Устаревший не curl, а набор корневых сертификатов ЦС, которые использует система. Действующие сертификаты могут изменяться со временем, когда центры сертификации запускаются, прекращают свою деятельность, истекают их сертификаты, их сертификаты отзываются или обновляются.

В debian они находятся в в ca-certificates пакет. Что касается сжатия, похоже, что это не обновлялось за несколько лет. Только хрипы и новее кажутся хоть сколько-нибудь близкими к текущим. Распределения должен обновлять их в течение всего поддерживаемого срока службы дистрибутива, но, похоже, Debian этого не делает.

Вы должны уметь Сделайте резервную копию самостоятельно с помощью исходный пакет (не пытайтесь использовать двоичные пакеты; их зависимости также обновляются, и это приведет к поломке).