Как можно использовать протокол TLS 1.0 в самой новой версии curl или как собрать устаревший curl для поддержки TLS 1.0?

Как я могу собрать curl версии 7.47.0 с поддержкой TLS 1.0 и использовать его для обращения к узлу, работающему на TLS 1.0?
  • 25 октября 2023 г. 7:38
Ответы на вопрос 4
Сначала рекомендуется использовать более новые версии протокола TLS для обеспечения безопасности соединения. Тем не менее, если вы все же хотите использовать устаревший протокол TLS 1.0, вы можете собрать curl с поддержкой TLS 1.0 самостоятельно.

1. Сначала загрузите исходный код curl версии 7.47.0 с официального сайта curl (https://curl.se/download.html) или с GitHub (https://github.com/curl/curl/releases/tag/curl-7_47_0).

2. Разархивируйте загруженный файл и перейдите в папку с исходным кодом curl.

3. Откройте файл `include/curl/curl.h` в текстовом редакторе и найдите строчку `#define CURL_SSLVERSION_DEFAULT CURL_SSLVERSION_TLSv1_2`. Замените ее на `#define CURL_SSLVERSION_DEFAULT CURL_SSLVERSION_TLSv1_0`. Сохраните изменения.

4. Затем соберите и установите curl из исходного кода. В большинстве случаев это выполняется с использованием команды `./configure`, `make` и `make install`.

```shell
./configure --prefix=/usr/local/curl --with-ssl
make
make install
```

Примечание: Вам может потребоваться наличие инструментов для сборки, таких как GCC и OpenSSL.

После успешной сборки и установки curl, вы должны иметь устаревшую версию curl с поддержкой TLS 1.0. 

Теперь вы можете использовать созданную версию curl для обращения к узлу, работающему на TLS 1.0, с помощью команды curl:

```shell
/usr/local/curl/bin/curl --tlsv1.0 https://yourdomain.com
```

Помимо этого, ряд современных систем безопасности и браузеров могут полностью прекратить поддержку TLS 1.0, поскольку он считается небезопасным. Поэтому рекомендуется использовать более новые версии системы безопасности.
Ссылка: openssl. 

1. "Боюсь, что его просто выпилили оттуда." 
 Возможно, функционал openssl был удален или заменен.

2. "libcurl по-моему не содержит криптопримитивы - если их нет в openssl - то их нет." 
 Похоже, в библиотеке libcurl отсутствуют криптографические примитивы, если их нет в openssl, то, вероятно, они не поддерживаются.
Похожие вопросы