LINUX.ORG.RU

84
Всего сообщений: 1496

Релиз nginx 1.20

Группа Open Source

Новый релиз получил сразу несколько заметных улучшений:

  • поддержка OCSP (Online Certificate Status Protocol). Это новый протокол для отзыва X.509 (TLS). Использует нотацию ASN.1 поверх HTTP вроде такой:
      FooAnswer ::= SEQUENCE {
            questionNumber INTEGER,
            answer         BOOLEAN
        }
    
  • новый модуль ngx_stream_set_module. модуль нужен для того, чтобы можно было определять переменные в конфигах. Наконец, доступен полноценный механизм if ($var) ... else ... .
  • опция позволяет определить в командной строке лог файл для ошибок.
  • опция запрета устанавливать шифрованные сообщения вообще - ssl_reject_handshake. Основное применение - добавить в описание default server и блокировать коннекты без явного хоста.
  • в почтовый прокси добавлена опция proxy_smtp_auth, позволяющая аутентифицировать пользователя на бэкенде при помощи команды AUTH и механизма PLAIN SASL.
  • опция с кучей параметров proxy_cache_path получила еще один «min_free». Специальный процесс cache manager мониторит свободное место и, если оно заканчивается, начинает вытеснять кеш. Опять же по заданным параметрам.
  • убрали часть специфичных опций для HTTP/2 в пользу уже существовавших для HTTP/1. Они будут общие для обоих протоколов.
  • добавлена опция proxy_cookie_flags для защиты от CSS (cross-site scripting). позволяет добавлять определенные HTTP хедеры для проксируемых соединений. Насколько может судить автор новости, раньше мы просто писали
                   add_header 'Access-Control-Allow-Origin' '*';
                   add_header 'Access-Control-Allow-Methods' blablabla
    

>>> Подробности

 

crypt ()

nginx 1.19.1

Группа Open Source

Вышел nginx 1.19.1, очередной релиз в текущей mainline ветке веб-сервера nginx. В mainline ветке идёт активная разработка, в то время как в текущую стабильную ветку (1.18) вносятся только исправления ошибок.

  • Изменение: директивы lingering_close, lingering_time и lingering_timeout теперь работают при использовании HTTP/2.
  • Изменение: теперь лишние данные, присланные бэкендом, всегда отбрасываются.
  • Изменение: теперь при получении слишком короткого ответа от FastCGI-сервера nginx пытается отправить клиенту доступную часть ответа, после чего закрывает соединение с клиентом.
  • Изменение: теперь при получении ответа некорректной длины от gRPC-бэкенда nginx прекращает обработку ответа с ошибкой.
  • Добавление: параметр min_free в директивах proxy_cache_path, fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. Спасибо Adam Bambuch.
  • Исправление: nginx не удалял unix domain listen-сокеты при плавном завершении по сигналу SIGQUIT.
  • Исправление: UDP-пакеты нулевого размера не проксировались.
  • Исправление: проксирование на uwsgi-бэкенды с использованием SSL могло не работать. Спасибо Guanzhong Chen.
  • Исправление: в обработке ошибок при использовании директивы ssl_ocsp.
  • Исправление: при использовании файловых систем XFS и NFS размер кэша на диске мог считаться некорректно.
  • Исправление: если сервер memcached возвращал некорректный ответ, в логах могли появляться сообщения «negative size buf in writer».

Одновременно с nginx вышел njs 0.4.2

njs - это подмножество языка JavaScript, позволяющее расширить функциональность nginx. njs совместим с ECMAScript 5.1 (строгий режим) c некоторыми расширениями ECMAScript 6 и позже. Совместимость находится в стадии развития.

>>> Changelog

 

MrClon ()

Вышел релиз nginx 1.17.9

Группа Open Source

