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


Настройка подключения аутентификации с помощью сертификата S2S VPN Gateway — предварительный просмотр.

В этой статье вы используете портал Azure для создания VPN-шлюза проверки подлинности сертификата типа "сеть — сеть" (S2S) между локальной сетью и виртуальной сетью. Шаги этой конфигурации используют управляемое удостоверение, Azure Key Vault и сертификаты. Если вам нужно создать VPN-подключение типа "сеть — сеть", использующее общий ключ, см. статью "Создание VPN-подключения S2S".

Схема, показывающая шлюз VPN

Предварительные требования

Примечание.

Проверка подлинности сертификата типа "сеть — сеть" не поддерживается в VPN-шлюзах SKU уровня "Базовый".

  • У вас уже есть виртуальная сеть и VPN-шлюз. Если вы этого не сделали, выполните действия по созданию VPN-шлюза, а затем вернитесь на эту страницу, чтобы настроить подключение проверки подлинности сертификата типа "сеть — сеть".

  • Убедитесь, что у вас есть совместимое VPN-устройство и пользователь, который может его настроить. Дополнительные сведения о совместимых VPN-устройствах и конфигурации устройств см. в разделе "Сведения о VPN-устройствах".

  • Убедитесь, что у вас есть общедоступный IPv4–адрес для вашего VPN–устройства.

  • Если вы не знаете диапазоны IP-адресов в своей конфигурации локальной сети, найдите того, кто сможет предоставить вам нужную информацию. При создании этой конфигурации необходимо указать префиксы диапазона IP-адресов, которые Azure маршрутизирует к вашему локальному расположению. Ни одна из подсетей локальной сети не может перекрываться с подсетями виртуальной сети, к которым требуется подключиться.

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

Для этой конфигурации требуется управляемое удостоверение. Дополнительные сведения об управляемых удостоверениях см. в статье Что такое управляемые удостоверения для ресурсов Azure? Если у вас уже есть управляемое удостоверение, назначенное пользователем, его можно использовать для этого упражнения. В противном случае выполните следующие действия, чтобы создать управляемую идентичность.

  1. В портале Azure найдите и выберите Управляемые удостоверения.
  2. Нажмите кнопку создания.
  3. Введите необходимые сведения. При создании имени используйте что-то интуитивно понятное. Например, управляемый сетью-сеть или управляемый vpngwy. Вам потребуется имя для действий по настройке хранилища ключей. Группа ресурсов не должна совпадать с группой ресурсов, используемой для VPN-шлюза.
  4. Выберите Просмотр и создание.
  5. Значения являются действительными. После завершения проверки нажмите кнопку "Создать".

Включение VPN-шлюза для Key Vault и управляемой идентичности

В этом разделе описано, как включить шлюз для Azure Key Vault и созданное ранее управляемое удостоверение. Дополнительные сведения о Azure Key Vault см. в статье "Сведения о Azure Key Vault".

  1. На портале перейдите к шлюзу виртуальной сети (VPN-шлюзу).
  2. Перейдите в раздел "Параметры" —> конфигурация. На странице "Конфигурация" укажите следующие параметры проверки подлинности:
    • Включен доступ к хранилищу ключей: включено.
    • Управляемое удостоверение: выберите управляемое удостоверение, созданное ранее.
  3. Сохраните свои настройки.

Создание локального сетевого шлюза

Шлюз локальной сети — это конкретный объект, который представляет локальное расположение (сайт) для целей маршрутизации. Вы предоставляете сайту имя, с помощью которого Azure может ссылаться на него, а затем укажите IP-адрес локального VPN-устройства, к которому создается подключение. Вы также указываете префиксы IP-адреса, которые направляются через VPN-шлюз на VPN-устройство. Префиксы адресов, которые вы указываете, расположены в вашей локальной сети. Если вы внесли изменения в локальной сети или вам нужно изменить общедоступный IP-адрес для VPN-устройства, значения можно легко обновить позже.

Примечание.

Объект шлюза локальной сети развертывается в Azure, а не в локальном расположении.

