Поделиться через


Создание и настройка кластеров Корпоративного пакета безопасности в Azure HDInsight

Корпоративный пакет безопасности (ESP) для Azure HDInsight предоставляет доступ к проверке подлинности на основе Active Directory, многопользовательской поддержке и управлению доступом на основе ролей для кластеров Apache Hadoop в Azure. Кластеры HDInsight ESP позволяют организациям безопасно обрабатывать конфиденциальные данные в соответствии со строгими корпоративными политиками безопасности.

В этом руководстве показано, как создать кластер Azure HDInsight с поддержкой ESP. Здесь также показано, как создать виртуальную машину IaaS Windows, на которой включены Active Directory и служба доменных имен (DNS). Используйте это руководство для настройки необходимых ресурсов, чтобы разрешить локальным пользователям входить на кластер HDInsight с поддержкой ESP.

Созданный вами сервер будет использоваться в качестве замены для реальной локальной среды. Вы будете использовать его для этапов настройки и конфигурации. Позже вы повторите эти действия в своей среде.

Это руководство также поможет вам создать среду гибридного удостоверения с помощью синхронизации хэша паролей с идентификатором Microsoft Entra. Это руководство дополняет статью Использование ESP в HDInsight.

Перед использованием этого процесса в собственной среде выполните следующие действия.

  • Настройте Active Directory и DNS.
  • Включите идентификатор Microsoft Entra.
  • Синхронизация локальных учетных записей пользователей с идентификатором Microsoft Entra.

Microsoft Entra architecture diagram.

Создание локальной среды

В этом разделе вы будете использовать шаблон быстрого развертывания Azure для создания новых виртуальных машин, настройки DNS и добавления нового леса Active Directory.

  1. Перейдите к шаблону быстрого развертывания, чтобы создать виртуальную машину Azure с новым лесом Active Directory.

  2. Выберите Развернуть в Azure.

  3. Вход в вашу подписку Azure.

  4. На странице Создание виртуальной машины Azure с помощью нового леса AD укажите следующие сведения.

    Свойство Значение
    Отток подписок Выберите подписку, в которой будут развернуты ресурсы.
    Группа ресурсов Выберите Создать и введите имя OnPremADVRG
    Расположение Выберите расположение.
    Имя администратора HDIFabrikamAdmin
    Пароль администратора Введите пароль.
    Имя домена HDIFabrikam.com
    Префикс DNS hdifabrikam

    Оставьте остальные значения по умолчанию.

    Template for Create an Azure VM with a new Microsoft Entra Forest.

  5. Прочтите Условия использования и установите флажок Я принимаю указанные выше условия.

  6. Выберите Приобрести, отслеживайте развертывание и дождитесь его завершения. Развертывание занимает порядка 30 минут.

Настройка пользователей и групп для доступа к кластеру

В этом разделе к концу данного руководства вы создадите пользователей, которые будут иметь доступ к кластеру HDInsight.

  1. Подключитесь к контроллеру домена с помощью удаленного рабочего стола.

    1. На портале Azure перейдите в раздел Группы ресурсов>OnPremADVRG>adVM>Подключиться.
    2. В раскрывающемся списке IP-адрес выберите общедоступный IP-адрес.
    3. Щелкните Скачать RDP-файл и откройте файл.
    4. Используйте HDIFabrikam\HDIFabrikamAdmin в качестве имени пользователя.
    5. Введите пароль, выбранный для учетной записи администратора.
    6. Нажмите ОК.
  2. На панели мониторинга Диспетчер сервера контроллера домена перейдите в меню Инструменты>Пользователи и компьютеры Active Directory.

    On the Server Manager dashboard, open Active Directory Management.

  3. Создайте двух новых пользователей: HDIAdmin и HDIUser. Эти два пользователя будут входить в кластеры HDInsight.

    1. На странице Пользователи и компьютеры Active Directory щелкните правой кнопкой мыши HDIFabrikam.com и перейдите к пункту Создать>Пользователь.

      Create a new Active Directory user.

    2. На странице Новый объект — Пользователь введите HDIUser в поля Имя и Имя пользователя для входа. Другие поля будут заполнены автоматически. Затем выберите Далее.

      Create the first admin user object.

    3. Во всплывающем окне введите пароль для новой учетной записи. Выберите Срок действия пароля не ограничен, а затем во всплывающем сообщении нажмите кнопку ОК.

    4. Нажмите кнопку Далее, а затем Готово, чтобы создать новую учетную запись.

    5. Повторите описанные выше действия, чтобы создать пользователя HDIAdmin.

      Create a second admin user object.

  4. Создайте глобальную группу безопасности.

    1. На странице Пользователи и компьютеры Active Directory щелкните правой кнопкой мыши HDIFabrikam.com и перейдите к пункту Создать>Группа.

    2. Введите HDIUserGroup в текстовое поле Имя группы.

    3. Нажмите ОК.

    Create a new Active Directory group.

    Create a new object.

  5. Добавьте элементы в HDIUserGroup.

    1. Щелкните правой кнопкой мыши HDIUser и выберите Добавить в группу....

    2. В текстовом поле Введите имена объектов для выбора введите HDIUserGroup. Затем нажмите кнопку ОК, а затем снова кнопку ОК во всплывающем окне.

    3. Повторите предыдущие шаги для учетной записи HDIAdmin.

      Add the member HDIUser to the group HDIUserGroup.