Вышел nginx 1.17.9, очередной релиз в текущей mainline ветке веб-сервера nginx. В mainline ветке идёт активная разработка, в то время как в текущую стабильную ветку (1.16) вносятся только исправления ошибок.

  • Изменение: теперь nginx не разрешает несколько строк «Host» в заголовке запроса.
  • Исправление: nginx игнорировал дополнительные строки «Transfer-Encoding» в заголовке запроса.
  • Исправление: утечки сокетов при использовании HTTP/2.
  • Исправление: в рабочем процессе мог произойти segmentation fault, если использовался OCSP stapling.
  • Исправление: в модуле ngx_http_mp4_module.
  • Исправление: при перенаправлении ошибок с кодом 494 с помощью директивы error_page nginx возвращал ответ с кодом 494 вместо 400.
  • Исправление: утечки сокетов при использовании подзапросов в модуле njs и директивы aio.

>>> Changelog

 

MrClon ()

Вышел wZD 1.0.0 - сервер хранения и выдачи файлов

Группа Open Source

Выпущена первая версия сервера хранения данных с доступом по протоколу HTTP, предназначенная для решения проблемы большого количества маленьких файлов на файловых системах, в том числе кластерных.

Некоторые возможности:

  • многопоточность;
  • мультисерверность, обеспечивающая отказоустойчивость и сбалансированность нагрузки;
  • максимальная прозрачность для пользователя или разработчика;
  • поддерживаемые методы HTTP: GET, HEAD, PUT и DELETE;
  • управление поведением при чтении и записи через клиентские заголовки;
  • поддержка гибко настраиваемых виртуальных хостов;
  • поддержка целостности данных CRC при записи/чтении;
  • полудинамические буферы для минимального потребления памяти и оптимальной настройки сетевой производительности;
  • отложенная компакция данных;
  • как дополнение — многопоточный архиватор wZA для миграции файлов без остановки сервиса.

Продукт предназначен для смешанного применения, в том числе поддерживается работа с большими файлами без ущерба производительности.

Основное рекомендуемое направление использования на origin серверах и крупных хранилищах для значительного снижения количества метаданных в кластерных файловых системах и расширения их возможностей.

Сервер распространяется под лицензией BSD-3.

>>> Статья

 , , , ,

raver ()

nginx 1.17.7

Группа Интернет

Состоялся очередной релиз в текущей mainline-ветке веб-сервера nginx. В ветке 1.17 идёт активная разработка, в то время как в текущую стабильную ветку (1.16) вносятся только исправления ошибок.

  • Исправление: на старте или во время переконфигурации мог произойти segmentation fault, если в конфигурации использовалась директива rewrite с пустой строкой замены.
  • Исправление: в рабочем процессе мог произойти segmentation fault, если директива break использовалась совместно с директивой alias или директивой proxy_pass с URI.
  • Исправление: строка Location заголовка ответа могла содержать мусор, если URI запроса был изменён на URI, содержащий нулевой символ.
  • Исправление: при возврате перенаправлений с помощью директивы error_page запросы с телом обрабатывались некорректно; ошибка появилась в 0.7.12.
  • Исправление: утечки сокетов при использовании HTTP/2.
  • Исправление: при обработке pipelined-запросов по SSL-соединению мог произойти таймаут; ошибка появилась в 1.17.5.
  • Исправление: в модуле ngx_http_dav_module.

>>> Changelog

 

MrClon ()

Рамблер решил отказаться от уголовного преследования создателей Nginx

Группа Open Source

Совет директоров Рамблер дал поручение прекратить уголовное дело против Nginx.

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

>>> Подробности

 , ,

Shulman ()

Рамблер предъявил претензии на исходный код nginx. Обыск в московском офисе Nginx, Inc.

Группа Open Source

Один из сотрудников Nginx, Игорь Ипполитов, опубликовал в Twitter сообщение о том, что в офисе Nginx производится обыск. Твит и скриншоты постановления об обыске он был вынужден удалить по требованию МВД, но в сети осталась копия.

По версии следствия, неустановленные лица в неустановленное время (до октября 2004 года) разместили в свободном доступе программу «энджиникс» (nginx), указав, что исключительное право на неё принадлежат Игорю Сысоеву, при этом заведомо зная, что программа является служебным произведением, а следовательно, права на неё принадлежат Рамблеру. Затем неустановленные лица зарегистрировали компанию «Энджиникс инк» (NGINX, Inc) для продолжения незаконного использования, модификации и распространения программы, причинив тем самым Рамблеру ущерб в особо крупном размере.