Создайте шлюз локальной сети с помощью следующих значений:

  • Имя: Site1
  • Группа ресурсов: TestRG1.
  • Расположение: восточная часть США.

Рекомендации по конфигурации:

  • VPN-шлюз поддерживает только один IPv4 адрес для каждого полного доменного имени. Если доменное имя разрешается на несколько IP-адресов, VPN-шлюз использует первый IP-адрес, возвращаемый DNS-серверами. Чтобы устранить такую неопределенность, мы рекомендуем всегда разрешать полное доменное имя на один IPv4-адрес. IPv6 не поддерживается.
  • VPN-шлюз поддерживает кэш DNS, обновляемый каждые 5 минут. Шлюз пытается определить полные доменные имена только для неподключенных туннелей. Сброс шлюза также запускает разрешение полного доменного имени (FQDN).
  • Хотя VPN-шлюз поддерживает несколько подключений к разным шлюзам локальной сети с разными полными доменными именами, все полные доменные имена должны разрешаться для разных IP-адресов.
  1. На портале перейдите к шлюзам локальной сети и откройте страницу "Создание шлюза локальной сети".

  2. На вкладке Основные сведения укажите значения для шлюза локальной сети.

    Снимок экрана: создание шлюза локальной сети с IP-адресом.

    • Подписка — убедитесь, что указана правильная подписка.
    • Группа ресурсов: выберите группу ресурсов, которую вы хотите использовать. Вы можете создать новую группу ресурсов или выбрать уже существующую.
    • Регион: выберите регион для этого объекта. Может потребоваться выбрать то же расположение, где находится виртуальная сеть, но это не требуется.
    • Имя — укажите имя для объекта шлюза локальной сети.
    • Конечная точка: выберите тип конечной точки для локального VPN-устройства в качестве IP-адреса или FQDN (полное доменное имя).
      • IP-адрес. Если у вас есть статический общедоступный IP-адрес, выделенный поставщиком услуг Интернета (ISP) для VPN-устройства, выберите параметр IP-адреса. Заполните IP-адрес, как показано в примере. Этот адрес — это общедоступный IP-адрес VPN-устройства, к которому должен подключиться Azure VPN-шлюз. Если у вас нет IP-адреса прямо сейчас, можно использовать значения, показанные в примере. Позже вам нужно будет вернуться и заменить временный IP-адрес на общедоступный IP-адрес вашего VPN-устройства. В противном случае Azure не удается подключиться.
      • Полное доменное имя (FQDN). Если у вас есть динамический общедоступный IP-адрес, который может измениться через определенный период времени, часто определяемый вашим поставщиком интернет-услуг, можно использовать постоянное DNS-имя со службой динамического DNS, чтобы указать текущий общедоступный IP-адрес вашего VPN-устройства. VPN-шлюз Azure разрешает полное доменное имя (FQDN) для определения общедоступного IP-адреса для подключения.
    • Адресное пространство: адресное пространство ссылается на диапазоны адресов для сети, представляющей эту локальную сеть. Можно добавить несколько диапазонов пространства адресов. Убедитесь, что указанные диапазоны не перекрывают диапазоны других сетей, к которым необходимо подключиться. Azure направляет указанный диапазон адресов на IP-адрес локального VPN-устройства. Чтобы подключиться к локальному сайту, используйте здесь собственные значения, а не значения из примера.
  3. На вкладке "Дополнительно" можно настроить параметры BGP при необходимости.

  4. После указания значений нажмите кнопку "Проверить и создать " в нижней части страницы, чтобы проверить страницу.

  5. Нажмите кнопку Создать, чтобы создать объект шлюза локальной сети.

Сертификаты

Архитектура проверки подлинности сертификата типа "сеть — сеть" зависит от входящих и исходящих сертификатов.

Примечание.

Входящие и исходящие сертификаты не должны создаваться из одного корневого сертификата.

Исходящий сертификат

  • Исходящий сертификат используется для проверки подключений из Azure к локальному сайту.
  • Сертификат хранится в Azure Key Vault. При настройке подключения типа "сеть — сеть" укажите идентификатор пути исходящего сертификата.
  • Вы можете создать сертификат с помощью выбранного центра сертификации или создать самозаверяющий корневой сертификат.