Создание среды Active Directory завершено. Вы добавили двух пользователей и группу пользователей, которые имеют доступ к кластеру HDInsight.

Пользователи будут синхронизированы с идентификатором Microsoft Entra.

Создание каталога Microsoft Entra

  1. Войдите на портал Azure.

  2. Щелкните Создать ресурс и введите directory. Выберите Microsoft Entra ID>Create.

  3. В поле Название организации введите HDIFabrikam.

  4. В поле Имя исходного домена введите HDIFabrikamoutlook.

  5. Нажмите кнопку создания.

    Create a Microsoft Entra directory.

Создание личного домена

  1. В новом идентификаторе Microsoft Entra в разделе "Управление" выберите "Пользовательские доменные имена".

  2. Щелкните + Добавить личный домен.

  3. В поле Имя личного домена введите HDIFabrikam.com, а затем нажмите Добавить домен.

  4. Затем выполните инструкцию Добавление сведений о DNS в регистратор доменных имен.

    Create a custom domain.

Создать группу

  1. В новом идентификаторе Microsoft Entra в разделе "Управление" выберите "Группы".
  2. Выберите + Новая группа.
  3. В текстовое поле Имя группы введите AAD DC Administrators.
  4. Нажмите кнопку создания.

Настройка клиента Microsoft Entra

Теперь вы настроите клиент Microsoft Entra, чтобы синхронизировать пользователей и группы из экземпляра локальная служба Active Directory в облако.

Создайте администратора клиента Active Directory.

  1. Войдите в портал Azure и выберите клиент Microsoft Entra, HDIFabrikam.

  2. Выберите Управление>Пользователи>Новый пользователь.

  3. Введите следующие сведения для нового пользователя:

    Identity

    Свойство Description
    User name Введите fabrikamazureadmin в текстовое поле. В раскрывающемся списке доменных имен выберите hdifabrikam.com
    Имя. Введите fabrikamazureadmin.

    Пароль

    1. Выберите Разрешить мне создать пароль.
    2. Введите безопасный пароль по своему усмотрению.

    Группы и роли

    1. Выберите 0 групп выбрано.

    2. Нажмите Администраторы AAD DC, а затем Выбрать.

      The Microsoft Entra groups dialog box.

    3. Выберите Пользователь.

    4. Выберите Глобальный администратор, а затем Выбрать.

      The Microsoft Entra role dialog box.

  4. Нажмите кнопку создания.

  5. Затем новый пользователь должен войти на портал Azure, где ему будет предложено изменить пароль. Это необходимо сделать перед настройкой Microsoft Entra Подключение.

Синхронизация локальных пользователей с идентификатором Microsoft Entra

Настройка Подключение Microsoft Entra

  1. С помощью контроллера домена скачайте Подключение Microsoft Entra.

  2. Откройте загруженный исполняемый файл и примите условия лицензии. Выберите Продолжить.

  3. Выберите Использовать стандартные параметры.

  4. На странице Подключение идентификатора Microsoft Entra введите имя пользователя и пароль глобального администратора для идентификатора Microsoft Entra. Используйте имя пользователя fabrikamazureadmin@hdifabrikam.com, созданное при настройке клиента Active Directory. Затем выберите Далее.

    Connect to Microsoft Entra ID.

  5. На странице Подключение к доменным службам Active Directory введите имя пользователя и пароль для учетной записи администратора предприятия. Используйте имя пользователя HDIFabrikam\HDIFabrikamAdmin и пароль, созданные ранее. Затем выберите Далее.

    Connect to A D D S page.

  6. На странице конфигурации входа в Microsoft Entra нажмите кнопку "Далее".

    Microsoft Entra sign-in configuration page.

  7. На странице Готово к настройке выберите Установить.

    Ready to configure page.

  8. На странице Конфигурация завершена выберите Выйти. Configuration complete page.

  9. После завершения синхронизации убедитесь, что пользователи, созданные в каталоге IaaS, синхронизируются с идентификатором Microsoft Entra.

    1. Войдите на портал Azure.
    2. Выберите идентификатор Microsoft Entra ID>HDIFabrikam>Users.

