Обновление Nginx для CentOS 7 Bitrix(Fix NGINX Rift)
В мае 2026 года команда NGINX и компания F5 (разработчик и коммерческий спонсор) официально раскрыли информацию о семи уязвимостях в веб-сервере NGINX. Среди них — две критические: CVE-2026-42945 (NGINX Rift): переполнение буфера в модуле rewrite, позволяющее удалённое выполнение кода (RCE) на сервере. Эксплойт уже опубликован и обходит механизм ASLR. CVE-2026-9256 (nginx-poolslip): ещё одна RCE-уязвимость в том же модуле. NGINX — ключевой компонент инфраструктуры большинства сайтов, включая проекты на 1С-Битрикс. Разработчики платформы оперативно выпустили патч, который закрывает все найденные «дыры». Проблема для владельцев CentOS 7 Для современных операционных систем (например, CentOS 9 и производных) обновление выполняется стандартной командой dnf update. Инструкция по обновлению официально опубликована на сайте 1С-Битрикс: 👉 1c-bitrix.ru/products/cms/security/bx-nginx Однако CentOS 7 уже не поддерживается (End-of-Life c 30 июня 2024 года). В официальных репозиториях для этой ОС нет предустановленного обновлённого пакета bx-nginx. Это оставляет большое количество серверов незащищёнными перед лицом реальной угрозы. Единственное решение — сборка из исходного кода Единственный надёжный способ установить защищённый NGINX 1.30.2 на CentOS 7 — собрать его вручную из исходников с необходимыми для BitrixVM модулями (push-stream, headers-more, mod_zip, brotli). Я подготовил пошаговую инструкцию, которая поможет системным администраторам выполнить эту задачу быстро и без ошибок. 🔧 Инструкция по сборке NGINX 1.30.2 для CentOS 7 / BitrixVM: 👉 github.com/shebunovanton/bitrixnginxcentoscve7
Ну а лучшим решением будет мигрировать уже на CentOS 9 с bitrix env на которую выходят регулярные обновления :)
P.S. Все действия по сборке NGINX из исходных кодов, описанные в инструкции, выполняются администратором исключительно на свой страх и риск. UP: как правильно заметил один из комментаторов у большинства будет стоять openssl 1.0.2 , у меня почему-то везде openssl 1.1.1 (скорее всего когда-то была задача). Инструкцию обновил
· 28.05
Однако, рисково выглядит апдейт:
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 28.05
В данный момент протестировал, проблем пока не нашел.у меня на тестовой коробке уже была установлена nginx 1.24 в ней не было модуля nxn_pagespeed.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 28.05
Ну да в веб-окружении 7.5.5 - последнем для CentOS7 такая - bx-nginx-1.24.0-0.el7.ngx.x86_64
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 29.05
но в целом выглядит немного странно:
-иметь возможность добавить и разобраться с опциями GCC: --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' ...и не пожелать/попробовать пере-собрать свежий openssl-1.1.1p, например, добавив потом ещё лишь одну опцию (--with-openssl=/usr/src/openssl) при сборке Nginx?!
-потому что, поставляемая с CentOS-7, по крайней мере в моем случае (v.1.0.2k): Название: openssl Архитектура: x86_64 Период: 1 Версия: 1.0.2k Выпуск: 26.el7_9 Объем: 814 k -как-будто не имеет даже поддержки TLSv1.3: $ openssl version OpenSSL 1.0.2k-fips 26 Jan 2017 $ openssl ciphers -v | awk '{print $2}' | sort | uniq SSLv3 TLSv1.2 -а ведь собираемый по инструкции свежий nginx-1.30.2 использует как раз именно её?!
-в то время как в релизе openssl-1.1.1 требуемое TLSv1.3 уже точно присутствует: $ apps/openssl version OpenSSL 1.1.1p 21 Jun 2022 $ apps/openssl ciphers -v | awk '{print $2}' | sort | uniq SSLv3 TLSv1 TLSv1.2 TLSv1.3
How to enable TLS 1.3 in Nginx with OpenSSL Centos 7
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 29.05
Посмотрите инструкцию. Вчера еще добавил update
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 29.05
Еще момент нужно учесть который я не учел когда записывал все , что нужно сертификаты poolmanger и cert пересоздать так-как он не подходил к требованиям openssl, у меня везде что на продах что на тестах openssl 1.1.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 30.05
У меня рабочая коробка Битрикс24... сам ставил CentOS7 на живой серв без виртуалки и потом веб-окружение 7.4 вроде - в 2019-м всё. В 2024 феврале апдейтил до 7.5.5, как попросили обновить сам Битрикс... И вот сейчас глянул опенссл - там OpenSSL 1.0.2k-fips 26 Jan 2017. На днях ещё апдейт MySQL делал до 8.0.37 - ну максимум что окружение само дало... В админке висело просто что в августе перестанет поддерживаться 5-ка. Минимум 8.0 типа. Ну там вот только ошибка была - 4-й пост решение - https://dev.1c-bitrix.ru/community/forums/forum23/topic141430/?ysclid=mpofh6ixrb276424550 И вот теперь с nginx... сижу смотрю на мануал ваш... бэкапы делаю - готовлюсь =) Подумываю, кнечно, о CentOS9 да лишнего сервака нету протестить... Битрикс ещё бэкап без аплода 13гб... а с ним 800гб...
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 30.05
Лучше всего мигрировать на Centos 9 , у centos 7 есть куча каких уязвимостей. В фирме(где я колымлю😊) я администрирую прод и 2 тесата и вот не как не мог уговорить их мигрировать теперь наконец-то согласились. У меня была подобная ситуация ос стояла на физ сервер, я тогда если не ошибаюсь установил на новый диск ос и уже на ней развернул bitrix env , а после старый диск примонтировал и от туда бэкап развернул. Так что лучше сделайте миграцию.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 31.05
О, вижу ещё апдейт инструкции. Сборку не с 1.1.1, а с 3.5.6 я так понимаю вы проверили? А с установкой пункт - "Для тех кто решил установить и в систему openssl 3.5.6(лучше тогда мигрировать на centos9😊)". Вопрос - проверяли это сами? Или совет всё же стоит рассматривать как - не стОит лучше =) В nginx будет 3.5.6 использоваться, а для остального останется системная 1.02... Или лучше с 1.1.1 собрать? Понятно, что 3 актуальнее... но вот больше про стабильность с учётом старой ос... хотя через месяц вдруг опять чё найдут... и NGINX или сам Битрикс обновят и станет 3-ка опенссл вдруг нужна, да... такое дело.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 31.05
Да, работает исправно. Так-как у centos9 под Битрикс именно такая версия.Устанавливать ли вам в систему или нет решать вам. У меня прошло все успешно без проблем, другие кто пробовал возникали проблемы у некоторых. Я бы на вашем месте просто собрал с 3.5. Nginx , а системную бы не трогал. Ну и конечно все же началбы план прорабатывать по миграции 😊 Так-как вы верно подметили что ос старая и уже не поддерживается.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 03.06
Антон, в целом, прав: большинство OpenSource-дистрибутивов используют текущую стабильную версию OpenSSL (LTS)
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 06.06
Спасибо Вам огромное за мануал! Сделал просто сборкой, без системной. Работает. Единственное там где под финал проверяем версию опенссл - openssl version - покажет системную. А использующуюся NGINX можно тут увидеть - nginx -V. Ну и при /usr/sbin/nginx -t осталось одно предупреждение (про сертификаты было ещё сперва как в мануале): nginx: [warn] the "listen ... http2" directive is deprecated, use the "http2" directive instead in /etc/nginx/bx/site_enabled/ssl.s1.conf:3. Там в третьей строчке так listen 443 default_server http2 ssl; Стоит поправить вроде: listen 443 ssl default_server; http2 on;
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 06.06
Про это совсем забыл написать
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён