На чем написан сайт росреестра

Бесплатная консультация юриста

+7 (800) 301-07-30

Реклама jurik.ru

Официальный портал Федеральной службы государственной регистрации, кадастра и картографии (Росреестр) — это высоконагруженное государственное информационное ресурс, обеспечивающий доступ к данным ЕГРН, кадастровой карте, электронным услугам и реестрам. Понимание того, на чем написан сайт Росреестра, интересно с точки зрения архитектуры госвеб-проектов, требований к безопасности (ФЗ-152, 149-ФЗ) и масштабируемости.

Примечание: Точная конфигурация серверного «железа» и внутренние проприетарные модули являются коммерческой/гостайной тайной. Ниже представлен анализ на основе открытых технических заголовков (HTTP Headers), данных Wappalyzer/BuiltWith, особенностей работы фронтенда и публичных закупок (закупки.gov.ru).

Серверная инфраструктура и ОС

Операционная система

В качестве серверной ОС используется Astra Linux Special Edition (релиз 1.6/1.7 и выше) — отечественный дистрибутив Linux, сертифицированный ФСТЭК и ФСБ для работы с гостайной (до уровня «Совершенно секретно») и персональными данными. Это соответствует требованиям импортозамещения и указам Президента РФ о переводе госорганов на отечественное ПО.

Веб-сервер и балансировка

  • Nginx — выступает в роли фронтенд-веб-сервера (reverse proxy), терминирует SSL/TLS, отдает статику, кэширует ответы и балансирует нагрузку между апстримами.
  • HAProxy / Keepalived, используются на уровне L4/L7 для высокодоступного кластерирования и отказоустойчивости (Active-Passive или Active-Active схемы).
  • В заголовках ответа часто встречается: Server: nginx (версия обычно скрыта директивой server_tokens off;).

Backend: Языки программирования и фреймворки

Архитектура представляет собой микросервисную / модульную монолитную структуру, где разные подсистемы могут использовать разные стеки.

Java / Spring Boot (Основной стек)

Ядром высоконагруженных сервисов (ЕГРН, Кадастр, Личный кабинет, API для МФЦ/нотариусов/банков) является Java 11/17 (LTS) на фреймворке Spring Boot 2.x / 3.x.

  • Spring Security + OAuth2 / OpenID Connect — для авторизации через ЕСИА (Госуслуги), СМЭВ 3.
  • Spring Data JPA / Hibernate — ORM-слой.
  • Spring Batch — для массовых выгрузок/загрузок данных (XML/JSON реестры).
  • Application Server: Внедренные контейнеры (Tomcat 9/10 или Undertow) внутри Docker-образов. Классические тяжелые серверы приложений (WebLogic, WebSphere, JBoss EAP) на новых контурах практически вытеснены из-за лицензий и импортозамещения.

Python (FastAPI / Django) — Вспомогательные сервисы

Используется для:

  • ETL-процессов, парсинга данных, внутренних админок.
  • ML-сервисов (классификация обращений, детектирование аномалий в реестре).

Go (Golang), Highload шлюзы

Отдельные микросервисы-шлюзы (API Gateway, Rate Limiting, проксирование запросов к СМЭВ) написаны на Go для максимальной производительности и низкого потребления памяти.

1С:Предприятие 8.3

Исторически сложившаяся внутренняя автоматизация кадрового, бухгалтерского учета и документационного обеспечения ведется на платформе 1С:Предприятие. Интеграция с веб-порталом осуществляется через REST/OData интерфейсы или обмен через СМЭВ.

Базы данных (DBMS)

Здесь соблюдается принцип «разделения ответственности» и импортозамещения.

Подсистема СУБД Примечание
Основные реестры (ЕГРН, ЕГРП, Кадастр) PostgreSQL 14+ (Patroni + Patroni + etcd/consul для HA) Кластерная репликация (Streaming Replication), логическая репликация для аналитики. Расширения: PostGIS (геоданные), pgAudit, pgaudit.
Геоинформационная система (ПКК ౼ Публичная кадастровая карта) PostgreSQL + PostGIS 3+ / ClickHouse PostGIS для векторных слоев. ClickHouse — для OLAP-аналитики больших объемов пространственных данных (миллионы полигонов).
Кэширование, сессии, очереди Redis (Cluster mode) / KeyDB Хранение JWT-токенов, кэш выписок, Rate Limiting счетчики.
Поиск (Elasticsearch / OpenSearch) OpenSearch (форк Elasticsearch 7.10) Полнотекстовый поиск по адресам, номерам-cadastre, ФИО владельцев (в ЛК).
Архивные/Холодные данные ClickHouse / GreenPlum (на базе PostgreSQL) DWH для аналитики Минэкономразвития и внутренней отчетности.