При создании исходящего сертификата сертификат должен соответствовать следующим рекомендациям:

  • Минимальная длина ключа 2048 бит.
  • Должен иметь закрытый ключ.
  • Должен иметь аутентификацию сервера и клиента.
  • Должно быть указано имя субъекта.

Входящий сертификат

  • При подключении из локального расположения к Azure используется входящий сертификат.
  • Значение имени объекта используется при настройке сетевого подключения типа "сеть-сеть".
  • Открытый ключ цепочки сертификатов указывается при настройке подключения типа "сеть — сеть".

Создание сертификатов

Используйте PowerShell локально на компьютере для создания сертификатов. Ниже описано, как создать самоподписанный корневой сертификат и листовые сертификаты (входящий и исходящий). При использовании следующих примеров не закрывайте окно PowerShell между созданием самозаверенного корневого центра сертификации и созданием конечных сертификатов.

Создание самозаверяющего корневого сертификата

Используйте командлет New-SelfSignedCertificate для создания самозаверенного корневого сертификата. Дополнительные сведения о параметрах см. в разделе New-SelfSignedCertificate.

  1. На компьютере с Windows 10 или более поздней версией или Windows Server 2016 откройте консоль Windows PowerShell с более высоким уровнем привилегий.

  2. Создайте самозаверяющий корневой сертификат. В следующем примере создается самозаверяющий корневой сертификат с именем VPNRootCA01, который автоматически устанавливается в "Certificates-Current User\Personal\Certificates". После создания сертификата его можно просмотреть, открыв certmgr.msc или управляя сертификатами пользователей.

    Перед использованием этого примера внесите необходимые изменения. Параметр NotAfter является необязательным. По умолчанию без этого параметра срок действия сертификата истекает в течение одного года.

    $params = @{
        Type = 'Custom'
        Subject = 'CN=VPNRootCA01'
        KeySpec = 'Signature'
        KeyExportPolicy = 'Exportable'
        KeyUsage = 'CertSign'
        KeyUsageProperty = 'Sign'
        KeyLength = 2048
        HashAlgorithm = 'sha256'
        NotAfter = (Get-Date).AddMonths(120)
        CertStoreLocation = 'Cert:\CurrentUser\My'
        TextExtension = @('2.5.29.19={critical}{text}ca=1&pathlength=4')
    }
    $cert = New-SelfSignedCertificate @params
    
  3. Чтобы создать листовые сертификаты, оставьте консоль PowerShell открытой и продолжите с следующими шагами.

Генерация листовых сертификатов

В этих примерах используется командлет New-SelfSignedCertificate для создания исходящих и входящих конечных сертификатов. Сертификаты автоматически устанавливаются в "Сертификаты — текущий пользователь\Личные\сертификаты" на компьютере.

Исходящий сертификат


   $params = @{
       Type = 'Custom'
       Subject = 'CN=Outbound-certificate'
       KeySpec = 'Signature'
       KeyExportPolicy = 'Exportable'
       KeyLength = 2048
       HashAlgorithm = 'sha256'
       NotAfter = (Get-Date).AddMonths(120)
       CertStoreLocation = 'Cert:\CurrentUser\My'
       Signer = $cert
       TextExtension = @(
        '2.5.29.37={text}1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.1')
   }
   New-SelfSignedCertificate @params

Входящий сертификат


   $params = @{
       Type = 'Custom'
       Subject = 'CN=Inbound-certificate'
       KeySpec = 'Signature'
       KeyExportPolicy = 'Exportable'
       KeyLength = 2048
       HashAlgorithm = 'sha256'
       NotAfter = (Get-Date).AddMonths(120)
       CertStoreLocation = 'Cert:\CurrentUser\My'
       Signer = $cert
       TextExtension = @(
        '2.5.29.37={text}1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.1')
   }
   New-SelfSignedCertificate @params

Исходящий сертификат — экспорт данных закрытого ключа

