21 июл. 2025 г.·6 мин

Контроль доступа к BMC/IPMI: bastion, MFA и JIT для админов

Контроль доступа к BMC/IPMI: схема сегментации сети управления, bastion и MFA, just-in-time доступ, а также журналирование действий администраторов.

Контроль доступа к BMC/IPMI: bastion, MFA и JIT для админов

Почему доступ к BMC/IPMI надо защищать отдельно

BMC (Baseboard Management Controller) и IPMI - это отдельный канал управления сервером. Он работает даже тогда, когда операционная система не загрузилась. Через него администратор может открыть удаленную консоль, посмотреть датчики, перезагрузить сервер и поменять базовые настройки железа. На большинстве серверов такой интерфейс есть по умолчанию, включая стойочные платформы уровня GSE S200.

Проблема в том, что BMC дает власть над сервером глубже, чем учетная запись в ОС. Если атакующий получил доступ к BMC, он может обойти часть защитных мер, которые вы настроили в Windows или Linux. Поэтому BMC нельзя воспринимать как еще один «админский вход».

Самые критичные действия через BMC обычно такие:

  • включение и выключение питания, принудительная перезагрузка
  • доступ к KVM/виртуальной консоли и виртуальным носителям (можно загрузить другой образ)
  • изменение настроек загрузки и параметров оборудования
  • обновление прошивок (BMC, BIOS/UEFI), которое меняет доверенную базу

Доступ к BMC обычно нужен ограниченному кругу людей: инженерам эксплуатации, дежурной смене, команде дата-центра, иногда подрядчикам на время работ. Но на практике его часто выдают «на всякий случай», учетные данные начинают циркулировать между людьми, и контроль теряется.

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

Схема сегментации сети управления: базовый вариант

Главное правило для контроля доступа к BMC/IPMI: интерфейсы управления не должны быть достижимы из пользовательских подсетей (офис, Wi‑Fi, VDI, VLAN приложений). Если это правило нарушено, одна скомпрометированная рабочая станция превращается во вход в физическую инфраструктуру.

Обычно различают два подхода:

  • Out-of-band (OOB) - отдельная физическая или логическая сеть для BMC, независимая от трафика серверов.
  • In-band - управление через ОС и обычные интерфейсы.

OOB выбирают там, где важны восстановление после сбоев, удаленный доступ к консоли и питанию, а также контроль и аудит. In-band полезен как дополнительный канал, но не как единственный.

Базовая сегментация (4 зоны)

Для старта достаточно разделить сеть на понятные зоны и жестко ограничить маршрутизацию между ними:

  • админская сеть (рабочие станции администраторов или их защищенный VPN-пул)
  • bastion (jump host) как единственная точка входа к управлению
  • сегмент BMC (отдельный VLAN/VRF для IPMI/iDRAC/iLO)
  • SIEM/логирование (куда уходят события и записи)

Логика простая: администратор подключается к bastion, а уже bastion имеет доступ к BMC-сегменту по строго заданным адресам и портам. Прямые соединения «админская сеть -> BMC» блокируются.

Минимальные сетевые политики

Быстрый выигрыш в безопасности обычно дают несколько базовых ограничений:

  • из BMC-сегмента нет выхода в интернет и в пользовательские сети; по умолчанию маршрутизация наружу запрещена
  • разрешены только действительно нужные сервисы (например, NTP/DNS, если без них нельзя) и отправка логов в SIEM/лог-сервер
  • доступ к BMC разрешен только с bastion (иногда еще с ограниченного списка сервисных подсетей)
  • BMC лучше делить по группам риска: отдельные VLAN/VRF для критичных стоек или зон, чтобы компрометация одной группы не открывала весь парк

Такой контур уменьшает площадь атаки и готовит почву для MFA, just-in-time доступа и нормального аудита действий админов.

Bastion (jump host): как организовать единую точку входа

Bastion (jump host) - выделенный сервер, через который администраторы попадают в закрытый сегмент управления (BMC/IPMI). Он решает простую задачу: вместо десятков прямых входов на контроллеры появляется один контролируемый вход, где можно включить MFA, записывать сессии и быстро закрывать доступ.

Практическое правило для BMC: никаких прямых подключений к BMC из пользовательских VLAN, офисной сети и тем более из интернета. Только через bastion.