«Неустановленными лицами» в перспективе, вероятно, станут основатели Nginx, Inc Игорь Сысоев и Максим Коновалов. Имеются сведения, что они задержаны.

Пресс-служба Рамблера подтвердила, что интернет-холдинг имеет претензии.

( читать дальше... )

>>> Подробности

 , , ,

MozillaFirefox ()

Состоялся релиз F-Stack 1.13

Группа Linux General

Компания Tencent выпустила новую версию F-Stack 1.13, фреймворка на базе DPDK и TCP/IP стека FreeBSD. Основной платформой для фреймворка является Linux. Код распространяется под лицензией BSD.

Фреймворк позволяет приложениям отказаться от стека операционной системы и вместо этого использовать стек, реализованный в пространстве пользователя и работающий напрямую с сетевым оборудованием.

( читать дальше... )

>>> Подробности

 , , , ,

araks ()

Релиз nginx 1.17.5

Группа Open Source

Состоялся релиз nginx 1.17.5, содержащий исправления и улучшения.

Новшества:

  • добавили поддержку вызова ioctl(FIONREAD), если доступен, для того, чтобы избежать чтения из быстрого соединения в течение длительного времени;
  • устранили проблему с игнорирование неполных закодированных символов в конце URI-запроса;
  • исправили проблему с нормализацией последовательностей «/.» и «/..» в конце URI-запроса;
  • исправили директиву merge_slashes и ignore_invalid_headers;
  • исправили ошибку, возникающую при сборке nginx в MinGW-w64 gcc 8.1 и новее.

>>> Подробности

 

Satori ()

Nginx 1.17.4

Группа Open Source

В mainline-ветке nginx вышла версия 1.17.4. Изменения внесены в основном в реализацию протокола HTTP/2

  • Изменение: улучшено детектирование некорректного поведения клиентов в HTTP/2.
  • Изменение: в обработке непрочитанного тела запроса при возврате ошибок в HTTP/2.
  • Исправление: директива worker_shutdown_timeout могла не работать при использовании HTTP/2.
  • Исправление: при использовании HTTP/2 и директивы proxy_request_buffering в рабочем процессе мог произойти segmentation fault.
  • Исправление: на Windows при использовании SSL уровень записи в лог ошибки ECONNABORTED был «crit» вместо «error».
  • Исправление: nginx игнорировал лишние данные при использовании chunked transfer encoding.
  • Исправление: если использовалась директива return и при чтении тела запроса возникала ошибка, nginx всегда возвращал ошибку 500.
  • Исправлена обработка ошибок выделения памяти.

>>> Подробности

 ,

MrClon ()

Вышел NGINX Unit 1.11.0

Группа Open Source

19 сентября 2019 года состоялся релиз сервера приложений NGINX Unit 1.11.0.
Основные особенности:


  • В сервер встроена возможность самостоятельной отдачи статического контента без обращения к внешнему серверу http. В итоге сервер приложений хотят превратить в полноценный веб-сервер со встроенными средствами построения веб-сервисов. Для раздачи контента достаточно указать в настройках корневой каталог

    ( читать дальше... )

>>> Подробности

 ,

Zhbert ()

В nginx исправлены три бага, приводящих к излишнему потреблению памяти

Группа Open Source

В веб-сервере nginx выявлено три проблемы (CVE-2019-9511, CVE-2019-9513, CVE-2019-9516), приводившие к излишнему потреблению памяти при использовании модуля ngx_http_v2_module и реализовываемого им протокола HTTP/2. Проблеме подвержены версии с 1.9.5 по 1.17.2. Исправления внесены в nginx 1.16.1 (стабильная ветка) и 1.17.3 (основная ветка). Проблемы были обнаружены Jonathan Looney из Netflix.

В релиз 1.17.3 вошли ещё два исправления:

  • Исправление: при использовании сжатия в логах могли появляться сообщения «zero size buf»; ошибка появилась в 1.17.2.
  • Исправление: при использовании директивы resolver в SMTP прокси-сервере в рабочем процессе мог произойти segmentation fault.