Создание управляемого удостоверения, назначаемого пользователем

Создайте управляемое удостоверение, назначаемое пользователем, которое можно использовать для настройки доменных служб Microsoft Entra. Подробная информация приведена в статье Создание, получение списка, удаление ролей и их назначение для управляемого удостоверения, назначаемого пользователем, с помощью портала Azure.

  1. Войдите на портал Azure.
  2. Щелкните Создать ресурс и введите managed identity. Выберите Управляемое удостоверение, назначаемое пользователем>Создать.
  3. В поле Имя ресурса введите HDIFabrikamManagedIdentity.
  4. Выберите свою подписку.
  5. В разделе Группа ресурсов выберите Создать и введите HDIFabrikam-CentralUS.
  6. В разделе Расположение выберите Центральная часть США.
  7. Нажмите кнопку создания.

Create a new user-assigned managed identity.

Включение доменных служб Microsoft Entra

Выполните следующие действия, чтобы включить доменные службы Microsoft Entra. Дополнительные сведения см. в разделе "Включение доменных служб Microsoft Entra" с помощью портал Azure.

  1. Создайте виртуальную сеть для размещения доменных служб Microsoft Entra. Выполните следующий код PowerShell.

    # Sign in to your Azure subscription
    $sub = Get-AzSubscription -ErrorAction SilentlyContinue
    if(-not($sub))
    {
        Connect-AzAccount
    }
    
    # If you have multiple subscriptions, set the one to use
    # Select-AzSubscription -SubscriptionId "<SUBSCRIPTIONID>"
    
    $virtualNetwork = New-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-CentralUS' -Location 'Central US' -Name 'HDIFabrikam-AADDSVNET' -AddressPrefix 10.1.0.0/16
    $subnetConfig = Add-AzVirtualNetworkSubnetConfig -Name 'AADDS-subnet' -AddressPrefix 10.1.0.0/24 -VirtualNetwork $virtualNetwork
    $virtualNetwork | Set-AzVirtualNetwork
    
  2. Войдите на портал Azure.

  3. Выберите "Создать ресурс", введите Domain servicesи выберите "Создать доменные службы>Microsoft Entra".

  4. На странице Основные сведения:

    1. В разделе "Имя каталога" выберите созданный каталог Microsoft Entra: HDIFabrikam.

    2. В поле Доменное имя DNS введите HDIFabrikam.com.

    3. Выберите свою подписку.

    4. Укажите группу ресурсов HDIFabrikam-CentralUS. В списке Расположение выберите Центральная часть США.

      Microsoft Entra Domain Services basic details.

  5. На странице Сеть выберите сеть (HDIFabrikam-VNET) и подсеть (AADDS-Subnet), созданные с помощью сценария PowerShell. Или выберите Создать, чтобы создать виртуальную сеть прямо сейчас.

    Create virtual network step.

  6. На странице Группа администраторов должно появиться уведомление о том, что группа с именем Администраторы AAD DC уже создана для администрирования этой группы. Вы можете изменить членство в этой группе, если хотите, но в данном случае ее не нужно изменять. Нажмите ОК.

    View the Microsoft Entra administrator group.

  7. На странице Синхронизация включите полную синхронизацию, выбрав Все>ОК.

    Enable Microsoft Entra Domain Services synchronization.

  8. На странице "Сводка" проверьте сведения о доменных службах Microsoft Entra и нажмите кнопку "ОК".

    Enable Microsoft Entra Domain Services.

После включения доменных служб Microsoft Entra локальный DNS-сервер запускается на виртуальных машинах Microsoft Entra.

Настройка виртуальной сети доменных служб Microsoft Entra

