289 lines
24 KiB
Markdown
289 lines
24 KiB
Markdown
# Задачи поддержки базового комплекса DetMir
|
|
|
|
Документ описывает задачи сопровождения того комплекса серверов,
|
|
виртуализации, сетевых сервисов и прикладного ПО, который существовал до
|
|
начала разработки AWatch-rus.
|
|
|
|
AWatch-rus, ActivityWatch-коллекторы, новые дашборды, новые контуры
|
|
телеметрии, ClickHouse-аналитика AWatch-rus и разработка продукта в этот
|
|
объем не входят. Их нужно оформлять отдельной следующей задачей.
|
|
|
|
Документ является рамочным ТЗ на постоянную техническую поддержку базового
|
|
контура. Он не заменяет договор, перечень доступов, инвентарную ведомость и
|
|
схему сети, но задает границы работ, ожидаемый режим сопровождения и результат,
|
|
который должен получать владелец.
|
|
|
|
## Цель поддержки
|
|
|
|
Поддержка должна обеспечивать штатную работу базовой ИТ-инфраструктуры
|
|
DetMir: серверы доступны, виртуальные машины запущены, web-сервер и
|
|
прикладное ПО отвечают штатно, данные сохраняются, резервные копии создаются,
|
|
удаленный доступ контролируется, а аварии устраняются с понятной фиксацией
|
|
причины.
|
|
|
|
## Границы ответственности
|
|
|
|
В рамках этой поддержки исполнитель отвечает за техническое сопровождение
|
|
существующего базового контура: диагностику, регламентные проверки,
|
|
административные настройки, восстановление штатной работы и документирование
|
|
изменений.
|
|
|
|
В поддержку входят только те серверы, сервисы, сетевые устройства, VM/CT,
|
|
правила доступа, VPN-подключения, web-сайты, базы данных и файловые каталоги,
|
|
которые переданы владельцем как часть существующего контура DetMir.
|
|
|
|
Если в процессе работ обнаруживается новый сервис, неизвестная VM, новый
|
|
публичный endpoint, сторонний сервис или компонент без понятного владельца, он
|
|
сначала фиксируется как находка и риск. Постоянное сопровождение такого
|
|
компонента начинается только после подтверждения владельцем, что он включается
|
|
в контур поддержки.
|
|
|
|
Работы по изменению бизнес-логики прикладного ПО, разработке новых функций,
|
|
миграции на новые платформы, покупке оборудования, продлению лицензий,
|
|
работам провайдеров и физическому монтажу кабельной инфраструктуры не
|
|
считаются включенными в базовую поддержку, если отдельно не согласованы.
|
|
|
|
## Состав поддерживаемого контура
|
|
|
|
- Узел виртуализации и размещенные на нем виртуальные машины или контейнеры.
|
|
- Web-сервер: HTTP/HTTPS-доступность, виртуальные хосты, TLS-сертификаты,
|
|
reverse proxy, access/error logs и место под web-контент.
|
|
- Существующие прикладные сервисы и связанные файловые каталоги.
|
|
- Существующие базы данных и служебные хранилища, если они уже использовались
|
|
до проекта AWatch-rus.
|
|
- Proxmox: состояние узла, VM/CT, storage, snapshots, backups, web-доступ.
|
|
- pfSense: firewall, NAT, маршрутизация, VLAN/interface status, DHCP, DNS,
|
|
gateway monitoring, логи и правила доступа.
|
|
- OpenVPN: сервер, клиентские профили, сертификаты, маршруты, доступность
|
|
подключений и контроль истекающих ключей.
|
|
- Suricata: состояние IDS/IPS, обновление правил, алерты, false positive,
|
|
исключения и влияние блокировок на рабочий трафик.
|
|
- Сетевой контур: маршрутизация, VPN, firewall, DNS, DHCP, удаленный доступ.
|
|
- Системные сервисы Linux, планировщики задач и фоновые службы.
|
|
- Резервное копирование, журналы, учетные записи и права доступа.
|
|
|
|
## Ежедневные задачи
|
|
|
|
- Проверять доступность ключевых серверов и виртуальных машин.
|
|
- Проверять состояние узла виртуализации: нагрузка CPU/RAM, свободное место,
|
|
состояние storage, отсутствие зависших VM/CT.
|
|
- Проверять Proxmox: состояние node, VM/CT, storage, backup jobs, snapshots и
|
|
ошибки в task log.
|
|
- Проверять web-сервер: HTTP/HTTPS-ответ, корректность виртуальных хостов,
|
|
срок действия TLS-сертификатов, ошибки 4xx/5xx и переполнение access/error
|
|
logs.
|
|
- Проверять работоспособность прикладных сервисов: запуск, доступность,
|
|
отсутствие явных ошибок в журналах.
|
|
- Проверять сетевую связность между основными узлами, VPN и удаленный доступ.
|
|
- Проверять состояние firewall/NAT/маршрутов, если были жалобы на доступ.
|
|
- Проверять pfSense: gateway status, interface status, DHCP leases,
|
|
firewall/NAT rules, логи блокировок по жалобам на доступ.
|
|
- Проверять OpenVPN server и клиентов: активные подключения, маршруты,
|
|
reachability внутренних сетей, ошибки TLS/auth/route push.
|
|
- Проверять Suricata: запущен ли сервис, нет ли массовых блокировок рабочего
|
|
трафика, критичных алертов и переполнения логов.
|
|
- Если Suricata на конкретном узле не введена в эксплуатацию и
|
|
`suricata.service` находится в состоянии `inactive`, фиксировать это как
|
|
контролируемое предупреждение или `SKIP` с явной причиной, а не как
|
|
самостоятельный сбой процесса.
|
|
- Проверять, что критичные systemd services, timers и cron jobs
|
|
находятся в ожидаемом состоянии.
|
|
- Проверять наличие свежих резервных копий по базовым системам.
|
|
- Фиксировать найденные проблемы и выполненные действия в журнале поддержки.
|
|
|
|
## Еженедельные задачи
|
|
|
|
- Проверять свободное место на всех важных дисках и хранилищах.
|
|
- Проверять накопление старых логов, временных файлов, дампов и архивов.
|
|
- Проверять успешность резервного копирования за неделю.
|
|
- Проверять, что резервные копии реально читаются и доступны для восстановления.
|
|
- Проверять системные журналы Linux и web-сервера на повторяющиеся ошибки.
|
|
- Проверять web-сервер: рост 5xx, подозрительные запросы, устаревающие
|
|
сертификаты, переполнение логов, доступность ключевых URL и корректность
|
|
reverse proxy.
|
|
- Проверять pfSense и сетевые журналы: повторяющиеся блокировки, падение
|
|
gateway, flapping интерфейсов, ошибки DNS/DHCP/VPN.
|
|
- Проверять OpenVPN: список активных клиентов, неиспользуемые профили,
|
|
приближающиеся к истечению сертификаты, корректность клиентских маршрутов.
|
|
- Проверять Suricata alerts: отделять реальные риски от false positive,
|
|
фиксировать исключения и изменения правил.
|
|
- Проверять состояние учетных записей, срок действия паролей, лишние
|
|
административные доступы.
|
|
- Проверять стабильность VPN/удаленного доступа и отсутствие неожиданных
|
|
открытых портов.
|
|
- Готовить короткий отчет владельцу: что проверено, что исправлено, какие
|
|
риски остаются.
|
|
|
|
## Ежемесячные задачи
|
|
|
|
- Проводить контрольный тест восстановления из резервной копии на безопасном
|
|
участке данных или тестовой копии.
|
|
- Проверять обновления ОС и прикладного ПО, отдельно выделяя безопасные и
|
|
рискованные обновления.
|
|
- Планировать окно обслуживания для обновлений, перезагрузок и чистки.
|
|
- Проверять состояние сертификатов, доменных имен, VPN-профилей и учетных
|
|
данных удаленного доступа.
|
|
- Проводить аудит firewall-правил, пробросов портов и внешне доступных
|
|
сервисов.
|
|
- Проводить аудит web-сервера: виртуальные хосты, TLS-настройки, redirects,
|
|
reverse proxy, права на каталоги, logrotate, backup web-конфигурации и
|
|
отсутствие лишних публичных endpoints.
|
|
- Проводить аудит pfSense: WAN/LAN/VPN rules, NAT, aliases, floating rules,
|
|
DHCP/DNS settings, gateway groups и резервную копию конфигурации.
|
|
- Проводить аудит OpenVPN: server mode, client-specific overrides,
|
|
сертификаты, отозванные клиенты, push routes и доступы по пользователям.
|
|
- Проводить аудит Suricata: режим IDS/IPS, включенные rulesets, suppress list,
|
|
pass/drop правила и влияние на критичные сервисы.
|
|
- Проводить аудит Proxmox: версии, состояние repositories, backup schedule,
|
|
storage utilization, snapshots, права пользователей и доступ к web UI.
|
|
- Обновлять эксплуатационную документацию: IP-адреса, учетные записи без
|
|
паролей, роли серверов, схемы доступа, процедуры восстановления.
|
|
- Проверять, что нет устаревших или неизвестных сервисов, запущенных без
|
|
владельца и назначения.
|
|
|
|
## Результаты работ
|
|
|
|
Поддержка должна оставлять проверяемый результат, а не только устное сообщение
|
|
о выполненных действиях.
|
|
|
|
Минимальные результаты:
|
|
|
|
- журнал выполненных проверок и изменений;
|
|
- отметка о ежедневной проверке базового состояния;
|
|
- еженедельный отчет владельцу с перечнем проверок, исправлений и рисков;
|
|
- краткий инцидентный отчет после серьезных сбоев;
|
|
- актуализация схемы доступа, списка серверов, VM/CT, сетевых сервисов и
|
|
ответственных лиц при выявлении изменений;
|
|
- список открытых рисков и отложенных работ, которые требуют отдельного
|
|
решения владельца.
|
|
|
|
Еженедельный отчет должен быть коротким и практическим: что проверено, что
|
|
исправлено, что требует решения, какие риски остаются и какие действия
|
|
предлагаются на следующую неделю.
|
|
|
|
## Инцидентные задачи
|
|
|
|
- Восстановление доступа к серверу, VM, web-серверу или прикладному сервису.
|
|
- Устранение нехватки места, памяти, зависших процессов и служб.
|
|
- Восстановление работы прикладных сервисов, файловых каталогов, баз данных
|
|
или сетевых шар.
|
|
- Разбор web-инцидентов: недоступность HTTP/HTTPS, ошибки TLS, неверный
|
|
redirect, поломка reverse proxy, массовые 4xx/5xx, переполнение логов или
|
|
нехватка места под web-контент.
|
|
- Разбор проблем VPN, маршрутизации, DNS, firewall и удаленного доступа.
|
|
- Разбор и восстановление pfSense после ошибки правил, NAT, gateway, DHCP,
|
|
DNS, interface/VLAN или некорректного firewall reload.
|
|
- Разбор и восстановление OpenVPN server/clients: TLS/auth ошибки, истекшие
|
|
сертификаты, невыданные маршруты, недоступность внутренних сетей.
|
|
- Разбор Suricata-инцидентов: ложная блокировка рабочего трафика, всплеск
|
|
алертов, обновление правил, отключение/исключение проблемной сигнатуры.
|
|
- Восстановление Proxmox VM/CT после зависания, нехватки storage, ошибки
|
|
backup/snapshot или некорректного shutdown.
|
|
- Восстановление после неудачного обновления, сбоя питания или некорректной
|
|
перезагрузки.
|
|
- Восстановление данных из резервной копии.
|
|
- Проверка подозрительной активности: неизвестные подключения, новые учетные
|
|
записи, неожиданные открытые порты, странные timers или cron jobs.
|
|
- Подготовка краткого инцидентного отчета: причина, влияние, что сделано, что
|
|
нужно изменить, чтобы сбой не повторился.
|
|
|
|
## Критичность заявок
|
|
|
|
- P1, полный простой: недоступен ключевой сервис, web-сервер, VM, VPN,
|
|
firewall/gateway или хранилище, из-за чего пользователи не могут выполнять
|
|
основную работу.
|
|
- P2, деградация: сервис работает частично, есть ошибки, падение
|
|
производительности, нестабильность VPN/сети, переполнение диска или риск
|
|
скорого отказа.
|
|
- P3, плановая заявка: настройка, проверка, обновление, добавление правила,
|
|
выпуск сертификата, изменение доступа или регламентная работа без текущего
|
|
простоя.
|
|
- P4, консультация и документация: уточнение схемы, подготовка инструкции,
|
|
разбор логов без текущего влияния на работу, рекомендации владельцу.
|
|
|
|
Критичность может быть повышена, если проблема затрагивает удаленный доступ,
|
|
резервное копирование, безопасность периметра, публичный web-доступ или риск
|
|
потери данных.
|
|
|
|
## Правила выполнения работ
|
|
|
|
- Перед рискованными изменениями делать резервную копию конфигурации или
|
|
snapshot, если это технически возможно.
|
|
- Перед изменениями pfSense/OpenVPN/Suricata сохранять текущий config backup и
|
|
фиксировать путь отката.
|
|
- Перед изменениями Proxmox делать snapshot/backup для затронутой VM/CT, если
|
|
это не ухудшает ситуацию и есть достаточно места.
|
|
- Не менять сетевые маршруты, firewall, VPN и удаленный доступ без понимания
|
|
пути отката.
|
|
- Не устанавливать обновления на production без оценки риска и окна
|
|
обслуживания.
|
|
- Не удалять старые данные и логи без проверки, что они не нужны для бизнеса
|
|
или расследования.
|
|
- После каждого изменения проверять фактический результат: доступность сервиса,
|
|
состояние VM, HTTP/HTTPS-ответ web-сервера, журнал ошибок, место на диске.
|
|
- Все изменения фиксировать: дата, сервер, действие, причина, результат,
|
|
способ отката.
|
|
|
|
## Условия выполнения поддержки
|
|
|
|
Для нормального выполнения поддержки владелец должен предоставить и
|
|
поддерживать актуальными:
|
|
|
|
- административный доступ к Proxmox, pfSense, Linux-серверам, web-серверу,
|
|
VPN и другим компонентам, входящим в контур;
|
|
- безопасный способ хранения и передачи учетных данных;
|
|
- локальный приватный файл параметров для автоматизированных проверок, например
|
|
`$HOME/.config/awatch-rus/detmir-support.env`, с правами доступа только для
|
|
владельца и без помещения секретов в Git;
|
|
- контакт ответственного лица для согласования рискованных изменений;
|
|
- список критичных сервисов и допустимые окна обслуживания;
|
|
- сведения о провайдерах, доменах, сертификатах, внешних адресах и каналах
|
|
связи;
|
|
- возможность получить физический доступ к оборудованию через сотрудника на
|
|
месте, если удаленная диагностика недостаточна;
|
|
- подтверждение, какие сервисы являются основными, резервными или
|
|
историческими.
|
|
|
|
Если доступы, контакты, резервные копии или сведения о контуре отсутствуют,
|
|
сроки диагностики и восстановления могут увеличиваться. Такие ограничения
|
|
должны фиксироваться как отдельный риск.
|
|
|
|
## Минимальный SLA
|
|
|
|
- Плановая проверка: один раз в рабочий день.
|
|
- Реакция на P1, полный простой ключевого сервиса: начало диагностики в течение
|
|
2-4 часов в рабочее время.
|
|
- Реакция на P2, частичная деградация: начало диагностики в течение рабочего
|
|
дня.
|
|
- Реакция на P3/P4: планирование и выполнение по согласованию с владельцем.
|
|
- Еженедельный отчет владельцу.
|
|
- Плановые изменения только с резервной копией и проверкой результата.
|
|
- После каждого серьезного инцидента: краткий отчет и список мер против
|
|
повторения.
|
|
|
|
SLA задает срок реакции и начала диагностики. Срок полного устранения зависит
|
|
от причины инцидента, доступности резервных копий, необходимости участия
|
|
провайдера, наличия оборудования, доступа к учетным данным и возможности
|
|
провести работы без риска для действующего контура.
|
|
|
|
## Что не входит в этот объем
|
|
|
|
- Разработка и сопровождение AWatch-rus как продукта.
|
|
- Новые ActivityWatch-коллекторы и новые telemetry pipelines.
|
|
- Новые Grafana-дашборды и управленческая аналитика AWatch-rus.
|
|
- Новые аналитические контуры, созданные специально под AWatch-rus.
|
|
- Коммерческая упаковка, roadmap, CI/CD и разработка новых модулей AWatch-rus.
|
|
- Покупка, поставка и замена оборудования, если это не оформлено отдельно.
|
|
- Оплата, продление и сопровождение лицензий, доменов, сертификатов и услуг
|
|
провайдеров, если это требует отдельного договора или платежа.
|
|
- Физическая прокладка кабелей, монтаж СКС, электрика и работы в серверной,
|
|
требующие присутствия монтажной организации.
|
|
- Полноценный аудит информационной безопасности, пентест, расследование
|
|
инцидента ИБ и внедрение новых средств защиты сверх текущих pfSense,
|
|
OpenVPN и Suricata.
|
|
- Разработка нового прикладного ПО, изменение бизнес-логики существующих
|
|
систем и перенос данных между платформами.
|
|
|
|
Эти работы нужно оформлять отдельным приложением к поддержке, когда владелец
|
|
готов заказывать сопровождение уже разработанной системы AWatch-rus.
|