Как должен выглядеть путь доступа

Администратор сначала подключается в админский контур (или VPN для админов), затем входит на bastion, и только с него открывает веб-консоль BMC, SSH или KVM over IP к нужным устройствам. На межсетевых экранах это фиксируется явно: BMC-сегмент принимает трафик только от IP bastion (и, при необходимости, от мониторинга из отдельного доверенного сегмента).

Чтобы bastion не стал новой точкой взлома, его держат простым и предсказуемым: минимум софта, регулярные обновления, корпоративный EDR/антивирус, запрет лишних исходящих подключений, отдельные персональные учетные записи и вход только по MFA.

Разделение админов по группам

Доступ через bastion удобно выдавать по группам. Например, «DC-операторы» видят только BMC стойки своего ЦОДа, а «серверная команда» - только BMC своей зоны. Технически это делается списками разрешенных целей (allowlist) и правилами фаервола. Тогда даже при компрометации одной учетной записи атакующий не получает ключи от всего парка.

MFA и базовая гигиена входа для администраторов

MFA лучше включать там, где вы реально контролируете вход: на VPN, на bastion и в PAM (если он есть). У большинства BMC/IPMI MFA либо отсутствует, либо неудобно реализовано, поэтому попытки «прикрутить MFA прямо в BMC» часто дают ложное чувство защиты. Надежнее сделать так, чтобы до веб-интерфейса BMC можно было добраться только через контролируемую точку входа.

Типовой путь выглядит так: VPN с MFA -> bastion -> BMC в изолированной сети управления. В результате MFA защищает вход в контур, а не отдельные устройства.

Минимальная политика для входа обычно включает:

  • MFA для всех привилегированных учетных записей (VPN, bastion, PAM)
  • вход только с доверенных устройств (корпоративный ноутбук под управлением или VDI), без личных ПК
  • длинные уникальные пароли (обычно от 14-16 символов) без повторного использования
  • ограничение попыток входа и уведомления о блокировках
  • таймауты простоя и ограничение общей длительности сессии

Аварийный доступ нужен, иначе в критический момент вы сами себе перекроете поддержку. Но он должен быть редким и проверяемым: хранение «break-glass» учетных данных в защищенном хранилище, выдача только по заявке, усиленное журналирование, обязательная смена паролей и разбор причин после использования.

Just-in-time доступ: права только на время работ

Just-in-time (JIT) для BMC/IPMI означает, что администратор не держит постоянные привилегии. Он получает их только по запросу и только на срок работ. Это снижает риск того, что утекший пароль, забытая учетная запись или случайная ошибка приведут к перезагрузке серверов, смене настроек или обновлению прошивок.

JIT начинается с основания: инцидент, заявка в сервис-деске или плановое окно работ. У каждого временного доступа должны быть владелец (кто просит), утверждающий (кто разрешает) и конкретная цель (что нужно сделать в BMC). Для аудита обычно хватает номера заявки, перечня устройств, окна времени и уровня прав.

Вместо «вечных» ролей удобнее использовать временные группы. Например:

  • BMC-Operator - просмотр, питание, консоль для диагностики
  • BMC-Admin - пользователи, сеть, сертификаты, прошивки

Минимальная реализация без сложного PAM часто выглядит так: заявка -> утверждение -> добавление во временную группу или открытие временного правила на bastion/фаерволе -> авто-отзыв по таймеру -> фиксация выдачи и отзыва прав в журналах.

Если BMC поддерживает LDAP/AD, временная группа может управлять входом напрямую. Если не поддерживает, JIT можно сделать через bastion и сетевые правила: доступ к сети управления открывается только на окно работ и закрывается автоматически.

Минимальные политики доступа к BMC/IPMI (least privilege)

Серверы GSE S200 для ЦОД
Подберем серверы GSE S200 и поможем внедрить безопасный доступ к BMC с первого дня.
Подобрать S200

