
Мой curl на Ubuntu 16.04.4 LTS не работает (он сообщает, что на любом https-сайте возникла проблема с сертификатом, но сертификаты моей ОС в порядке... Я могу нормально зайти на те же сайты в браузере. Даже пробовал экспортировать сертификаты рабочего браузера, но curl все равно не работает). Apt-get сообщает, что curl обновлен. Очевидно, это не так. Поэтому я перешел на страницу curl: https://curl.se/docs/install.html. Там написано использовать vcpkg. Проблема в том, что vcpkg нужен curl!
Вот журнал неудачной установки vcpkg:
-- Downloading https://www.openssl.org/source/openssl-3.0.3.tar.gz -> openssl-3.0.3.tar.gz...
[DEBUG] To include the environment variables in debug output, pass --debug-env
[DEBUG] Feature flag 'binarycaching' unset
[DEBUG] Feature flag 'manifests' = off
[DEBUG] Feature flag 'compilertracking' unset
[DEBUG] Feature flag 'registries' unset
[DEBUG] Feature flag 'versions' unset
[DEBUG] 31607: popen(curl --fail -L https://www.openssl.org/source/openssl-3.0.3.tar.gz --create-dirs --output /root/rclone/vcpkg/downloads/openssl-3.0.3.tar.gz.31607.part 2
>&1)
[DEBUG] 31607: cmd_execute_and_stream_data() returned 60 after 394329 us
Error: Failed to download from mirror set:
https://www.openssl.org/source/openssl-3.0.3.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
^M 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0^M 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
Так что это похоже на тупик. Как еще я могу получить curl?
Если это поможет, вот что curl
у меня есть (из apt-get
)
curl --version
curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
И системная информация:
uname -a
Linux moxie 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.4 LTS
Release: 16.04
Codename: xenial