Новая версия nginx 1.29.1. Представлен модуль ngx_http_acme

Опубликован выпуск основной ветки nginx 1.29.1, в которой продолжается развитие новых возможностей. В параллельно поддерживаемую стабильную ветку 1.28.x вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В дальнейшем на базе основной ветки 1.29.x будет сформирована стабильная ветка 1.30. Код проекта написан на языке Си и распространяется под лицензией BSD.

В новом выпуске:

  • Устранена уязвимость (CVE-2025-53859) в модуле ngx_mail_smtp_module, приводящая к чтению данных из области памяти вне буфера при обработке специально оформленных значений логина и пароля при использовании метода аутентификации «none». Уязвимость может привести к утечке содержимого памяти рабочего процесса nginx в HTTP-запросе к внешнему серверу аутентификации. Патч.
  • По умолчанию отключено сжатие сертификатов TLSv1.3.
  • Добавлена директива «ssl_certificate_compression» для управления сжатием TLS-сертификатов.
  • В реализацию протокола QUIC добавлена поддержка режима 0-RTT, доступная на системах с OpenSSL 3.5.1 и более новыми выпусками.
  • Устранена ошибка, приводившая к буферизации HTTP-ответа 103 при использовании HTTP/2 и директивы «early_hints».
  • Устранена ошибка в обработчике параметра «none» в директиве «smtp_auth».
  • В реализации HTTP/3 решена проблема с обработкой номера порта в заголовке «Host».
  • Устранена проблема, проявлявшаяся при использовании одинаковых значений в заголовках «Host» и «:authority» при использовании HTTP/2.
  • Налажена сборка в NetBSD 10.0.

Отдельно компания F5 представила предварительный выпуск модуля ngx_http_acme, предоставляющего возможности для автоматизации запроса, получения и обновления сертификатов с использованием протокола ACMEv2 (Automatic Certificate Management Environment), применяемого удостоверяющим центром Let’s Encrypt. При использовании http_acme администраторам не нужно заботиться об обновлении сертификатов, на основе параметров в конфигурации модуль сам получит необходимые сертификаты в Let’s Encrypt или другом сервисе, поддерживающем протокол ACME. Код модуля написан на языке Rust с использованием SDK NGINX-Rust. acme_issuer letsencrypt { uri https://acme-v02.api.letsencrypt.org/directory; state_path /var/cache/nginx/acme-letsencrypt; accept_terms_of_service; } server { listen 80; # ACME HTTP-01 challenge location / { return 404; } } server { listen 443 ssl; server_name .example.com; acme_certificate letsencrypt; ssl_certificate $acme_certificate; ssl_certificate_key $acme_certificate_key; ssl_certificate_cache max=2; }

Источник: opennet.ru

Добавить комментарий