Включите поддержку HTTPS для подключенного кэша Майкрософт на Linux

В этой статье приводятся пошаговые инструкции по включению поддержки HTTPS на узлах Майкрософт Connected Cache for Enterprise, работающих на Linux компьютере узла.

Процесс установки требует создания запроса подписи сертификата (CSR) на хост-компьютере, подписывания CSR с помощью корпоративного или общедоступного PKI, а затем импорта обратно на хост-компьютер.

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

Перед настройкой функций HTTPS убедитесь, что выполнены следующие требования:

  • Узел кэша находится в общедоступной версии программного обеспечения

    1. Откройте портал Azure и перейдите к ресурсу Connected Cache for Enterprise, в котором размещаются узлы кэша.
    2. В разделе Управление узлами кэша найдите узел кэша, на котором необходимо включить ПРОТОКОЛ HTTPS.
    3. Убедитесь, что узел находится в общедоступной версии. В столбце Перенесено должно отображаться значение "Да" или "Н/Д".
    4. Если нет общедоступной версии ("Нет" в столбце Перенесено ), выберите узел кэша, перейдите на вкладку Развертывание и следуйте инструкциям по повторному развертыванию подключенного кэша.
  • Доступ к центру сертификации (ЦС)

    Вам потребуется доступ к корпоративной PKI или общедоступному ЦС. При использовании корпоративной PKI проверка требования вашей организации к отправке CSR в ЦС.

  • Методы подключения клиента документирования

    Обратите внимание на IP-адрес или имя узла (FQDN), которые клиенты используют для подключения к серверу подключенного кэша. Это значение будет использоваться в качестве входных данных альтернативного имени субъекта (SAN) во время создания CSR.

  • Обеспечение доступности порта 443

    Чтобы установить HTTPS-подключение к подключенному кэшу, на хост-компьютере должен быть доступен порт 443. Выполните следующую команду, чтобы проверка:

    sudo ss -tulpn | grep :443
    

    Просмотрите выходные данные:

    • Нет выходных данных — порт 443 не используется. Продолжите настройку HTTPS.
    • Выходные данные содержат LISTEN (например, tcp LISTEN 0 128 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=1234,fd=6))) — Порт 443 уже используется другой службой. Определите и остановите конфликтующую службу, прежде чем подключенный кэш сможет использовать порт 443.

    Совет

    В выходных ss данных отображаются имя процесса и PID в последнем столбце. В приведенном выше nginx примере (PID 1234) использует порт 443. Перед продолжением остановите или перенастройте конфликтующую службу. Например, выполните sudo systemctl stop nginx команду , чтобы остановить nginx.

  • Проверка конфигурации брандмауэра

    Если брандмауэр или корпоративный прокси-сервер перехватывает трафик HTTPS на сервер подключенного кэша (например, через проверку TLS), проверка сертификата всегда завершается ошибкой независимо от конфигурации сертификата.

Дополнительные сведения о любых предварительных требованиях см. на странице справочника по HTTPS на Linux.

Создание запроса на подпись сертификата (CSR)

Важно.

Каждому узлу кэша требуется собственный CSR или сертификат (не может предоставить общий доступ):

  • Используйте согласованное именование: mcc-node1.company.com, mcc-node2.company.com и т. д.
  • Документ, к которому относится сертификат, к какому узлу
  • Сертификаты с подстановочными знаками не будут работать. CSR/сертификат, используемый для https-подключения к подключенном кэшу, уникальным образом привязан к каждому узлу кэша в целях безопасности.
  1. Откройте терминал и перейдите к папке, содержащей извлеченный пакет развертывания.

  2. Добавьте разрешения на выполнение в скрипт создания CSR:

    sudo chmod +x ./generateCsr.sh
    
  3. Настройте параметры для generateCsr.sh и запустите скрипт с указанными значениями.

    Базовый синтаксис

    sudo ./generateCsr.sh [Required Parameters] [Subject Parameters] [SAN Parameters]
    

    Обязательные параметры

    Параметр Тип Описание
    -algo Строка Алгоритм сертификата: RSA, EC, ED25519или ED448
    -keySizeOrCurve Строка Для RSA: размер ключа (2048, 3072, 4096). Для EC: имя кривой (prime256v1, secp384r1)
    -csrName Строка Имя созданного CSR-файла

    Параметры темы

    Параметр Обязательный Описание Пример
    -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"ошибкой.

    Параметры SAN (по крайней мере один обязательный)

    Параметр Описание Пример
    -sanDns DNS-имена (разделенные запятыми) "localhost,example.com,api.example.com"
    -sanIp IP-адреса (разделенные запятыми) "127.0.0.1,192.168.1.100"
    -sanUri URI (разделенные запятыми) "https://example.com,http://localhost"
    -sanEmail адреса Email (разделенные запятыми) "admin@example.com,user@domain.com"
    -sanRid Зарегистрированные идентификаторы (разделенные запятыми)
    -sanDirName Имена каталогов (разделенные запятыми)
    -sanOtherName Другие имена (разделенные запятыми)

    Дополнительные сведения и примеры на основе сценариев о параметрах скрипта CSR см. на странице справочника по HTTPS на Linux.

  4. Убедитесь, что процесс создания CSR успешно завершен.

    При возникновении ошибок найдите файл метки GenerateCsr.log времени в папке, указанной в выходных данных скрипта. Найдите строку выходных данных, которая начинается с "Вы можете найти журналы здесь: ..."

    • Формат файла: GenerateCsr_YYYYMMDD-HHMMSS.log
    • Примере: GenerateCsr_20251201_143022.log — это файл, созданный 1 декабря 2025 г. в 14:30:22
  5. Найдите созданный CSR-файл в папке Certificates на хост-компьютере и при необходимости перенесите его.

    Расположение папки Certificates указывается в выходных данных скрипта, начиная с "CSR-файл, созданный в:...". Каталог заканчивается на (...\Certificates\certs).

