Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье содержатся инструкции по включению поддержки HTTPS на узлах Microsoft Connected Cache для предприятий и образовательных учреждений, работающих на хост-компьютере Windows.
Процесс установки требует создания запроса подписи сертификата (CSR) на хост-компьютере, подписывания CSR с помощью корпоративного или общедоступного PKI, а затем импорта обратно на хост-компьютер.
Предварительные условия
Перед настройкой функций HTTPS убедитесь, что выполнены следующие требования:
Узел кэша находится в общедоступной версии программного обеспечения
- Откройте портал Azure и перейдите к ресурсу Connected Cache for Enterprise, в котором размещаются узлы кэша.
- В разделе Управление узлами кэша найдите узел кэша, на котором необходимо включить ПРОТОКОЛ HTTPS.
- Убедитесь, что узел находится в общедоступной версии. В столбце Перенесено должно отображаться значение "Да" или "Н/Д".
- Если нет общедоступной версии ("Нет" в столбце Перенесено ), выберите узел кэша, перейдите на вкладку Развертывание и следуйте инструкциям по повторному развертыванию подключенного кэша.
Доступ к центру сертификации (ЦС)
Вам потребуется доступ к корпоративной PKI или общедоступному ЦС. При использовании корпоративной PKI проверка требования вашей организации к отправке CSR в ЦС.
Методы подключения клиента документирования
Обратите внимание на IP-адрес или имя узла (FQDN), которые клиенты используют для подключения к серверу подключенного кэша. Это значение будет использоваться в качестве входных данных альтернативного имени субъекта (SAN) во время создания CSR.
Обеспечение доступности порта 443
Чтобы установить HTTPS-подключение к подключенному кэшу, на хост-компьютере должен быть доступен порт 443. Выполните следующую команду, чтобы проверка:
netstat -an | findstr :443Пример вывода Значение TCP 0.0.0.0:443 0.0.0:0 LISTENING Порт 443 открыт и прослушивает входящие подключения. Продолжите настройку HTTPS. Нет выходных данных Порт 443 не используется или не прослушивается. Продолжите настройку HTTPS. TCP [ваш IP-адрес]:443 [удаленный IP-адрес]:[порт] УСТАНОВЛЕНО Порт 443 активно используется в подключении. Прежде чем подключенный кэш сможет использовать порт 443, необходимо остановить конфликтующую службу. Проверка конфигурации корпоративного прокси-сервера
Если брандмауэр или корпоративный прокси-сервер перехватывает трафик HTTPS на сервер подключенного кэша (например, через проверку TLS), проверка сертификата всегда завершается ошибкой независимо от конфигурации сертификата.
Дополнительные сведения о любых предварительных запросах см. на странице справочника по HTTPS в Windows.
Создание запроса на подпись сертификата (CSR)
Важно.
Каждому узлу кэша требуется собственный CSR или сертификат (не может предоставить общий доступ):
- Используйте согласованное именование: mcc-node1.company.com, mcc-node2.company.com и т. д.
- Документ, к которому относится сертификат, к какому узлу
- Сертификаты с подстановочными знаками не будут работать. CSR/сертификат, используемый для https-подключения к подключенном кэшу, уникальным образом привязан к каждому узлу кэша в целях безопасности.
Откройте PowerShell от имени администратора и перейдите к папке Connected Cache, содержащей скрипты PowerShell.
Выполните следующую команду, чтобы перейти в эту папку скриптов подключенного кэша:
cd (deliveryoptimization-cli mcc-get-scripts-path)Настройте параметры для
generateCsr.ps1и запустите скрипт с указанными значениями.Базовый синтаксис
.\generateCsr.ps1 [Required Parameters] [Subject Parameters] [SAN Parameters]Обязательные параметры
Параметр Описание -algoАлгоритм сертификата: RSA,EC,ED25519илиED448-keySizeOrCurveДля RSA: размер ключа ( 2048,3072,4096). Для EC: имя кривой (prime256v1,secp384r1). Для ED25519 и ED448: размер ключа не требуется.-csrNameИмя, требуемое для CSR-файла -RunTimeAccountNameУчетная запись, которая запускает программное обеспечение подключенного кэша. Это должна быть переменная PowerShell, содержащая имя пользователя учетной записи, которую вы планируете назначить учетной записью среды выполнения подключенного кэша. Например, $User = "LocalMachineName\Username"для локальной учетной записи пользователя. Если вы используете групповую управляемую учетную запись службы (gMSA), она должна быть отформатирована как"Domain\Username$".-mccLocalAccountCredentialОбъект учетных данных PowerShell для учетной записи среды выполнения подключенного кэша. Это необходимо, только если вы используете учетную запись локального пользователя, учетную запись пользователя домена или учетную запись службы. Команду $myLocalAccountCredential = Get-Credentialможно использовать для постановки в очередь графического пользовательского интерфейса получения учетных данных.Примечание.
При использовании учетной записи среды выполнения gMSA используйте параметр
-RunTimeAccountвместо-RunTimeAccountName.Это несоответствие будет исправлено в следующем выпуске установщика Windows.
Параметры темы
Параметр Обязательный Описание Пример -subjectCommonNameДа Общее имя сертификата "localhost","example.com"-subjectCountryНет Двухбуквенный код страны "US","CA","GB"-subjectStateНет Область, край "WA","TX","Ontario"-subjectOrgНет Название организации "MyCompany","ACME Corp"Warning
Конфигурация SAN имеет решающее значение для проверки сертификата. Сертификат должен точно соответствовать способу подключения клиентов к подключенному кэшу. В противном случае клиенты обходят узел кэша.
Например, если клиенты подключаются по IP-адресу
192.168.1.100, но сертификат имеет только , проверка сертификата завершается-sanDns "server.local"ошибкой.Альтернативные имена субъектов (требуется по крайней мере одно)
Параметр Описание Пример -sanDnsDNS-имена (разделенные запятыми) "localhost,example.com,api.example.com"-sanIpIP-адреса (разделенные запятыми) "127.0.0.1,192.168.1.100"-sanUriURI (разделенные запятыми) "https://example.com,http://localhost"-sanEmailадреса Email (разделенные запятыми) "admin@example.com,user@domain.com"-sanRidЗарегистрированные идентификаторы (разделенные запятыми) -sanDirNameИмена каталогов (разделенные запятыми) -sanOtherNameДругие имена (разделенные запятыми) Дополнительные сведения и примеры на основе сценариев о параметрах скрипта CSR см. в справочнике по HTTPS в Windows.
Убедитесь, что процесс создания CSR успешно завершен.
При возникновении ошибок найдите файл метки
GenerateCsr.logвремени в папке, указанной в выходных данных скрипта. Найдите строку выходных данных, которая начинается с "Проверьте журналы на наличие подробных сведений об ошибке:" Каталог заканчивается на (...\Certificates\logs).- Формат файла: GenerateCsr_YYYYMMDD-HHMMSS.log
- Пример: GenerateCsr_20251201_143022.log — это файл, созданный 1 декабря 2025 г. в 14:30:22
Найдите созданный CSR-файл в папке Certificates на хост-компьютере и при необходимости перенесите его.
Расположение папки Certificates указывается в выходных данных скрипта, начиная с "CSR-файл, созданный в:...". Каталог заканчивается на (...\Certificates\certs).
Подписывание CSR
Выберите общедоступный или корпоративный центр сертификации (ЦС) для подписания CSR
Важно.
Подпись ЦС должна соответствовать корневому сертификату в доверенном корневом хранилище клиента.
Большинство клиентов используют свою корпоративную инфраструктуру PKI для подписания csR. Если вам нужно использовать общедоступный ЦС, рассмотрите следующие ресурсы:
- Служебная программа для сертификатов DigiCert
- Давайте зашифруем процесс CSR
- Облачная PKI с Intune - Использование для корпоративных сценариев, которые уже используют Intune.
Отправьте CSR в выбранный ЦС и сохраните подписанный сертификат.
Подписанный сертификат должен иметь формат CRT с кодировкой X.509. Если ЦС предоставляет другие форматы, проверка ссылку HTTPS в Windows о том, как преобразовать в формат CRT.
Примечание.
Подключенный кэш в настоящее время не поддерживает защищенные паролем форматы (PFX, P12, P7B). Поддержка этих сертификатов будет добавлена в ближайшее время в рамках стратегии автоматизации сертификатов.
Убедитесь, что подписанный сертификат имеет правильный формат.
Подтвердите кодировку PEM:
Get-Content "xxxx.crt" | Select-String "BEGIN CERTIFICATE"Ожидаемые успешные выходные данные:
-----BEGIN CERTIFICATE-----Переместите подписанный сертификат в папку Сертификаты на хост-компьютере Windows.
Это будет та же папка, в которой вы изначально нашли CSR после ее создания: (...\Certificates\certs).
Предостережение
Не предоставляйте общий доступ к закрытым ключам. Для подключенного кэша требуется только подписанный сертификат.
Импорт подписанного TLS-сертификата
Примечание.
В importCert настоящее время скрипт не поддерживает:
- Кэшировать узлы, работающие в Windows Server 2022 или Windows Server 2025, с учетной записью среды выполнения gMSA.
- Параметр
-RunTimeAccountNameпри использовании gMSA в поддерживаемых версиях Windows (вместо этого используйте-RunTimeAccount).
Обе проблемы будут устранены в следующем выпуске установщика Windows.
Откройте PowerShell от имени администратора и перейдите к папке Connected Cache, содержащей скрипты PowerShell.
Настройте параметры для
importCert.ps1и запустите скрипт с указанными значениями.Базовый синтаксис
.\importCert.ps1 [Required Parameters]Обязательные параметры
Параметр Описание -certNameПолное имя файла подписанного TLS-сертификата (с расширением CRT или без нее) -RunTimeAccountNameУчетная запись, которая запускает программное обеспечение подключенного кэша. Это должна быть переменная PowerShell, содержащая имя пользователя учетной записи, которую вы планируете назначить учетной записью среды выполнения подключенного кэша. Например, $User = "LocalMachineName\Username"для локальной учетной записи пользователя. Если вы используете групповую управляемую учетную запись службы (gMSA), она должна быть отформатирована как"Domain\Username$".-mccLocalAccountCredentialОбъект учетных данных PowerShell для учетной записи среды выполнения подключенного кэша. Это необходимо, только если вы используете учетную запись локального пользователя, учетную запись пользователя домена или учетную запись службы. Например, $myLocalAccountCredential = Get-Credential.Пример
.\importCert.ps1 ` -RunTimeAccountName $myLocalAccountCredential.Username ` -LocalAccountCredential $myLocalAccountCredential ` -certName "myTlsCert.crt"Убедитесь, что процесс импорта успешно завершен.
При возникновении ошибок найдите файл метки
ImportCert.logвремени в папке, указанной в выходных данных скрипта. Найдите строку выходных данных, которая начинается с "Вы можете найти журналы здесь: ..."- Формат файла: ImportCert_YYYYMMDD-HHMMSS.log
- Пример: ImportCert_20251201_143022.log — это файл, созданный 1 декабря 2025 г. в 14:30:22
Убедитесь, что подключенный кэш доступен для внешних клиентов через порт 443.
Примечание.
Еще раз убедитесь, что порт 443 доступен, прежде чем настраивать перенаправление портов:
netstat -an | findstr :443Перенаправление трафика через порт 443
Используйте следующую команду для моста трафика с главного компьютера Windows в контейнер подключенного кэша:
$ipFilePath = Join-Path ([System.Environment]::GetEnvironmentVariable("MCC_INSTALLATION_FOLDER", "Machine")) "wslIp.txt" $ipAddress = (Get-Content $ipFilePath | Select-Object -First 1).Trim() netsh interface portproxy add v4tov4 listenport=443 listenaddress=0.0.0.0 connectport=443 connectaddress=$ipAddressЭто настраивает прокси-сервер порта, чтобы входящий трафик через порт 443 перенаправлялся на внутренний IP-адрес контейнера.
Откройте порт 443 в брандмауэре
Даже при переадресации портов брандмауэр Windows может блокировать входящий или исходящий трафик через порт 443. Используйте следующие команды, чтобы убедиться, что трафик HTTPS может свободно поступать в подключенный кэш и из нее.
[void](New-NetFirewallRule -DisplayName "WSL2 Port Bridge (HTTPS)" -Direction Inbound -Action Allow -Protocol TCP -LocalPort "443") [void](New-NetFirewallRule -DisplayName "WSL2 Port Bridge (HTTPS)" -Direction Outbound -Action Allow -Protocol TCP -LocalPort "443")
Инструкции по дальнейшей проверке импорта сертификата см. на странице проверки HTTPS в Windows.
Отключение поддержки HTTPS
Если необходимо отменить изменения подключенного кэша к обмену данными только по ПРОТОКОЛу HTTP, выполните следующие действия. Этот процесс не удаляет ничего из папки Certificates, включая CSR-файлы, сертификаты и журналы.
Откройте PowerShell от имени администратора и перейдите в папку Скрипты PowerShell.
Настройте параметры для
disableTls.ps1и запустите скрипт с разделенными значениями.Базовый синтаксис
.\disableTls.ps1 [Required Parameters]Обязательные параметры
Параметр Описание -RunTimeAccountNameУчетная запись, которая запускает программное обеспечение подключенного кэша. Это должна быть переменная PowerShell, содержащая имя пользователя учетной записи, которую вы планируете назначить учетной записью среды выполнения подключенного кэша. Например, $User = "LocalMachineName\Username"для локальной учетной записи пользователя. Если вы используете групповую управляемую учетную запись службы (gMSA), она должна быть отформатирована как"Domain\Username$".-mccLocalAccountCredentialОбъект учетных данных PowerShell для учетной записи среды выполнения подключенного кэша. Это необходимо, только если вы используете учетную запись локального пользователя, учетную запись пользователя домена или учетную запись службы. Например, $myLocalAccountCredential = Get-Credential.Примечание.
При использовании gMSA используйте параметр
-RunTimeAccountвместо-RunTimeAccountName. Это несоответствие будет исправлено в скриптах в ближайшее время.Пример
.\disableTls.ps1 ` -RunTimeAccountName $myLocalAccountCredential.Username ` -LocalAccountCredential $myLocalAccountCredential `Убедитесь, что процесс отключения успешно завершен.
После отключения HTTPS HTTP-запросы должны работать, а HTTPS-запросы — сбоем. Инструкции по тестированию см. на странице проверки HTTPS в Windows .