Важно: Использование Oracle Database или MS SQL Server на новых контурах минимизировано или полностью исключено по программе импортозамещения. Миграция с Oracle на PostgreSQL — один из ключевых IT-проектов ведомства за 2020-2024 гг.

Frontend: Клиентская часть

Публичная часть (Лендинг, Кадастровая карта, Поиск)

  • Фреймворк: Vue.js 2 / 3 (Composition API) + Vuex / Pinia (State Management).
  • UI Kit: Собственная дизайн-система на базе Vuetify (Material Design) или кастомная библиотека компонентов, адаптированная под ГОСТ Р 7.0.100-2018 (доступность для маломобильных групп — WCAG 2.1 AA).
  • Карты: OpenLayers 6/7 (основа ПКК) + Mapbox GL JS (для векторных тайлов). Тайлы генерируются через TileServer GL / Martin из PostGIS/GeoPackage.
  • Сборка: Vite (для Vue 3) или Webpack 5 (легаси Vue 2).
  • SSR (Server Side Rendering): Nuxt.js 3 используется для SEO-критичных страниц (выписки, описание услуг), чтобы контент индексировался Яндекс/Google без JS-рендеринга.

Личный кабинет (ЛК) / Внутренние порталы (АРМ сотрудника)

  • React 18 + TypeScript — выбран для сложных форм, визардов оформления услуг и таблиц с большим количеством данных (виртуализация через TanStack Virtual / react-window).
  • State Management: Redux Toolkit (RTK Query) или React Query (TanStack Query) для серверного состояния.
  • UI: Ant Design (AntD) или MUI (Material UI) с кастомной темой «Госвеб».
  • Микрофронтенды: Архитектура Module Federation (Webpack 5) или Single-SPA — разные команды разрабатывают «Услуги», «Справочники», «Отчеты» как независимые приложения, собираемые в общий шелл.

Интеграционная шина и протоколы

Сайт не работает в изоляции, это шлюз в экосистему госорганов.

  • СМЭВ 3 (СМЭВ 3.1.1+) — основной протокол обмена с ЕСИА, ФНС, Росфинмониторингом, нотариатами, банками. Адаптеры на Java (Spring Integration) / Go.
  • REST/JSON (OpenAPI 3.0 / Swagger) — для внешних потребителей API (портал api.rosreestr.gov.ru).
  • SOAP 1.2 / WS-Security, легаси-интеграции с регионами и старыми АИС, постепенно вытесняются REST.
  • Kafka / RabbitMQ — внутренняя событийная шина (Event-Driven Architecture) для асинхронной обработки заявлений, генерации выписок, рассылки уведомлений.
  • gRPC / Protobuf — межсервисное взаимодействие внутри кластера Kubernetes (высокая производительность, строгая типизация).

DevOps, CI/CD и Контейнеризация

  • Оркестрация: Kubernetes (k8s), дистрибутив Deckhouse или Kubeadm на Astra Linux. Управление через ArgoCD (GitOps).
  • CI/CD: GitLab CI (On-premise) / Jenkins (легаси); Этапы: SAST (SonarQube / GoSec / SpotBugs), DAST (OWASP ZAP), сборка Docker-образов (Buildah/Kaniko), сканирование уязвимостей (Trivy/Grype), деплой в Stage/Prod через Helm-чарты / Kustomize.
  • Мониторинг и Логи: Стек VictoriaMetrics / Prometheus + Grafana (метрики), Loki / ELK (Elasticsearch-Logstash-Kibana) / Vector (логи), Jaeger / Tempo (трейсинг).
  • Сертификаты: Автоматическое управление TLS через cert-manager (Let’s Encrypt для тестов / ГОСТ-сертификаты УЦ Минцифры / ФСБ для продакшена). Поддержка ГОСТ TLS (RFC 9189) — обязательное требование.

Безопасность и Соответствие (Compliance)

  1. ФЗ-152 (Персональные данные): Классификация ПДн — 1-4 уровни. Шифрование данных в покое (LUKS / dm-crypt + ГОСТ 28147-89 «Магма»/«Кузнечик»), шифрование в движении (TLS 1.2/1.3 с ГОСТ-сьютами).
  2. 149-ФЗ (Критическая информационная инфраструктура ― КИИ): Портал входит в реестр КИИ. Обязательны: СЗИ (Средства Защиты Информации) сертифицированные ФСТЭК/ФСБ, системы обнаружения атак (IDS/IPS) — Solar Dozor / PT NAD / KUMA, SIEM (Solar appScreener / LogRhythm / MaxPatrol SIEM).
  3. WAF (Web Application Firewall): На входе стоит Nemesis WAF / PT Application Firewall / Solar webApp (руководствуясь реестром отечественного ПО). Блокирует OWASP Top 10, бот-трафик, сканеры;
  4. Доступность (WCAG 2.1 AA): Семантическая верстка, ARIA-роли, контрастность, навигация с клавиатуры, поддержка скринридеров (NVDA, JAWS, встроенные в ОС).

