Идеи решения
В этой статье описывается идея решения. Ваш архитектор облака может использовать это руководство, чтобы визуализировать основные компоненты для типичной реализации этой архитектуры. Используйте эту статью в качестве отправной точки для разработки хорошо спроектированного решения, которое соответствует конкретным требованиям рабочей нагрузки.
Это решение предлагает многоуровневую стратегию защиты виртуальных машин в Azure, обеспечивая специальные возможности при минимизации области атак для управления и администрирования.
В соответствии с рекомендациями по безопасности Майкрософт это решение включает в себя несколько механизмов защиты, предлагаемых службами Microsoft Azure и Entra, придерживаясь принципов безопасной разработки, безопасной по умолчанию и безопасных операций.
Защита путем разработки. Решение обеспечивает непрестойчивый детальный доступ к виртуальным машинам путем реализации принципа наименьшей привилегии и концепции разделения обязанностей. Это гарантирует, что авторизация на виртуальных машинах предоставляется только по законным причинам, что снижает риск несанкционированного доступа.
Защита по умолчанию. Входящий трафик к виртуальным машинам заблокирован, что позволяет подключаться только при необходимости. Эта политика безопасности по умолчанию сводит к минимуму воздействие многих популярных кибератак, таких как атаки подбора и распределенные атаки типа "отказ в обслуживании" (DDoS).
Безопасные операции. Крайне важно реализовать непрерывный мониторинг и инвестировать в улучшение контроля безопасности для удовлетворения текущих и будущих угроз. Используйте различные службы и функции Azure, такие как Microsoft Entra управление привилегированными пользователями (PIM), функцию JIT-доступа к виртуальной машине Microsoft Defender для облака, Бастион Azure, управление доступом на основе ролей Azure (Azure RBAC). При необходимости следует рассмотреть возможность условного доступа Microsoft Entra для регулирования доступа к ресурсам Azure и Azure Key Vault для хранения локальных паролей виртуальной машины, если они не интегрированы с идентификатором записи или доменными службами Active Direcory.
Потенциальные варианты использования
Защита в глубине находится в основе этой архитектуры. Эта стратегия оспаривает пользователей с несколькими линиями защиты перед предоставлением пользователям доступа к виртуальным машинам. Цель состоит в том, чтобы убедиться в том, что:
- Каждый пользователь проверяется.
- У каждого пользователя есть законные намерения.
- Связь безопасна.
- Доступ к виртуальным машинам в Azure предоставляется только при необходимости.
Стратегия глубокой защиты и решение в этой статье применяются ко многим сценариям:
Администратор должен получить доступ к виртуальной машине Azure в следующих случаях:
- Администратору необходимо устранить проблему, исследовать поведение или применить критическое обновление.
- Администратор использует протокол удаленного рабочего стола (RDP) для доступа к виртуальной машине Windows или безопасной оболочке (SSH) для доступа к виртуальной машине Linux.
- Доступ должен содержать минимальное количество разрешений, необходимых для выполнения задачи.
- Доступ должен быть допустимым только в течение ограниченного времени.
- После истечения срока действия доступа система должна заблокировать доступ к виртуальной машине, чтобы предотвратить попытки вредоносного доступа.
Сотрудникам требуется доступ к удаленной рабочей станции, размещенной в Azure в качестве виртуальной машины. Применяются следующие условия:
- Сотрудники должны обращаться к виртуальной машине только в рабочее время.
- Система безопасности должна рассмотреть запросы на доступ к виртуальной машине за пределами рабочих часов, ненужных и вредоносных.
Пользователи хотели бы подключиться к рабочим нагрузкам виртуальной машины Azure. Система должна утвердить подключения, которые находятся только на управляемых и совместимых устройствах.
Система испытала огромное количество атак подбора:
- Эти атаки нацелены на виртуальные машины Azure на портах RDP и SSH 3389 и 22.
- Атаки пытались угадать учетные данные.
- Решение должно запретить доступ к портам, таким как 3389 и 22, предоставляться в Интернете или локальных средах.
Архитектура
Скачайте файл Visio для этой архитектуры.
Поток данных
Решения о проверке подлинности и доступе: пользователь проходит проверку подлинности в идентификаторе Microsoft Entra для доступа к портал Azure, REST API Azure, Azure PowerShell или Azure CLI. В случае успешной проверки подлинности политика условного доступа Microsoft Entra вступает в силу. Эта политика проверяет, соответствует ли пользователь определенным критериям. Примеры включают использование управляемого устройства или вход из известного расположения. Если пользователь соответствует условиям, условный доступ предоставляет пользователю доступ к Azure через портал Azure или другой интерфейс.
JIT-доступ на основе удостоверений: во время авторизации Microsoft Entra PIM назначает пользователю настраиваемую роль соответствующего типа. Возможность ограничена необходимыми ресурсами и является ролью, связанной с временем, а не постоянной. В течение указанного интервала времени пользователь запрашивает активацию этой роли через интерфейс Azure PIM. Этот запрос может активировать другие действия, такие как запуск рабочего процесса утверждения или запрос пользователя на многофакторную проверку подлинности для проверки удостоверения. В рабочем процессе утверждения другой человек должен утвердить запрос. В противном случае пользователь не назначен настраиваемой роли и не может перейти к следующему шагу.
JIT-доступ на основе сети: после проверки подлинности и авторизации пользовательская роль временно связана с удостоверением пользователя. Затем пользователь запрашивает доступ к виртуальной машине JIT. Этот доступ открывает подключение из подсети Бастиона Azure через порт 3389 для RDP или порта 22 для SSH. Подключение выполняется непосредственно к сетевой карте виртуальной машины или подсети сетевой карты виртуальной машины. Бастион Azure открывает внутренний сеанс RDP с помощью этого подключения. Сеанс ограничен виртуальной сетью Azure и не предоставляется общедоступному Интернету.
Подключение к виртуальной машине Azure: пользователь обращается к Бастиону Azure с помощью временного маркера. С помощью этой службы пользователь устанавливает косвенное подключение RDP к виртуальной машине Azure. Подключение работает только в течение ограниченного периода времени. Пользователь может получить пароль из Azure Key Vault, если пароль был сохранен в качестве секрета в Key Vault, а достаточные разрешения RBAC настроены для ограничения доступа к соответствующей учетной записи пользователя.
Компоненты
Это решение использует следующие компоненты.
Azure Виртуальные машины — это предложение инфраструктуры как услуга (IaaS). Виртуальные машины можно использовать для развертывания масштабируемых вычислительных ресурсов, предоставляемых по запросу. В рабочих средах, использующих это решение, разверните рабочие нагрузки на виртуальных машинах Azure. Затем исключите ненужный доступ к виртуальным машинам и ресурсам Azure.
Идентификатор Microsoft Entra — это облачная служба удостоверений, которая управляет доступом к Azure и другим облачным приложениям.
PIM — это служба Microsoft Entra, которая управляет, контролирует и отслеживает доступ к важным ресурсам. В этом решении эта служба:
- Ограничивает постоянный доступ администратора к стандартным и пользовательским привилегированным ролям.
- Предоставляет JIT-доступ к пользовательским ролям на основе удостоверений.
Доступ к виртуальной машине JIT — это функция Defender для облака, которая обеспечивает JIT-доступ к виртуальным машинам на основе JIT. Эта функция добавляет правило запрета в группу безопасности сети Azure, которая защищает сетевой интерфейс виртуальной машины или подсеть, содержащую сетевой интерфейс виртуальной машины. Это правило сводит к минимуму область атаки виртуальной машины, блокируя ненужный обмен данными с виртуальной машиной. Когда пользователь запрашивает доступ к виртуальной машине, служба добавляет временное правило разрешения в группу безопасности сети. Так как правило разрешения имеет более высокий приоритет, чем правило запрета, пользователь может подключиться к виртуальной машине. Бастион Azure лучше всего подходит для подключения к виртуальной машине. Но пользователь также может использовать прямой сеанс RDP или SSH.
Azure RBAC — это система авторизации, которая обеспечивает точное управление доступом ресурсов Azure.
Пользовательские роли Azure RBAC предоставляют способ расширения встроенных ролей Azure RBAC. Их можно использовать для назначения разрешений на уровнях, которые соответствуют потребностям вашей организации. Эти роли поддерживают PoLP. Они предоставляют только разрешения, необходимые пользователю для назначения пользователя. Чтобы получить доступ к виртуальной машине в этом решении, пользователь получает разрешения для:
- Использование Бастиона Azure.
- Запрос доступа к виртуальной машине JIT в Defender для облака.
- Чтение или перечисление виртуальных машин.
Условный доступ Microsoft Entra — это средство, которое идентификатор Microsoft Entra использует для управления доступом к ресурсам. Политики условного доступа поддерживают модель безопасности нулевого доверия . В этом решении политики гарантируют, что только прошедшие проверку подлинности пользователи получают доступ к ресурсам Azure.
Бастион Azure обеспечивает безопасное и простое подключение RDP и SSH к виртуальным машинам в сети. В этом решении Бастион Azure подключает пользователей, использующих Microsoft Edge или другой интернет-браузер для HTTPS или защищенный трафик через порт 443. Бастион Azure настраивает подключение RDP к виртуальной машине. Порты RDP и SSH не предоставляются в Интернете или источнике пользователя.
Бастион Azure необязателен в этом решении. Пользователи могут подключаться непосредственно к виртуальным машинам Azure с помощью протокола RDP. Если вы настраиваете Бастион Azure в виртуальной сети Azure, настройте отдельную подсеть
AzureBastionSubnet
. Затем свяжите группу безопасности сети с этой подсетью. В этой группе укажите источник трафика HTTPS, например локальный блок маршрутизации между доменами (CIDR) пользователя. Используя эту конфигурацию, вы блокируете подключения, не поступающие из локальной среды пользователя.Azure Key Vault предоставляет безопасный механизм хранения пароля пользователя виртуальной машины в виде секрета. Секрет RBAC можно настроить таким образом, чтобы только учетная запись пользователя, доступная к виртуальной машине, имеет разрешение на его получение. Получение значения пароля из хранилища ключей можно выполнить через API Azure (например, с помощью Azure CLI) или из портал Azure, так как Azure Key Vault интегрируется с пользовательским интерфейсом Бастиона Azure в колонке виртуальной машины в портал Azure.
Соавторы
Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.
Автор субъекта:
- Husam Hilal | Старший архитектор облачных решений
Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.
Следующие шаги
- Активация ролей ресурсов Azure в управление привилегированными пользователями
- Основные сведения о JIT-доступе к виртуальной машине
- Настройка Бастиона и подключение к виртуальной машине Windows через браузер
- Защита событий входа пользователей с помощью многофакторной проверки подлинности Microsoft Entra