Экспортируйте сведения о исходящем сертификате (с закрытым ключом) в PFX-файл или PEM-файл. Эти сведения о сертификате безопасно передаются в Azure Key Vault на последующих шагах. Чтобы экспортировать в PFX с помощью Windows, выполните следующие действия.

  1. Чтобы получить CER-файл сертификата, откройте окно Управление сертификатами пользователей.

  2. Найдите исходящий сертификат, как правило, в сертификатах — текущий пользователь\Личный\Сертификаты и щелкните правой кнопкой мыши. Выберите все задачи ->Экспорт. Откроется Мастер экспорта сертификатов.

  3. В мастере нажмите кнопку Далее.

  4. Выберите Да, экспортировать закрытый ключ, а затем нажмите кнопку Далее.

  5. На странице Формат файла экспорта выберите Обмен личной информацией - PKCS #12 (PFX). Выберите следующие элементы:

    • Включить по возможности все сертификаты в путь сертификации
    • Экспортировать все расширенные свойства
    • Включить конфиденциальность сертификата
  6. Выберите Далее. На странице "Безопасность" выберите пароль и метод шифрования. Затем выберите Далее.

  7. Укажите имя файла и перейдите к расположению, в которое нужно экспортировать.

  8. Нажмите кнопку "Готово ", чтобы экспортировать сертификат.

  9. Вы увидите подтверждение о том, что экспорт выполнен успешно.

Входящий сертификат — экспорт данных открытого ключа

Экспортируйте данные открытого ключа для входящего сертификата. Сведения в файле используются для поля входящей цепочки сертификатов при настройке соединения типа "сеть-сеть". Экспортированные файлы должны находиться в .cer формате. Не шифруйте значение сертификата.

  1. Чтобы получить CER-файл сертификата, откройте окно Управление сертификатами пользователей.
  2. Найдите сертификат, как правило, в сертификатах — текущий пользователь\Личный\Сертификаты и щелкните правой кнопкой мыши. Выберите все задачи ->Экспорт. Откроется Мастер экспорта сертификатов.
  3. В мастере нажмите кнопку Далее.
  4. Выберите "Нет", не экспортируйте закрытый ключ. Затем выберите Далее.
  5. Выберите кодировку Base-64 X.509 (.CER), а затем нажмите Далее.
  6. Укажите имя файла и перейдите к расположению, в которое нужно экспортировать.
  7. Нажмите кнопку "Готово ", чтобы экспортировать сертификат.
  8. Вы увидите подтверждение о том, что экспорт выполнен успешно.
  9. Этот .cer файл используется позже при настройке подключения.

Корневой сертификат — экспорт данных открытого ключа

Экспортируйте данные открытого ключа для корневого сертификата. Экспортированные файлы должны находиться в .cer формате. Не шифруйте значение сертификата.

  1. Чтобы получить CER-файл сертификата, откройте окно Управление сертификатами пользователей.
  2. Найдите сертификат, как правило, в сертификатах — текущий пользователь\Личный\Сертификаты и щелкните правой кнопкой мыши. Выберите все задачи ->Экспорт. Откроется Мастер экспорта сертификатов.
  3. В мастере нажмите кнопку Далее.
  4. Выберите "Нет", не экспортируйте закрытый ключ. Затем выберите Далее.
  5. Выберите кодировку Base-64 X.509 (.CER), а затем нажмите Далее.
  6. Укажите имя файла и перейдите к расположению, в которое нужно экспортировать.
  7. Нажмите кнопку "Готово ", чтобы экспортировать сертификат.
  8. Вы увидите подтверждение о том, что экспорт выполнен успешно.
  9. Этот .cer файл используется позже при настройке подключения.

Создание хранилища ключей

Для этой конфигурации требуется Azure Key Vault. Ниже описано, как создать хранилище ключей. Вы добавите сертификат и управляемое удостоверение в хранилище ключей позже. Дополнительные сведения см. в разделе Краткое руководство - Создание хранилища ключей с использованием портала Azure.

  1. В портале Azure найдите Key Vaults. На странице "Хранилища ключей" нажмите кнопку +Создать.
  2. На странице "Создание хранилища ключей" укажите необходимые сведения. Группа ресурсов не должна совпадать с группой ресурсов, используемой для VPN-шлюза.
  3. На вкладке "Конфигурация доступа" для модели разрешений выберите политику доступа Vault.
  4. Не заполняйте ни одно из других полей.
  5. Выберите "Просмотр и создание", а затем создайте хранилище ключей.

