Включение удаленного доступа из интрасети с использованием TLS/SSL-сертификата (расширенный)

В этом учебнике описывается, как настроить локальную среду выполнения интеграции с несколькими локальными компьютерами и включить удаленный доступ из интрасети с помощью TLS/SSL-сертификата (расширенный) для защиты обмена данными между узлами среды выполнения интеграции.

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

  • Введение в надежное шифрование SSL/TLS.
  • Сертификат может быть общим TLS-сертификатом для веб-сервера. Требования
    • Сертификат должен быть общедоступным доверенным сертификатом X509 v3. Мы рекомендуем использовать сертификаты, выданные общедоступным партнерским центром сертификации.
    • Все узлы среды выполнения интеграции должны доверять этому сертификату.
    • Мы рекомендуем использовать сертификаты альтернативного имени субъекта (SAN), так как все полные доменные имена (FQDN) узлов среды выполнения интеграции должны быть защищены этим сертификатом. (WCF TLS/SSL проверяет только последнее DNS-имя в SAN, которое было исправлено в .NET Framework 4.6.1. Дополнительные сведения об устранении рисков: метод X509CertificateClaimSet.FindClaims.)
    • Сертификаты с подстановочными знаками (*) не поддерживаются.
    • Сертификат должен иметь закрытый ключ (например, в формате PFX).
    • Для сертификата можно использовать любой размер ключей, поддерживаемый в Windows Server 2012 R2 для TLS/SSL-сертификатов.
    • В данный момент поддерживается только сертификат CSP (поставщик служб шифрования). Сертификаты на основе ключей CNG (поставщик хранилища ключей) не поддерживаются.

Этапы

  1. Выполните следующую команду PowerShell на всех компьютерах, чтобы получить их полные доменные имена:

    [System.Net.Dns]::GetHostByName("localhost").HostName
    

    Например, полные доменные имена — node1.domain.contoso.com и NODE2.domain.contoso.com.

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

    Снимок экрана: создание сертификата с альтернативным именем субъекта.

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

    1. Щелкните сертификат и установите его.

    2. Выберите Локальный компьютер и введите пароль.

      Снимок экрана: выбор локального компьютера.

    3. Нажмите Поместить все сертификаты в следующее хранилище. Нажмите кнопку Обзор. Выберите Персональный.

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

  4. Разрешение удаленного доступа из интрасети:

    1. Во время регистрации узла в локальной среде выполнения интеграции:

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

        Снимок экрана: включение удаленного доступа из интрасети.

      2. Задайте TCP-порт (по умолчанию 8060). Убедитесь, что порт открыт в брандмауэре.

      3. Нажмите кнопку Выбрать. Во всплывающем окне выберите подходящий сертификат и нажмите кнопку Готово.

        Снимок экрана: выбор сертификата.

    2. После регистрации узла в локальной среде выполнения интеграции:

      Примечание

      Локальная среда выполнения интеграции может изменять параметры удаленного доступа только в том случае, если у нее есть единственный узел, который является таковым конструктивно. В противном случае невозможно проверить переключатель.

      Снимок экрана: включение с помощью TLS/SSL-сертификата (дополнительно).

      1. Выберите Менеджер конфигурации локальной среды выполнения интеграции ->Параметры ->Удаленный доступ из интрасети. Нажмите кнопку Изменить.

      2. Выберите Включить с TLS/SSL-сертификатом (расширенный).

      3. Нажмите кнопку Выбрать. Во всплывающем окне выберите подходящий сертификат и нажмите Готово.

        Снимок экрана: выбор сертификата.

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

      Снимок экрана: проверка параметров удаленного доступа в локальном Integration Runtime Configuration Manager шаге 1.

      Снимок экрана: проверка параметров удаленного доступа в локальном Integration Runtime Configuration Manager шаге 2.

  5. Использование самозаверяющего сертификата, если у вас нет общедоступного доверенного сертификата:

    1. Создание и экспорт самозаверяющего сертификата (этот шаг можно пропустить, если у вас уже есть сертификат):

      1. Создайте самозаверяющий сертификат с помощью PowerShell (с более высоким уровнем привилегий):

        New-SelfSignedCertificate -DnsName contoso.com, node1.domain.contoso.com, node2.domain.contoso.com -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -CertStoreLocation cert:\LocalMachine\My
        
      2. Чтобы экспортировать созданный сертификат с закрытым ключом в защищенный паролем PFX-файл, потребуется его отпечаток. Его можно скопировать из результатов команды New-SelfSignedCertificate. Например, это CEB5B4372AA7BF877E56BCE27542F9F0A1AD197F.

      3. Экспортируйте созданный сертификат с закрытым ключом с помощью PowerShell (с более высоким уровнем привилегий):

        $CertPassword = ConvertTo-SecureString -String “Password” -Force -AsPlainText
        Export-PfxCertificate -Cert
        cert:\LocalMachine\My\CEB5B4372AA7BF877E56BCE27542F9F0A1AD197F -FilePath C:\self-signedcertificate.pfx -Password $CertPassword            
        
      4. Вы экспортировали сертификат с закрытым ключом в C:\self-signedcertificate.pfx.

    2. Установить сертификат на всех узлах в следующем расположении: Локальный компьютер ->Хранилище доверенных корневых центров сертификации:

      1. Щелкните сертификат и установите его.
      2. Выберите Локальный компьютер и введите пароль.
      3. Нажмите Поместить все сертификаты в следующее хранилище. Нажмите кнопку Обзор. Выберите Доверенные корневые центры сертификации.
      4. Нажмите Готово, чтобы установить сертификат.

      Снимок экрана: установка сертификата на всех узлах.

  6. Устранение неполадок

    1. Убедитесь, что сертификат существует в целевом хранилище:

      1. Выполните следующую процедуру Просмотр сертификатов с помощью оснастки MMC — WCF, чтобы просмотреть сертификаты (локальный компьютер) в оснастке MMC.

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

      2. Убедитесь, что сертификат установлен в Персональный и Хранилище доверенных корневых центров сертификации (если это самозаверяющий сертификат).

        Снимок экрана: сертификат, установленный в хранилище личных и доверенных корневых центров сертификации.

    2. Убедитесь, что сертификат имеет закрытый ключ и срок его действия не истек.

      Снимок экрана: проверка наличия закрытого ключа сертификата и его истечения не истек.

    3. Убедитесь, что учетная запись службы для локальной среды выполнения интеграции (учетная запись по умолчанию NT SERVICE\DIAHostService) имеет разрешение на чтение закрытых ключей сертификата:

      1. Щелкните правой кнопкой мыши сертификат ->Все задачи ->Управление закрытыми ключами.

      2. Если нет, предоставьте разрешение, Примените и сохраните.

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