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

Компиляция cURL 7.69.1 с OpenSSL версии 1.1.1g

Я компилирую cURL (версия 7.69.1) с OpenSSL (версия 1.1.1g) на CentOS 7.

Вот что я сделал -

  1. Для составления локона
    ./configure --with-ssl --with-nghttp2  {nghttp2 for adding HTTP/2 feature)
    make
    make install
  1. Для компиляции OpenSSL
    ./config 
     make 
     make test
     make install

(Хотя, я думаю, мне следовало скомпилировать OpenSSL до cURL, но только после компиляции cURL я понял, что моя текущая версия OpeSSL не поддерживает TLS1.3, поэтому мне нужно скомпилировать последнюю версию cURL.)



Теперь, пытаясь получить доступ к сайту через tls1.3, я получаю следующую ошибку:

#curl https://tls1.3.nkn.in --tlsv1.3 -v
*   Trying 10.40.122.23:443...
* Connected to tls1.3.nkn.in (10.40.122.23) port 443 (#0)
* OpenSSL was built without TLS 1.3 support
* Closing connection 0
curl: (4) OpenSSL was built without TLS 1.3 support

Затем я снова попытался скомпилировать cURL, но заметил следующее утверждение в конфигурации cURL:

checking for OpenSSL headers version... 1.1.1 - 0x1010107fL
checking for OpenSSL library version... 1.0.2


Что мне делать, чтобы решить эту проблему?

После нескольких часов устранения неполадок он работает по следующим шагам -

  1. Перекомпилируйте OpenSSL еще раз с параметром --prefix
# ./config --prefix=/usr/local/OpenSSL
make
make install
  1. Перекомпилируйте cURL снова
./configure --with-ssl=/usr/local/OpenSSL --with-nghttp2=/usr/local    {nghttp2 for HTTP/2 support}
make
make install

Следующий результат показывает компиляцию cURL с поддержкой OpenSSL / 1.1.1g И HTTP / 2.

# curl -V
curl 7.69.1 (x86_64-pc-linux-gnu) libcurl/7.69.1 OpenSSL/1.1.1g zlib/1.2.7 nghttp2/1.41.0-DEV
Release-Date: 2020-03-11
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS HTTP2 HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSockets

Спасибо.