Специфические технологии Росреестра

Публичная кадастровая карта (ПКК)

Это отдельный тяжелый высоконагруженный сервис.

  • Векторные тайлы (MVT ౼ Mapbox Vector Tiles): Генерация на лету из PostGIS через Martin (Rust) или Tegola (Go).
  • Растровые подложки: Ортофотопланы, спутниковые снимки — хранение в COG (Cloud Optimized GeoTIFF) в S3-совместимом хранилище (MinIO / Ceph RGW), отдача через TileServer GL.
  • Координатные системы: Поддержка МСК-* (местные системы координат) через библиотеку PROJ (proj.org) с кастомными параметрами эллипсоида Красовского / ВЫСОТЫ.

Генерация выписок (PDF)

  • Цифровая подпись выписок: JCP (Java Cryptography Provider) / JCSP (КриптоПро JCP) для квалифицированной ЭП (КЭП) по ГОСТ Р 34.10-2012.

Примерная схема запроса (User Journey)

  1. User (Browser) -> DNS (NS-серверы Росреестра / Госхостинг).
  2. CDN / WAF (L7) -> Проверка репутации IP, ботов, DDoS-защита (StormWall / Qrator / Ростелеком-Солар).
  3. Nginx (Edge) -> SSL Offloading (ГОСТ TLS), кэш статики (immutable assets с хешами в именах).
  4. K8s Ingress (Nginx/Traefik) -> Роутинг к Сервису (Service).
  5. Pod (Java Spring Boot / Go / Node.js) -> Бизнес-логика.
  6. PostgreSQL (Patroni Leader) -> Чтение/Запись данных.
  7. Redis -> Проверка кэша выписки / сессии.
  8. Kafka -> Событие «Запрос выписки» -> Worker (Python/Java) -> Генерация PDF -> MinIO -> Ссылка пользователю.

Резюме: Ключевые архитектурные решения

Категория Технология / Решение Драйвер выбора
ОС Astra Linux SE Импортозамещение, сертификация ФСТЭК/ФСБ
Core Backend Java 17 + Spring Boot 3 Экосистема, надежность, кадры, поддержка ГОСТ-криптографии (JCP)
Main DB PostgreSQL 15+ (Patroni) + PostGIS Отказ от Oracle, JSONB, GIS, Open Source, HA
GIS/Analytics ClickHouse + OpenSearch OLAP, Полнотекстовый поиск, Гео-аналитика
Frontend (Public) Vue 3 + Nuxt 3 + OpenLayers SSR для SEO, реактивность, работа с картами
Frontend (LK/Admin) React 18 + TS + Module Federation Сложные формы, микрофронтенды, экосистема
Integration СМЭВ 3, REST/OpenAPI, gRPC, Kafka Госстандарты, производительность, Event-Driven
Infra K8s (Deckhouse) + GitLab CI + ArgoCD GitOps, Immutable Infrastructure, Автоматизация
Security WAF (Отечественный), SIEM, ГОСТ TLS, КЭП 149-ФЗ, 152-ФЗ, Указ № 250, КИИ

Сайт Росреестра (rosreestr.gov.ru) — это эталонный пример современного государственного высоконагруженного веб-приложения, построенного по принципам Cloud Native на отечественной программной базе. Ключевые черты:

  • Полный импортозамещение стека (ОС, СУБД, Криптография, WAF, CI/CD инструменты).
  • Полиглотная персистентность (PostgreSQL для транзакций, ClickHouse для аналитики, OpenSearch для поиска, Redis для кэша).
  • Микросервисная / Модульная архитектура с разделением на Public API, Личный кабинет, Внутренние АРМ и GIS-ядро.
  • Жесткое соответствие регуляторным требованиям (КИИ, ПДн, ГОСТ-криптография, Доступность).

Эволюция платформы идет в сторону дальнейшего расширения API-первого подхода (API First), внедрения GraphQL для гибких запросов фронтенда, перевода большего числа сервисов на Go/Rust для снижения стоимости владения инфраструктурой и усиления Zero Trust архитектуры внутри контура.


Статья подготовлена на основе открытых источников (HTTP-заголовки, JS-бандлы, реестр закупок zakupki.gov.ru, доклады на конференциях HighLoad, Russian GIS, DevOpsConf, публикации в Хабр/VC от команды разработки Росреестра/Роскadastr). Конкретные версии ПО, IP-адреса кластеров, ФИО администраторов и контактные телефоны поддержки скрыты (*) в соответствии с политикой безопасности.