Подписывание CSR

  1. Выберите центр сертификации (ЦС), чтобы подписать CSR.

    Важно.

    Подпись ЦС должна соответствовать корневому сертификату в доверенном корневом хранилище клиента.

    • Корпоративная PKI. Большинство клиентов используют внутреннюю инфраструктуру PKI своей организации для подписания CSR. Обратитесь к ит-отделу или группе по безопасности о процессе отправки CSR во внутренний ЦС в вашей организации.

    • Общедоступный ЦС. Если у вас нет корпоративной PKI, можно использовать общедоступный ЦС. Следующие ресурсы помогут вам приступить к работе:

  2. Отправьте CSR в выбранный ЦС и сохраните подписанный сертификат.

    Подписанный сертификат должен иметь формат CRT с кодировкой X.509. Если ваш ЦС предоставляет другие форматы, проверка страницу httpS на Linux справочник по преобразованию в формат CRT.

    Примечание.

    Подключенный кэш в настоящее время не поддерживает защищенные паролем форматы (PFX, P12, P7B). Поддержка этих сертификатов будет добавлена в ближайшее время в рамках стратегии автоматизации сертификатов.

  3. Убедитесь, что подписанный сертификат имеет правильный формат.

    Подтвердите кодировку PEM:

    grep "BEGIN CERTIFICATE" xxxx.crt
    

    Ожидаемые успешные выходные данные:

    -----BEGIN CERTIFICATE-----
    
  4. Переместите подписанный сертификат в папку Сертификаты на хост-компьютере Linux.

    Это будет та же папка, в которой вы изначально нашли CSR после ее создания.

    Предостережение

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

Импорт подписанного TLS-сертификата

  1. Откройте терминал и перейдите к расположению установщика подключенного кэша.

  2. Добавьте разрешения на выполнение в скрипт импорта сертификатов:

    sudo chmod +x ./importCert.sh
    
  3. Настройте параметры для importCert.sh и запустите скрипт с указанными значениями.

    Базовый синтаксис

    sudo ./importCert.sh [Required Parameters]
    

    Обязательные параметры

    Параметр Тип Описание
    -certName Строка Полное имя файла подписанного TLS-сертификата (с расширением CRT или без нее)

    Примере

    sudo ./importCert.sh -certName "myTlsCert.crt"
    
  4. Убедитесь, что процесс импорта успешно завершен.

    При возникновении ошибок найдите файл метки ImportCert.log времени в папке, указанной в выходных данных скрипта. Найдите строку выходных данных, которая начинается с "Вы можете найти журналы здесь: ..."

    • Формат файла: ImportCert_YYYYMMDD-HHMMSS.log
    • Примере: ImportCert_20251201_143022.log — это файл, созданный 1 декабря 2025 г. в 14:30:22
  5. Убедитесь, что правильный сертификат был импортирован путем выполнения скрипта ShowCertDetails.sh .

    Примечание.

    Скрипт ShowCertDetails.sh доступен, начиная с пакета развертывания Linux версии 1.10.

    Добавьте разрешения на выполнение в скрипт:

    sudo chmod +x ./ShowCertDetails.sh
    

    Запустите скрипт:

    sudo ./ShowCertDetails.sh
    

    Этот скрипт отображает отпечаток сертификата и дату окончания срока действия сертификата TLS, импортированного в данный момент в узел кэша.

Инструкции по дальнейшей проверке импорта сертификата см. на странице HTTPS на Linux проверки.

Отключение поддержки HTTPS

Если необходимо отменить изменения подключенного кэша к обмену данными только по ПРОТОКОЛу HTTP, выполните следующие действия. Этот процесс не удаляет ничего из папки Certificates ( CSR-файлы, сертификаты или журналы).

  1. На узле Linux откройте терминал и перейдите в папку, содержащую извлеченный пакет развертывания.

  2. Добавьте разрешения на выполнение в скрипт отключения TLS:

    sudo chmod +x ./disableTls.sh
    
  3. Запустите сценарий отключения (параметры не требуются):

    sudo ./disableTls.sh
    
  4. Убедитесь, что процесс отключения успешно завершен.

  5. После отключения HTTPS HTTP-запросы должны работать, а HTTPS-запросы — сбоем. Инструкции по тестированию см. на странице проверки HTTPS на Linux.

Дальнейшие действия