Выполните следующие действия, чтобы настроить виртуальную сеть доменных служб Microsoft Entra (HDIFabrikam-AADDSVNET) для использования пользовательских DNS-серверов.

  1. Найдите IP-адреса личных DNS-серверов.

    1. HDIFabrikam.com Выберите ресурс доменных служб Microsoft Entra.
    2. В разделе Управление выберите Свойства.
    3. Найдите IP-адреса в разделе IP-адрес в виртуальной сети.

    Locate custom DNS IP addresses for Microsoft Entra Domain Services.

  2. Настройте HDIFabrikam-AADDSVNET для использования личных IP-адресов 10.0.0.4 и 10.0.0.5.

    1. В разделе Параметры выберите DNS-серверы.
    2. Выберите Пользовательский.
    3. В текстовом поле введите первый IP-адрес (10.0.0.4).
    4. Выберите Сохранить.
    5. Повторите шаги, чтобы добавить другой IP-адрес (10.0.0.5).

В нашем сценарии мы настроили доменные службы Microsoft Entra для использования IP-адресов 10.0.0.4 и 10.0.5, задав один и тот же IP-адрес в виртуальной сети доменных служб Microsoft Entra:

The custom DNS servers page.

Защита трафика LDAP

Протокол LDAP используется для чтения и записи в идентификатор Microsoft Entra. Трафик LDAP можно сделать конфиденциальным и безопасным с помощью технологии Secure Sockets Layer (SSL) или Transport Layer Security (TLS). Вы можете включить LDAP через SSL (LDAPS), установив сертификат правильного формата.

Дополнительные сведения о защищенном протоколе LDAP см. в разделе "Настройка LDAPS" для управляемого домена доменных служб Microsoft Entra.

В этом разделе описано, как создать самозаверяющий сертификат, скачать сертификат и настроить LDAPS для управляемого домена доменных служб Microsoft Entra HDIFabrikam Microsoft Entra.

Следующий скрипт создает сертификат для HDIFabrikam. Сертификат сохраняется в каталоге LocalMachine.

$lifetime = Get-Date
New-SelfSignedCertificate -Subject hdifabrikam.com `
-NotAfter $lifetime.AddDays(365) -KeyUsage DigitalSignature, KeyEncipherment `
-Type SSLServerAuthentication -DnsName *.hdifabrikam.com, hdifabrikam.com

Примечание.

Для формирования запроса на сертификат TLS/SSL можно использовать любую служебную программу или приложение, которое создает допустимый запрос в формате Public Key Cryptography Standards (PKCS) #10.

Убедитесь, что сертификат установлен в хранилище Персональные компьютера:

  1. Запустите Консоль управления (MMC).

  2. Добавьте встраиваемый модуль Сертификаты, который управляет сертификатами на локальном компьютере.

  3. Разверните сертификаты (локальный компьютер)>личные>сертификаты. В хранилище Персональные должен присутствовать новый сертификат. Этот сертификат выдается для полного имени узла.

    Verify local certificate creation.

  4. В области справа щелкните созданный сертификат правой кнопкой мыши. Наведите курсор на Все задачи и выберите Экспорт.

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

    The Export Private Key page of the Certificate Export Wizard.

  6. На странице Формат экспортируемого файла оставьте параметры по умолчанию, а затем нажмите кнопку Далее.

  7. На странице Пароль введите пароль для закрытого ключа. В списке Шифрование выберите TripleDES-SHA1. Затем выберите Далее.

  8. На странице Файл для экспорта введите путь и имя экспортируемого файла сертификата, а затем нажмите кнопку Далее. Файл должен иметь расширение .pfx. Этот файл настраивается на портале Azure для установления безопасного подключения.

  9. Включите LDAPS для управляемого домена доменных служб Microsoft Entra.

    1. На портале Azure выберите домен HDIFabrikam.com.
    2. В разделе Управление выберите Защищенный протокол LDAP.
    3. На странице Защищенный протокол LDAP в разделе Защищенный протокол LDAP выберите Включить.
    4. Найдите PFX-файл сертификата, экспортированный на компьютер.
    5. Введите пароль сертификата.

    Enable secure LDAP.

  10. Теперь, когда вы включили LDAPS, убедитесь, что он доступен, включив порт 636.

    1. В группе ресурсов HDIFabrikam-CentralUS выберите группу безопасности сети AADDS-HDIFabrikam.com-NSG.

    2. В разделе Параметры выберите Правила безопасности для входящего трафика>Добавить.

    3. На странице Добавление правила безопасности для входящего трафика введите следующие свойства, а затем нажмите Добавить:

      Свойство Значение
      Оригинал Любое
      Диапазоны исходных портов *
      Назначение Любые
      Диапазон портов назначения 636
      Протокол Любые
      Действие Allow
      Приоритет <Выбранное число>
      Имя. Port_LDAP_636

      The Add inbound security rule dialog box.

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