BMC/IPMI дает доступ ниже уровня ОС: питание, консоль, виртуальные носители, прошивки. Ошибка в правах здесь часто превращается в полный контроль над сервером, поэтому правила должны быть короткими и проверяемыми.

  1. Только персональные учетные записи. Общие логины вроде admin или ops не подходят: теряется ответственность и нормальный отзыв доступа. Стандартные учетные записи производителя нужно отключить или переименовать, заводские пароли - запретить политикой и проверками.

  2. Роли по задачам. Не всем нужен доступ к прошивкам или сети BMC. Держите роли простыми: просмотр, оператор, администратор.

  3. Доступ только по списку. Разрешайте управление BMC только из сети управления и только с ограниченного набора источников (обычно bastion и мониторинг). Все остальное закрыто по умолчанию.

  4. Минимум протоколов. Отключайте неиспользуемые сервисы, запрещайте небезопасные версии и шифры, оставляйте только то, что используется в реальных процедурах.

Подрядчикам нужны отдельные аккаунты, срок действия и строго ограниченные права. Часто достаточно роли оператора и доступа на конкретные устройства на 1-2 часа.

Журналирование и аудит действий администраторов

Без журналов защита BMC/IPMI превращается в догадки: кто заходил, что менял, почему сервер ушел в перезагрузку. Логи нужны и для расследований, и для поиска ошибок, пока они не привели к простою.

Собирайте события на трех уровнях: сам BMC/IPMI, точка входа (VPN) и bastion. Тогда видно цепочку: админ подключился по VPN, вошел на bastion, а уже оттуда открыл конкретный BMC.

В первую очередь полезны такие события:

  • успешные и неуспешные входы, смена паролей, создание и удаление учетных записей
  • изменения сетевых настроек BMC, прав пользователей, включение сервисов
  • power on/off, reset, power-cycle, изменения порядка загрузки
  • запуск KVM/консоли и подключение виртуальных носителей
  • обновления прошивок и откаты версий

Сведите логи в единое хранилище (SIEM или хотя бы централизованный syslog). Синхронизируйте время по NTP во всех сегментах, включая сеть управления, иначе временная линия будет «прыгать».

Отдельно стоит продумать запись админских сессий на bastion: команды (для SSH), запись экрана (для RDP или веб-консолей) и метаданные - кто, когда, к какому хосту, по какому тикету работал. Доступ к этим записям должен быть ограничен.

Регулярный обзор важнее «идеальных настроек». Рабочий минимум:

  • раз в неделю: неудачные входы, входы вне окна работ, новые учетные записи
  • раз в месяц: изменения ролей и прав, прошивки, частые power-cycle и KVM-сессии
  • раз в квартал: выборочная сверка записей с тикетами и списком администраторов

Пошаговый план внедрения (без сложной перестройки инфраструктуры)

Внедрить JIT для админов
Настроим временные права и процесс заявок для работ в BMC без постоянных привилегий.
Обсудить JIT

Начните с инвентаризации: список серверов, СХД и сетевого оборудования с BMC/IPMI, их адреса и подсети, где включен веб-интерфейс, где открыт только KVM или Redfish. Сюрпризы часто находятся в «временных» IP и забытых тестовых стойках.

Дальше идите шагами, каждый из которых обычно можно сделать за 1-3 рабочих дня и откатить при необходимости:

  1. Выделите сегмент управления: отдельная VLAN/подсеть для BMC. Маршрутизацию разрешите только от bastion и (если нужно) от мониторинга. На границе поставьте ACL по принципу deny by default.
  2. Поднимите bastion как единую точку входа. Закройте прямой доступ к BMC из офисной сети и из VPN пользователей. Оставьте только bastion -> BMC по нужным портам.
  3. Включите MFA на входе к bastion и заведите группы админов по ролям. Для сервисных учеток запретите интерактивный вход.
  4. Добавьте JIT-процесс: заявка, цель, окно времени, кто согласует, и автоматический отзыв прав.
  5. Подключите журналирование: входы на bastion, команды/сессии, изменения в BMC, события MFA. Проведите тест: «админ получил доступ на 30 минут, выполнил перезагрузку, доступ отозвался, в логах видно кто, когда и что делал».

Минимальный критерий готовности: ни один BMC не доступен напрямую, все привилегированные действия идут через bastion с MFA, права выдаются по времени, а аудит поднимается за несколько минут. Для новых стоек (в том числе с серверами GSE S200) эти требования лучше сразу включить в стандарт ввода в эксплуатацию.

Типовые ошибки и ловушки при защите BMC/IPMI

