Любой владелец веб-сайта хочет, чтобы его ресурс стабильно работал и выполнял требуемые функции будь то небольшой лендинг, либо высоконагруженный интернет-магазин. Если в первом случае нарушение работоспособности может быть просто неприятностью, то во втором это всегда большая проблема, которая влечет за собой реальные убытки. К основным аспектам, которые могут потенциально к этому привести, можно отнести вирусные угрозы и устаревшие версии основных модулей платформы 1С-Битрикс. Тем самым, для предотвращения подобных проблем требуется актуализировать программное обеспечение, отвечающее за работу сайта.
Защита от вирусных угроз
В конце 2022 - начале 2023 года сайты на базе платформы 1С-Битрикс: Управление сайтом подверглись массовой атаке, злоумышленники сумели найти уязвимости в коде системы управления контентом Bitrix и использовали их для заражения сайта вредоносными файлами, получая контроль над сайтами, либо просто удаляя содержимое сайтов. Рассмотрим самые распространенные уязвимости, через которые были взломаны сайты:
- https://bdu.fstec.ru/vul/2022-01141 – уязвимость модуля vote («голосования и опросы») до версии 22.0.400, которая позволяет загружать произвольные файлы на сервер с сайтом;
- https://bdu.fstec.ru/vul/2023-05565 – стандартный модуль fileman («управление структурой») до версии 22.200.200, уязвимость позволяет внедрить текст с вредоносной нагрузкой, используя функционал BBcode (язык разметки для форматирования текста при отправке сообщений);
- https://bdu.fstec.ru/vul/2023-05857 – стандартный модуль landing («Сайты24») до версии 23.850.0, уязвимость позволяет выполнять команды операционной системы на уязвимом узле.
Разработчики платформы 1С-Битрикс постоянно ищут и исправляют подобные уязвимости. Обновления модулей помимо нового функционала включают в себя эти обновления безопасности. Список изменений доступен на странице https://dev.1c-bitrix.ru/docs/versions.php. Стоит заметить, что первые две уязвимости можно исправить с версией PHP 7.4 на сервере, а последнюю – уже только с версией 8.0. Это требование возникает из-за того, что последняя доступная версия Bitrix для PHP 7.4 – 23.300.100, а PHP версии 7.4 считается с начала 2023 года устаревшей. 1С-Битрикс подстраивается под новые версии языка PHP, на котором была разработана эта CMS, это дает возможность увеличить производительность и быстродействие всей системы и уменьшить количество потенциальных ошибок за счет более строгой типизации.
Глобальные релизы платформы выпускаются 2 раза в год, но более мелкие обновления, в том числе критические обновления безопасности, выходят практически каждую неделю.
Актуальные версии критичных модулей, необходимых для дополнительных интеграций
Зачастую при настройке модулей, связанных с интернет-эквайригом либо какими-то сторонними интеграциями, требуется актуальная версия модуля sale (“интернет-магазин”). К тому же, даже если в текущий момент модули, отвечающие за эквайринг и интеграции, работают без ошибок, то все равно возникают ситуации, когда при изменении каких-либо параметров со банка или стороннего сервиса, осуществляющего внешнюю интеграцию, перестает работать функционал сайта. Техподдержка со стороны внешних сервисов в праве требовать обновления своего модуля и соответственно платформы Bitrix для этого.
Как проходит обновление
Если вы зайдете в административную часть своего сайта на страницу «Обновление платформы», то скорее всего увидите сообщение об устаревшей версии PHP (либо сообщение что закончился срок получения обновлений, т.е. лицензия неактивна).
Прежде всего для обновления потребуется активная лицензия. Помимо доступа к последним обновлениям платформы, она дает доступ к ряду дополнительных возможностей, в основном связанных с облачными сервисами Bitrix, но не ограничивающихся ими:
- Резервное копирование в облако — файлы резервной копии сохраняются не на ваш сервер, а на серверы 1С-Битрикс. Тем самым можно сэкономить место на сервере если требуется, и вдобавок иметь дополнительные резервные копии на случай какой-то проблемы с вашим сервером.
- Защита от DDoS атак — сервис WebArmor защитит ваш сервер от подобных атак. Лицензия включает бесплатную защиту одного сайта от DDoS-атак в год сроком на 10 дней.
- Инспектор сайтов 1С-Битрикс — сервис, который каждые 15 минут проверяет работоспособность и доступность сайта с помощью запросов из 2 разных географических точек, срок регистрации домена, срок истечения вашей лицензии Битрикс, срок действия SSL-сертификата.
- CDN ускорение — технология, загружающая статический контент (картинки, стили, скрипты) страниц через серверы, ближайшие к посетителю сайта, благодаря этому страницы веб-сайта загружаются быстрее.
- Возможность устанавливать и обновлять сторонние модули из маркетплейса Bitrix (https://marketplace.1c-bitrix.ru), расширяющие стандартный функционал сайта.
- Иметь больший приоритет у технической поддержки 1С-Битрикс, cрок ответа при этом не будет превышать шести рабочих часов. При истекшей лицензии тех. поддержка по-прежнему будет доступна, но заявки будут обрабатываться с более низким приоритетом.
Второе требование — переход на версию PHP 8.1 (текущую актуальную версию с точки зрения 1С-Битрикс) на сервере, где расположен сайт. В случае использования shared-хостинга изменить версию можно прямо на панели управления хостингом, в противном случае скорее всего вам потребуется помощь профессионалов.
В большинстве случаев без помощи профессионалов так же не обойтись из-за того факта, что при переходе на PHP 8й версии в устаревшем коде возникают ошибки, так как в этом случае появляются некоторые изменения синтаксиса PHP, ломающие обратную совместимость. Вдобавок существует много модулей из маркетплейса Битрикс, которые давно заброшены и их код не адаптирован под новую версию языка PHP, таким образом если вы используете на вашем сайте подобный модуль, то только профессионал может исправить ошибки, связанные с совместимостью и восстановлением рабочего функционала модуля. Даже если сторонний модуль имеет новые версии, в которых реализована совместимость с новой версией PHP, зачастую он содержит в себе доработки, которые потенциально могут быть затертыми обновлением (из опыта к таким модулям в первую очередь можно отнести решения от Аспро). Поэтому совместимость таких модулей с новой версией PHP исправляется программистом вручную.
Техническая поддержка 1С-Битрикс сможет помочь только в том случае, если ошибки происходят при работе стандартных модулей продуктов «1С-Битрикс» (в названиях которых содержатся «bitrix.*»). Но из опыта обновлений разных веб-сайтов можно сказать, что ошибки связаны в первую очередь со сторонними модулями и иными доработками сайта, поэтому если ошибки возникают у стандартных модулей, скорее всего они были так же доработаны и эти доработки не были совместимы с новой версией PHP.
Таким образом, обновление на вашем сайте 1С-Битрикс можно описать последовательностью следующих шагов:
- Создается полная резервная копия сайта (все файлы и база данных), тем самым всегда можно будет вернуть исходную версию сайта, если это потребуется.
- Из этой копии разворачивается тестовая копия сайта, на нем выполняется переход на PHP 8.1 и обновление Bitrix. Там же исправляются все возникшие ошибки.
- Проводится тестирование этого сайта-копии, и если найдены еще какие-то ошибки, то они исправляются.
- По согласованию на определенную дату и время закрывается публичная часть вашего сайта, осуществляется переход на PHP 8.1, обновляется Bitrix и переносятся вручную правки ошибок, которые были найдены на тестовом сайте. Ручной перенос требуется для того, чтобы не пропали заказы и какие-либо другие новые записи на вашем сайте, которые появились уже после создания тестовой копии сайта.
- Открывается публичная часть сайта и проводится тестирование уже вашего «боевого» сайта, если найдены еще какие-то дополнительные ошибки, они оперативно исправляются. Тестовая среда не всегда позволяет обнаружить проблемы с внешними интеграциями и с обработчиками событий, связанных с интеграциями с внешними площадками.
Как правило, в зависимости от того, насколько устарело ядро сайта и от количества сторонних модулей, обновление занимает порядка 8-20 часов, каждый сайт индивидуален, поэтому изучается и оценивается отдельно.
PHP 8.1 — это стабильная версия, которая будет поддерживаться со стороны Bitrix на протяжении долгого времени. Этот переход является ключевым в обеспечении стабильности работы вашего сайта и упрощения в дальнейшем получения новых обновлений платформы и получения технической поддержки со стороны 1С-Битрикс.