Create a user-assigned managed identity.

Создание кластера HDInsight с поддержкой ESP

Для данного этапа необходимо следующее:

  1. Создайте новую группу ресурсов HDIFabrikam-WestUS в расположении Западная часть США.

  2. Создайте виртуальную сеть, в которой будет размещен кластер HDInsight с поддержкой ESP.

    $virtualNetwork = New-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-WestUS' -Location 'West US' -Name 'HDIFabrikam-HDIVNet' -AddressPrefix 10.1.0.0/16
    $subnetConfig = Add-AzVirtualNetworkSubnetConfig -Name 'SparkSubnet' -AddressPrefix 10.1.0.0/24 -VirtualNetwork $virtualNetwork
    $virtualNetwork | Set-AzVirtualNetwork
    
  3. Создайте связь однорангового узла между виртуальной сетью, включающей доменные службы Microsoft Entra (HDIFabrikam-AADDSVNET) и виртуальную сеть, включающую кластер HDInsight с поддержкой ESP (HDIFabrikam-HDIVNet). Используйте следующий код PowerShell для пиринга между двумя виртуальными сетями.

    Add-AzVirtualNetworkPeering -Name 'HDIVNet-AADDSVNet' -RemoteVirtualNetworkId (Get-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-CentralUS').Id -VirtualNetwork (Get-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-WestUS')
    
    Add-AzVirtualNetworkPeering -Name 'AADDSVNet-HDIVNet' -RemoteVirtualNetworkId (Get-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-WestUS').Id -VirtualNetwork (Get-AzVirtualNetwork -ResourceGroupName 'HDIFabrikam-CentralUS')
    
  4. Создайте новую учетную запись Azure Data Lake Storage 2-го поколения под названием Hdigen2store. Настройте учетную запись с управляемым пользователем удостоверением HDIFabrikamManagedIdentity. Подробную информацию см. в статье Использование Azure Data Lake Storage 2-го поколения с кластерами Azure HDInsight.

  5. Настройте личный DNS-сервер в виртуальной сети HDIFabrikam-AADDSVNET.

    1. Перейдите в раздел Портал Azure > >Группы ресурсов>OnPremADVRG>HDIFabrikam-AADDSVNET>DNS-серверы.

    2. Выберите Личные и введите 10.0.0.4 и 10.0.0.5.

    3. Выберите Сохранить.

      Save custom DNS settings for a virtual network.

  6. Создайте новый кластер HDInsight Spark с поддержкой ESP.

    1. Выберите Настраиваемое (размер, параметры, приложения).

    2. Введите сведения в разделе Основное (раздел 1). Убедитесь, что выбран Тип кластера Spark 2.3 (HDi 3.6). Убедитесь, что выбрана Группа ресурсов HDIFabrikam-CentralUS.

    3. В разделе Безопасность и сеть (раздел 2) введите следующие сведения.

      • В разделе Корпоративный пакет безопасности выберите Включено.

      • Выберите Администратор кластера и выберите учетную запись HDIAdmin, которую вы создали как локальный администратор. Щелкните Выбрать.

      • Выберите Группа доступа к кластеру>HDIUserGroup. Любой пользователь, добавляемый в эту группу в будущем, сможет получить доступ к кластерам HDInsight.

        Select the cluster access group HDIUserGroup.

    4. Выполните другие действия в конфигурации кластера и проверьте сведения в разделе Сводка по кластеру. Нажмите кнопку создания.

  7. Войдите в пользовательский интерфейс Ambari для созданного кластера в https://CLUSTERNAME.azurehdinsight.net. Используйте имя пользователя hdiadmin@hdifabrikam.com и пароль администратора.

    The Apache Ambari UI sign-in window.

  8. На панели мониторинга кластера выберите Роли.

  9. На странице Роли, в разделе Назначение ролей, рядом с ролью Администратор кластера, введите группу hdiusergroup.

    Assign the cluster admin role to hdiusergroup.

  10. Откройте клиент Secure Shell (SSH) и войдите в кластер. Используйте hdiuser, созданный в локальном экземпляре Active Directory.

    Sign in to the cluster by using the SSH client.

Если вы можете войти с помощью этой учетной записи, вы правильно настроили кластер ESP для синхронизации с локальным экземпляром Active Directory.

Следующие шаги

Прочтите статью Общие сведения об обеспечении безопасности Apache Hadoop с помощью ESP.