BMC/IPMI часто живет по принципу «и так работает». Из-за этого контроль доступа ломается не из-за сложных атак, а из-за мелких уступок «на время», которые потом становятся нормой.

Самая частая ошибка - оставить интерфейсы управления в той же сети, где находятся серверные ОС и рабочие станции. Тогда компрометация обычной сети дает шанс добраться до BMC, а дальше злоумышленник может перезагружать узлы, менять настройки загрузки и закрепляться глубже.

Что еще обычно идет не так:

  • один «командный» логин и пароль на все BMC
  • доступ открыт из множества подсетей «на всякий случай», периметра нет
  • логи фиксируют вход, но не действия
  • аварийный доступ не продуман: либо обход MFA слишком простой, либо при сбое IdP/MFA вы не можете восстановить работу
  • обновления BMC откладываются, а уязвимости в прошивках и web-интерфейсах копятся

Мини-сценарий: администратор подключается к BMC из рабочей сети, потому что «так быстрее». Позже его ПК заражается, вредонос получает доступ к сохраненным паролям. Если BMC в той же сети и без жестких ограничений по источнику, атакующий получает контроль над железом, даже если ОС сервера защищена.

Быстрый чеклист перед запуском

Перед тем как открывать доступ администраторам, проверьте базовые вещи:

  • BMC/IPMI не виден из пользовательских VLAN и серверных сетей. Вход в контур управления идет только через bastion (и при необходимости через VPN до bastion).
  • MFA включен там, где начинается привилегированный путь (обычно VPN и/или bastion), без исключений «для удобства».
  • нет общих учетных записей и паролей «на всех»; роли разделены, права по умолчанию минимальные
  • JIT работает: доступ выдается на конкретное окно работ и автоматически отзывается
  • логи собираются централизованно (VPN, bastion, BMC), время синхронизировано

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

Если хотя бы на один вопрос ответ «не уверен», лучше исправить настройки до запуска в продакшн.

Пример: как это выглядит в реальной организации

Решение для гос и бизнеса
Подготовим решение на оборудовании отечественного производителя под требования вашей организации.
Получить предложение

Представьте стойку серверов в дата-центре. Есть дежурная смена, которой нужно уметь перезагружать серверы и смотреть консоль, и есть инженеры, которые иногда обновляют прошивки BMC и меняют настройки.

Сеть управления выделена отдельно: интерфейсы BMC/IPMI в отдельном сегменте, который не маршрутизируется в офисную сеть и не виден из пользовательских VLAN. Войти туда можно только через защищенный путь: VPN с MFA -> bastion -> BMC конкретных серверов. Прямые подключения из рабочих станций блокируются на сетевом уровне.

Права выдаются по JIT. Например, инженер планирует обновление прошивки на двух серверах. Он создает заявку с номером изменения, окном работ и списком устройств. На время окна ему выдают роль, которая позволяет только нужные действия. По завершении окна доступ снимается автоматически.

Журналы собираются в одном месте: кто подключался к bastion, к каким BMC, в какое время, и что делал (в идеале с записью сессии). Проверять это можно по номеру заявки и имени сервера, без поиска по разрозненным логам.

Аварийный случай тоже укладывается в схему: ОС не отвечает, нужен удаленный KVM и принудительная перезагрузка. Дежурный получает JIT-доступ на короткое время, действие привязывается к инциденту, сессия записывается.

Следующие шаги: пилот и масштабирование

Начните с небольшого пилота: 5-10 серверов (лучше из разных стоек или площадок). Этого достаточно, чтобы проверить bastion, MFA, JIT и сбор логов без риска «сломать» работу дежурной смены.

Чтобы потом не спорить «как должно быть», заранее зафиксируйте несколько артефактов: матрицу ролей, правила сети управления, шаблон JIT-заявки, требования к логам и критерии готовности.

После пилота масштабируйте волнами: сначала критичные системы, затем типовые стойки, потом удаленные площадки. Держите стандарты едиными: один подход к bastion, один формат JIT, единые роли и понятные правила фаервола.

Если вы строите или обновляете серверную инфраструктуру с участием системного интегратора, эти требования удобно закладывать в проект сразу, а не догонять после запуска. В проектах GSE.kz (gse.kz) обычно на старте отдельно проектируют контур управления, чтобы bastion, сегментация и аудит одинаково работали для всего парка оборудования.