>>> Подробности

 

MrClon ()

Nginx 1.17.2

Группа Open Source

Состоялся очередной релиз в текущей mainline ветке веб-сервера nginx. В ветке 1.17 идёт активная разработка, в то время как в текущую стабильную ветку (1.16) вносятся только исправления ошибок.

  • Изменение: минимальная поддерживаемая версия zlib - 1.2.0.4. Спасибо Илье Леошкевичу.
  • Изменение: метод $r->internal_redirect() встроенного перла теперь ожидает закодированный URI.
  • Добавление: теперь с помощью метода $r->internal_redirect() встроенного перла можно перейти в именованный location.
  • Исправление: в обработке ошибок во встроенном перле.
  • Исправление: на старте или во время переконфигурации мог произойти segmentation fault, если в конфигурации использовалось значение hash bucket size больше 64 килобайт.
  • Исправление: при использовании методов обработки соединений select, poll и /dev/poll nginx мог нагружать процессор во время небуферизованного проксирования и при проксировании WebSocket-соединений.
  • Исправление: в модуле ngx_http_xslt_filter_module.
  • Исправление: в модуле ngx_http_ssi_filter_module.

>>> Changelog

 

MrClon ()

Nginx 1.17.1

Группа Open Source

Состоялся релиз nginx 1.17.1. 1.17 это текущая mainline ветка nginx, в этой ветке ведётся активная разработка веб-сервера. Текущей стабильной веткой nginx является 1.16. Первый, и последний на данный момент, релиз этой ветки состоялся 23 апреля

  • Добавление: директива limit_req_dry_run.
  • Добавление: при использовании директивы hash в блоке upstream пустой ключ хэширования теперь приводит к переключению на round-robin балансировку. Спасибо Niklas Keller.
  • Исправление: в рабочем процессе мог произойти segmentation fault, если использовалось кэширование и директива image_filter, а ошибки с кодом 415 перенаправлялись с помощь директивы error_page; ошибка появилась в 1.11.10.
  • Исправление: в рабочем процессе мог произойти segmentation fault, если использовался встроенный перл; ошибка появилась в 1.7.3.

>>> Changelog

 

MrClon ()

Nginx 1.17.0

Группа Open Source

Состоялся первый релиз в новой mainline ветке веб-сервера nginx

  • Добавление: директивы limit_rate и limit_rate_after поддерживают переменные;
  • Добавление: директивы proxy_upload_rate и proxy_download_rate в модуле stream поддерживают переменные;
  • Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.8;
  • Изменение: теперь postpone-фильтр собирается всегда;
  • Исправление: директива include не работала в блоках if и limit_except;
  • Исправление: в обработке byte ranges.

>>> Changelog

 

MrClon ()

F5 Networks купила Nginx Inc.

Группа Open Source

Сиэтлская компания F5 Networks, больше всего известная своими аппаратными LBA, объявила о приобретении Nginx. Сумма сделки составила приблизительно $670 млн.

F5 рассчитывают внедрить в Nginx свои наработки в области безопасности, а также использовать Nginx в своих облачных продуктах. По словам Франсуа Локо-Дону, СЕО F5, слияние позволит клиентам компании значительно ускорить разработку контейнеризируемых приложений, а Nginx в свою очередь получит еще большие возможности в крупном бизнесе.

Руководители обеих компаний отдельно отметили, что одним из основных условий, без которых сделка бы не состоялась, было сохранение открытости Nginx. Команда разработки, в том числе Игорь Сысоев и Максим Коновалов, продолжит развивать его уже в составе F5.

>>> Подробности

 ,

l0stparadise ()

Уязвимость в Nginx Unit (CVE-2019-7401)

Группа Безопасность

Выпущен Unit 1.7.1, исправляющий уязвимость CVE-2019-7401, которой подвержены все версии Unit с 0.3 по 1.7.

Уязвимость позволяет вызвать переполнение буфера в памяти процесса роутера при обработке специально созданного запроса. Это может привести к отказу в обслуживании (краху процесса роутера) и другим неопределенным последствиям.