Добавление файла исходящего сертификата в хранилище ключей

Следующие действия помогут передать сведения о исходящем сертификате в Azure Key Vault.

  1. Перейдите в хранилище ключей. В левой области откройте страницу "Сертификаты ".
  2. На странице "Сертификаты" нажмите кнопку +Создать или импортировать.
  3. Для метода создания сертификата выберите "Импорт " в раскрывающемся списке.
  4. Введите интуитивно понятное имя сертификата. Это не обязательно должен быть сертификат CN или имя файла сертификата.
  5. Отправьте файл исходящего сертификата. Файл сертификата должен находиться в одном из следующих форматов:
    • ПФХ
    • Домен .pfm
  6. Введите пароль, используемый для защиты сведений о сертификате.
  7. Нажмите кнопку "Создать", чтобы отправить файл сертификата.

Добавьте управляемое удостоверение в хранилище ключей

  1. Перейдите в хранилище ключей. На левой панели откройте страницу политик доступа.
  2. Нажмите кнопку +Создать.
  3. На странице "Создание политики доступа" для параметров управления секретами и операций управления сертификатами выберите все.
  4. Нажмите Далее, чтобы перейти на страницу Основная.
  5. На странице "Основной" выполните поиск и выберите управляемое удостоверение, которое вы создали ранее.
  6. Нажмите кнопку "Далее " и перейдите на страницу "Просмотр и создание ". Нажмите кнопку создания.

Настройка устройства VPN

Для подключения "сеть — сеть" к локальной сети требуется VPN-устройство. На этом шаге настройте VPN-устройство. При настройке VPN-устройства вам потребуется следующее:

  • Сертификат. Вам потребуются данные сертификата, используемые для проверки подлинности. Этот сертификат также будет использоваться в качестве входящего сертификата при создании VPN-подключения.
  • Значения публичных IP-адресов для шлюза виртуальной сети: Чтобы найти публичный IP-адрес для экземпляра виртуальной машины VPN-шлюза, используя портал Azure, перейдите к шлюзу виртуальной сети и просмотрите раздел «Параметры» ->«Свойства». Если у вас есть шлюз активно-активного режима (рекомендуется), обязательно настройте туннели для каждого экземпляра виртуальной машины. Оба туннеля являются частью одного подключения. VPN-шлюзы в активном-активном режиме имеют два общедоступных IP-адреса, по одному для каждого экземпляра виртуальной машины шлюза.

В зависимости от используемого VPN-устройства можно скачать скрипт конфигурации VPN-устройства. Дополнительные сведения см. в статье о скачивании скриптов конфигурации для VPN-устройств.

Дополнительные сведения о конфигурации см. по следующим ссылкам:

Создайте межсайтовое подключение

В этом разделе описано, как создать VPN-подключение типа "сеть — сеть" между шлюзом виртуальной сети и локальным VPN-устройством.