FAQ

Почему BMC/IPMI нельзя защищать так же, как обычный вход в Windows или Linux?

BMC/IPMI работает независимо от операционной системы и дает доступ к питанию, удаленной консоли и загрузке с виртуальных носителей. Если злоумышленник попадет в BMC, он может обойти часть мер защиты ОС и получить контроль над сервером «ниже» Windows/Linux. Поэтому BMC нужно изолировать и защищать как отдельный привилегированный контур.

Какая самая простая схема сегментации для сети управления BMC?

Рабочий минимум — отдельный сегмент управления для BMC (VLAN/VRF), куда нет маршрута из офисных и серверных подсетей. Доступ разрешается только из одной контролируемой точки (bastion) и, при необходимости, из отдельного сегмента мониторинга. Все прямые подключения пользователей к BMC блокируются на сетевом уровне.

Почему опасно, когда BMC доступен из офисной сети или VLAN приложений?

Потому что один зараженный ноутбук или утекший пароль из офисной сети сразу открывает путь к физическому управлению серверами. Когда BMC доступен из пользовательских VLAN, компрометация «обычной» рабочей станции может закончиться перезагрузками, сменой порядка загрузки или загрузкой чужого образа через виртуальные носители. Изоляция разрывает этот сценарий.

Зачем нужен bastion, если у каждого BMC уже есть свой веб-интерфейс?

Bastion (jump host) делает единый вход в контур управления: администратор сначала проходит аутентификацию на bastion, а уже оттуда открывает веб-консоль BMC или KVM. Так проще включить MFA, ограничить список целей, записывать сессии и быстро отключать доступ одному человеку, не трогая настройки десятков контроллеров.

Где лучше включать MFA: на BMC или на bastion/VPN?

На практике надежнее включать MFA на VPN/VDI и на bastion, то есть там, где вы реально контролируете вход. У многих BMC MFA отсутствует или внедряется неудобно, а исключения начинают разрастаться. Если до BMC можно добраться только через bastion, то MFA защищает весь путь, а не отдельные устройства.

Какие минимальные правила доступа (least privilege) стоит ввести для BMC?

Начните с персональных учетных записей и отключения/переименования заводских логинов, чтобы было понятно, кто что делал. Дальше разделите роли по задачам: кому-то достаточно питания и консоли, а права на сеть BMC и прошивки должны быть у очень узкого круга. Параллельно ограничьте доступ по источнику: только bastion и только нужные адреса.

Что дает just-in-time (JIT) доступ к BMC и когда он реально нужен?

JIT снижает риск «вечных» привилегий: доступ выдается на конкретную работу и на ограниченное время, затем автоматически отзывается. Это помогает, когда учетные данные утекли, забыли удалить аккаунт или админ ошибся не на том сервере. Для старта достаточно привязки к заявке/инциденту, окна работ и списка устройств.

Как безопасно давать доступ к BMC подрядчикам или временной дежурной смене?

Подрядчикам выдавайте отдельные учетные записи, минимальные права и короткий срок действия, а доступ лучше ограничивать конкретными устройствами. Идеально — доступ только через bastion, с обязательной фиксацией номера заявки и записью сессии. После работ доступ закрывается, а пароль/токен не продолжает «гулять» по командам.

Какие логи по BMC нужно собирать, чтобы потом можно было расследовать инцидент?

Собирайте события на трех уровнях: VPN (или другой вход), bastion и сам BMC. Тогда вы видите цепочку: кто вошел в контур, к какому серверу подключался и какие действия выполнял, включая power/reset, KVM и виртуальные носители. Важно синхронизировать время и хранить логи централизованно, иначе расследование превращается в догадки.

Что проверить перед запуском доступа к BMC в продакшене (короткий чек)?

Сначала проверьте, что ни один BMC не доступен напрямую из пользовательских сетей и что вход идет только через bastion с MFA. Затем убедитесь, что нет общих логинов, права разделены по ролям, а привилегии выдаются по времени (JIT) и отзываются автоматически. Финальный тест простой: выполните типовую операцию через BMC и проверьте, что по журналам можно однозначно ответить, кто, откуда, когда и зачем это сделал.

Контроль доступа к BMC/IPMI: bastion, MFA и JIT для админов | GSE