Также версия 1.7.1 исправляет ошибку, появившеюся в 1.7 и не позволяющую установить модуль Go без предварительной сборки самого Unit-демона.

Разработчики сообщили что Unit 1.8 с поддержкой внутренней маршрутизации запросов и экспериментального модуля Java запланирован на конец февраля.

Nginx Unit – сервер приложений, управляющий приложениями на ряде языков (Python, PHP, Go, Perl, Ruby, JavaScript) и конфигурируемый через RESTful JSON API.

>>> Подробности

 , , ,

MrClon ()

Nginx 1.15.6 и 1.14.1 с исправлениями уязвимостей

Группа Безопасность

Вышли версии nginx 1.15.6 и 1.14.1, в которых исправлены три уязвимости:

  • CVE-2018-16843 и CVE-2018-16844 — чрезмерное потребление памяти и CPU в модуле ngx_http_v2_module, реализующем поддержку протокола HTTP/2.
  • CVE-2018-16845 — отправка клиенту содержимого памяти рабочего процесса при использовании модуля ngx_http_mp4_module

Для эксплуатации первых двух уязвимостей достаточно наличия параметра http2 директивы listen. Эксплуатация CVE-2018-16845 требует директиву mp4 и специально подготовленного mp4-файла.

Также в nginx 1.15.6 исправлен баг, из-за которого nginx, собранный с OpenSSL 1.1.0, но работающий с OpenSSL 1.1.1, всегда разрешал использование протокола TLS 1.3. И добавлен ряд директив, определяющих поведение TCP keepalive (использование параметра сокета SO_KEEPALIVE) в модулях http бэкендов proxy, fastcgi, grpc, memcached/ scgi? uwsgi

Патч, исправляющий CVE-2018-16845

>>> Подробности

 , ,

MrClon ()

Вышел nginx 1.15.4

Группа Open Source

Вышел nginx 1.15.4, минорное обновление текущей mainline-ветки 1.15.*

Список изменений

  • Добавление: теперь директиву ssl_early_data можно использовать с OpenSSL.
  • Исправление: в модуле ngx_http_uwsgi_module. Спасибо Chris Caputo. (прим. Что именно исправлено, не уточняется).
  • Исправление: соединения к некоторым gRPC-бэкендам могли не кэшироваться при использовании директивы keepalive.
  • Исправление: при использовании директивы error_page для перенаправления ошибок, возникающих на ранних этапах обработки запроса, в частности ошибок с кодом 400, могла происходить утечка сокетов.
  • Исправление: директива return при возврате ошибок не изменяла код ответа, если запрос был перенаправлен с помощью директивы error_page.
  • Исправление: стандартные сообщения об ошибках и ответы модуля ngx_http_autoindex_module содержали атрибут bgcolor, что могло приводить к их некорректному отображению при использовании пользовательских настроек цветов в браузерах. Спасибо Nova DasSarma.
  • Изменение: уровень логгирования ошибок SSL «no suitable key share» и «no suitable signature algorithm» понижен с уровня crit до info.

>>> Changelog

 

MrClon ()

Вышел nginx 1.15.3

Группа Open Source

Вышел nginx 1.15.3, минорное обновление текущей mainline-ветки 1.15.*

Список изменений

  • Добавление: теперь TLSv1.3 можно использовать с BoringSSL.
  • Добавление: директива ssl_early_data, сейчас доступна при использовании BoringSSL.
  • Добавление: директивы keepalive_timeout и keepalive_requests в блоке upstream.
  • Исправление: модуль ngx_http_dav_module при копировании файла поверх существующего файла с помощью метода COPY не обнулял целевой файл.
  • Исправление: модуль ngx_http_dav_module при перемещении файла между файловыми системами с помощью метода MOVE устанавливал нулевые права доступа на результирующий файл и не сохранял время изменения файла.
  • Исправление: модуль ngx_http_dav_module при копировании файла с помощью метода COPY для результирующего файла использовал права доступа по умолчанию.
  • Изменение: некоторые клиенты могли не работать при использовании HTTP/2; ошибка появилась в 1.13.5.
  • Исправление: nginx не собирался с LibreSSL 2.8.0.

>>> Changelog

 

MrClon ()