Сбор значений конфигурации

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

  • Путь к исходящему сертификату: это путь к исходящему сертификату. Исходящий сертификат — это сертификат, используемый при подключении из Azure к локальному расположению. Эти сведения содержатся в том же сертификате, который вы отправили в Azure Key Vault.

    1. Перейдите в Key Vaults и щелкните свое хранилище ключей. В левой области разверните " Объекты " и выберите "Сертификаты".
    2. Найдите и щелкните сертификат, чтобы открыть страницу сертификата.
    3. Щелкните по строке с версией вашего сертификата.
    4. Скопируйте путь рядом с идентификатором ключа. Путь зависит от сертификата.

    Пример: https://s2s-vault1.vault.azure.net/certificates/site-to-site/<certificate-value>

  • Имя субъекта входящего сертификата: это имя CN для входящего сертификата. Чтобы найти это значение, выполните указанные ниже действия.

    1. Если вы создали сертификат на компьютере Windows, его можно найти с помощью управления сертификатами.
    2. Перейдите на вкладку "Сведения". Прокрутите страницу и нажмите кнопку "Тема". В нижней области отображаются значения.
    3. Не включайте CN= в значение.
  • Цепочка входящих сертификатов. Эти сведения о сертификате используются только для проверки входящего сертификата и не содержат закрытые ключи. В разделе входных сертификатов портала всегда должно быть как минимум два сертификата.

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

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

    1. Чтобы извлечь данные сертификата, убедитесь, что вы экспортировали входящий сертификат в кодировке Base-64 в файл X.509 (.CER) на предыдущих шагах. Вам нужно экспортировать сертификат в этом формате, чтобы вы могли открыть его в текстовом редакторе.

    2. Найдите и откройте .cer файл сертификата с помощью текстового редактора. При копировании данных сертификата убедитесь, что текст копируется в одну непрерывную строку.

    3. Скопируйте данные, перечисленные между -----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----, в одну непрерывную строку в поле цепочки входящих сертификатов при создании подключения.

      Пример:

      Снимок экрана: сведения о промежуточном сертификате в Блокноте.

Создать подключение

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

  2. В верхней части страницы "Подключения" нажмите кнопку "Добавить ", чтобы открыть страницу "Создать подключение ".

  3. На странице "Создание подключения" на вкладке "Основные сведения" настройте значения для подключения:

    • В разделе "Сведения о проекте" выберите подписку и группу ресурсов, в которой находятся ресурсы.

    • В разделе Сведения об экземпляре настройте следующие параметры:

      • Тип подключения: выберите Сеть — сеть (IPSec).
      • Имя — имя подключения. Пример: VNet к Site1.
      • Регион: выберите регион этого подключения.
  4. Выберите вкладку Параметры.

    Снимок экрана: страница параметров.

    Задайте следующие значения.

    • Шлюз виртуальной сети: выберите шлюз виртуальной сети из раскрывающегося списка.
    • Шлюз локальной сети: выберите шлюз локальной сети из раскрывающегося списка.
    • Метод проверки подлинности: выбор сертификата Key Vault.
    • Путь к исходящему сертификату: путь к исходящему сертификату, расположенному в Key Vault. Метод получения этой информации находится в начале этого раздела.
    • Субъектное имя входящего сертификата: CN для входящего сертификата. Метод получения этой информации находится в начале этого раздела.
    • Цепочка входящих сертификатов: данные сертификата, скопированные из .cer файла. Скопируйте и вставьте сведения о сертификате для входящего сертификата. Метод получения этой информации находится в начале этого раздела.
    • Протокол IKE: выберите IKEv2.
    • Используйте частный IP-адрес Azure: не выбирайте.
    • Включить BGP: включить только в том случае, если вы хотите использовать BGP.
    • Политика IPsec/IKE: выберите значение по умолчанию.
    • Используйте селектор трафика на основе политики: нажмите кнопку "Отключить".
    • Время ожидания DPD в секундах: выберите 45.
    • Режим подключения: выберите значение по умолчанию. Этот параметр используется для указания того, какой шлюз может инициировать подключение. Дополнительные сведения см. в разделе Параметры VPN-шлюза — режимы подключения.
    • Для ассоциаций правил NAT оставьте и входящий, и исходящий с выбранным значением 0.
  5. Выберите "Проверить и создать ", чтобы проверить параметры подключения, а затем нажмите кнопку "Создать ", чтобы создать подключение.

  6. После завершения развертывания можно просмотреть подключение на странице "Подключения " шлюза виртуальной сети. Состояние изменяется с "Неизвестно" на "Подключение", а затем на "Успешно".

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

После завершения подключения можно добавить виртуальные машины в виртуальные сети. Дополнительные сведения о виртуальных машинах см. здесь. Дополнительные сведения о сетях и виртуальных машинах см. в статье Azure и Linux: обзор сетей виртуальных машин.

Дополнительные сведения см. в руководстве по устранению неполадок подключения типа "точка — сеть" в Azure.