🖧 Debian Curl теперь поддерживает HTTP3: что вам нужно знать |

🖧 Debian Curl теперь поддерживает HTTP3: что вам нужно знать

Мануал

Ускоренная загрузка и повышенная безопасность с HTTP3 в Debian Curl.

Хорошие новости для пользователей Debian!

HTTP3 появился в Debian Curl.

Начиная с curl 8.0.0-2, пользователи Debian теперь могут использовать HTTP3.

Это знаменует значительное обновление возможностей curl, повышая его производительность и эффективность в обработке веб-коммуникаций.

Как использовать HTTP3 с Curl

Эту новую возможность можно легко протестировать с помощью флага –http3-only.

Чтобы использовать HTTP3 с curl, просто выполните следующую команду:

curl --http3-only https://example.com

Кроме того, вы можете протестировать его в контейнере с помощью Podman:

podman run debian:unstable apt install --update -y curl && curl --http3-only https://example.com

Обратите внимание, что команда apt теперь включает опцию –update для команд обновления и установки, хотя эта функция еще не доступна в стабильной версии.

📦 Команды Apt Update и Upgrade – в чем разница? – IT is good

Доступность в разных версиях Debian

Поддержка HTTP3 для curl распространяется на разные версии Debian.

  • Debian Unstable: Уже доступна с 2 июля 2024 года.
  • Debian Testing: Ожидается, что обновление будет получено в середине июля 2024 года, если не возникнет никаких проблем.
  • Debian 12/bookworm Backports: Будет доступен, как только пакет поступит в тестирование Debian.
  • Debian 12/bookworm: Из-за стремления Debian к стабильности, эта функция не будет поставляться в обычном репозитории для Debian 12. Однако пользователи могут получить доступ к ней через репозитории backports.
  • Производные Debian: Переходящие выпуски получат её, когда она появится в Debian Testing. Стабильные производные включат её в свой следующий основной выпуск.

Преодоление технических трудностей

HTTP3 является относительно новым, и ни один дистрибутив Linux в настоящее время не поддерживает его в curl.

Основные проблемы включают:

  • Поддержка OpenSSL: OpenSSL не имеет надлежащей поддержки HTTP3. Почти каждый пакет curl использует OpenSSL, что делает рискованным переход на бэкэнд TLS.
  • Проблемы с производительностью: Производительность OpenSSL пока неудовлетворительна для HTTP3, начиная с версии 3.3.
  • Совместимость с Nginx: Хотя nginx поддерживает HTTP3 через OpenSSL, он рекомендует использовать другие SSL-библиотеки, такие как BoringSSL, LibreSSL или QuicTLS для лучшей поддержки QUIC.
  • Debian curl использует GnuTLS, который недавно получил неэкспериментальную поддержку HTTP3 через ngtcp2 и nghttp3. Это позволило включить HTTP3 в пакет Debian curl.

🖧 Как заставить curl использовать протокол HTTPS

Процесс внедрения

Пакет curl в Debian исторически включает в себя как OpenSSL, так и GnuTLS варианты libcurl.

Вариант GnuTLS уже может поддерживать HTTP3, а вариант OpenSSL – нет.

Предпринятые шаги

Разработчики Debian предприняли следующие шаги для реализации этой возможности в curl:

  • Удовлетворить зависимости: Убедиться, что все необходимые зависимости соответствуют минимальным требованиям.
  • Включить HTTP3 для GnuTLS libcurl: Активирована поддержку HTTP3 в версии libcurl для GnuTLS.
  • Переключить TLS Backend: Изменен TLS-бэкенд в curl CLI с OpenSSL на GnuTLS.

Этот процесс включал обновление nghttp3, которое потребовало перехода из-за изменения SONAME, и обеспечение совместимости всех зависимостей.

Как только зависимости были установлены, включение HTTP3 стало простым делом.

Обеспечение стабильности

Чтобы не сломать окружение пользователей, были предприняты следующие шаги:

  • No Direct Push to Stable: Это изменение не будет перенесено в текущие стабильные выпуски. Оно будет присутствовать в следующем стабильном выпуске (13/trixie).
  • Анализ рисков: Оцените риск потери функциональности, ограниченной бэкендом OpenSSL. Единственная значимая функция, которая может быть затронута, – это экспериментальный Encrypted Client Hello (ECH), который пока не поддерживается стандартным OpenSSL.
  • Тестирование CI: CI-тесты для всех пакетов, зависящих от curl, выполняются, чтобы убедиться в отсутствии сбоев. Результаты сравниваются с предшествующим изменению CLI curl с OpenSSL.

Если проблем не возникнет, то через пару дней (примерно 5 дней) curl с поддержкой HTTP3 будет перенесён в Debian Testing.

Если проблемы будут обнаружены, они будут устранены до миграции, которая, как ожидается, займёт менее месяца.

Заключение

Включение HTTP3 в curl в Debian – это значительный шаг вперёд.

Оно повышает производительность и возможности curl, согласуясь с последними веб-стандартами.

Несмотря на сложность этого обновления, разработчики Debian тщательно подошли к его реализации, чтобы обеспечить стабильность и надёжность для всех пользователей.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий