Новый домик для мэрии

Модернизация и поддержка официального сайта города Новосибирска
сайт города Новосибирскамуниципальный сайт
Досье
Официальный сайт Новосибирска создан для публикации официальной информации, документов, структуры мэрии Новосибирска, пресс-релизов и материалов от администраций районов
Задание
Модернизировать муниципальный сайт под требования безопасности, наладить работу локального сервера и поддерживать работоспособность ресурса
Справка
Все интернет-ресурсы государственных и муниципальных органов должны отвечать требованиям безопасности Федеральной службы по техническому и экспортному контролю (ФСТЭК)

Сайт мегаполиса — это особенный сайт. Здесь публикуется вся официальная информация от первых лиц города. С таким ресурсом требуются иные принципы работы, отличные от работы с бизнесом: действуют строгие правила и стандарты, здесь нет места для творчества, нужно соблюсти кучу гостребований.

Важно: безопасность — раз, соответствие официальным госстандартам — два. Иначе просто нельзя.

Проект попал к нам в июле 2023 года. Нужен был подрядчик с крепкой квалификацией, чтобы сайт всегда работал и был доступен, всегда была возможность, чтобы с ним могли работать из разных департаментов — оттуда ежедневно могут публиковать по 30 новостей и 20 документов, никакая информация не должна стираться и пропадать. Многие публикации проверяет прокуратура.

В общем, требовались глобальные технические изменения и рассудительные головы. Работа разделилась на два этапа:

01
Модернизация

Привести сайт в соответствие с требованиями ФСТЭК и с обновлением PHP: обновить Битрикс и этим повысить защиту сайта, отладить работу локального сервера

02
Поддержка

Плановые и точечные работы над доступностью сайта. В перспективе наладить мониторинг работоспособности сайта для оперативного устранения сбоев

Первое, с чего мы начали, это проверили сайт на соответствие требованиям ФСТЭК — эта организация устанавливает стандарты для сайтов государственных и муниципальных органов. Мы изучили документацию ФСТЭК, выявили несоответствия и наметили фронт технических работ.

Безопасность прежде всего

Это самая интересная часть, где, если потянешь за одну ниточку, тут же распускается другая. Сайт был разработан довольно давно, и Битрикс нуждался в обновлении. Для безопасности сайта нужно было обновить модуль Битрикс, а значит и PHP — новая версия этой CMS не установится на версии PHP ниже 8.1. Поэтому было необходимо обновить:

+

ядро ​​сайта

+

версию php на сервере

+

все файлы сайта под новую версию языка

Казалось бы, ничего сложного — обновить версию языка и CMS. Но вместе с необходимостью такого обновления возникли и связанные с ним риски.

Версия Битрикс была устаревшей, ошибки при переключении были неизбежны: некоторые модули, которые были установлены на сайте, уже не поддерживаются разработчиками, а значит, не обновлены под новую версию PHP, — часть функций перестала поддерживаться, у другой сменился синтаксис. Если бы мы сразу обновили сайт, то он бы стал полностью неработоспособным. Поэтому нам пришлось дорабатывать модули самостоятельно.

Но это рутина. Дальше — самая мякотка.

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

И здесь обнаружились свои нюансы. До нас с виртуальной машиной работало много подрядчиков. Она не имела технической документации: на сервере лежало много лишних файлов, скриптов и при этом ничего не описано.

Делаем рокировку фундамента

Решение: создать новую виртуальную машину и вести работы по обновлению на ней, чтобы они не задели боевой сайт. На этой новой машине мы настроили под Битрикс всё, как это должно быть по правилам ФСТЭК, и развернули на ней демо-версию сайта. После того, как мы обновили PHP и Битрикс на демке и исправили все возникшие ошибки, нам нужно было эту демку сделать продом — перенаправить домен боевого сайта на новый сервер.

Попутно возникали неполадки, которые невозможно было предсказать во время обновления — они были непрогнозируемыми: никакой документации к текущему серверу, домику для сайта, нет, а чтобы их спрогнозировать, нужно было месяц посвятить только техническому изучению этого домика — «подводной части айсберга». Проще построить новый.

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

Генеральная уборка и новоселье

Обновление PHP мы делали на новой виртуальной машине, структуру которой мы сделали с нуля, поэтому сейчас там нет ничего лишнего. На данный момент новая виртуальная машина крутит на себе боевой сайт, который принимает трафик.

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

Кроме того, подбирая оптимальный метод, мы усиливаем защиту сайта от таких DDoS-атак, с которыми штатная защита Битрикс справляться не умеет, и подключаемся для ситуативных решений — как экстренных, так и плановых. Мы настроили систему мониторинга, и теперь, если на сайте возникает какая-то проблема, нам приходит сигнал, и специалисты NAN подключаются для принятия оперативных мер.

У техподдержки сайта не может быть финальных итогов — это всегда процесс. Главное, что теперь у города есть свой безопасный дом — с надежным фундаментом и крепкими стенами.

Давайте обсудим ваше задание!
telegram whatsapp
Или напишите в Телеграм или Вацап