Перейти к основному содержимому

Управление точками установки

Точка установки — это цель развертывания сертификата в конфигурационном файле clmBot, состоящая из формата сертификата (format), пути к файлу и скрипта обновления. Один узел clmBot может управлять несколькими точками установки.

clmBot предоставляет следующие команды управления точками установки:

КомандаНазначение
discover-certificateАвтоматически сканировать сертификаты на этом компьютере (и в контейнерах Docker) и добавлять их как точки установки
add-serverИнтерактивно добавить точку установки вручную (записывается только в локальную конфигурацию)
sync-serverСинхронизировать локальные точки установки с облаком и сопоставить номера подписок сертификатов
setupЗапустить локальную страницу веб-конфигурации и управлять точками установки в браузере
query-certificateПросматривать в режиме только для чтения информацию о сертификатах, развернутых в каждой точке установки

Автоматическое обнаружение точек установки сертификатов

Выполните discover-certificate, чтобы автоматически просканировать уже развернутые на сервере сертификаты:

./clm-bot-linux-amd64 discover-certificate

Диапазон сканирования:

  • Linux: nginx, Apache HTTP Server, Tomcat.
  • Windows: IIS.

После выполнения команды найденная информация о сертификатах будет выведена в виде таблицы (источник, тип, центр сертификации, субъект, путь, точка доступа, серийный номер и т. д.). Введите номер сертификата для загрузки и подтвердите добавление в панель управления:

  • all: загрузить все
  • none: не загружать
  • 1,3-5: выбор по номеру, поддерживается запись диапазона

После успешной загрузки эти сертификаты появятся в панели управления как точки установки, и clmBot сгенерирует соответствующую конфигурацию для каждой точки установки в config.yaml.

Доступные параметры

ПараметрОписание
--yes / -yПропустить выбор и загрузить все точки установки
--selectНапрямую укажите порядковый номер для загрузки (all, none или 1,3-5), взаимоисключается с --yes
--skip-filter / -sПропустить фильтрацию доменов сертификата (SAN), по умолчанию загружаются только сертификаты, соответствующие разрешённым доменам в облаке
--scan-docker / -dДополнительное сканирование конфигураций nginx, Apache, Tomcat внутри Docker-контейнеров (только Linux/macOS)
--scan-onlyТолько сканирование и вывод всех точек установки сертификатов, без входа в систему и без загрузки. Подходит для предварительного просмотра перед развёртыванием

Сценарий с Docker-контейнерами

При использовании --scan-docker clmBot сканирует работающие на локальной машине контейнеры nginx, Apache, Tomcat:

  • Путь к сертификату внутри контейнера должен быть смонтирован на хост-машину и доступен для записи, иначе эта точка установки будет пропущена.
  • Точка доступа для места установки будет сформирована с использованием IP-адреса и порта, опубликованных хост-машиной.
  • С помощью переменных окружения CLMBOT_NGINX_CONTAINERS, CLMBOT_APACHE_CONTAINERS, CLMBOT_TOMCAT_CONTAINERS можно указать имена контейнеров для сканирования (несколько имён контейнеров разделяются точкой с запятой).

Добавление точки установки вручную

Если облачный сертификат не развёрнут на сервере или автоматическое сканирование не смогло его обнаружить, точку установки можно добавить вручную:

./clm-bot-linux-amd64 add-server 260101AABBCC pem

Первый параметр — номер подписки на сертификат, второй параметр — формат сертификата (pem, pfx, jks, iis или exchange). Следуя подсказкам, по очереди введите идентификатор точки установки и путь к файлу соответствующего формата.

add-server только запишет точку установки в локальный config.yaml и не будет автоматически загружать её в облако; если требуется синхронизация с облаком, выполните затем sync-server.

Синхронизация точки установки с облаком

sync-server Загрузите точку установки из локальной конфигурации в облако и дополните или откалибруйте локальную конфигурацию с помощью идентификатора подписки, возвращённого облаком:

./clm-bot-linux-amd64 sync-server

После выполнения будет выведен список локальных точек установки. Выберите по порядковому номеру элемент для загрузки (также поддерживаются all, none, 1,3-5). Можно также использовать --yes для загрузки всех или --select для прямого указания.

Информация
  • Если локальный номер подписки пуст, он будет заполнен автоматически; при расхождении с облаком будут показаны конфликты, и перезапись произойдёт только после подтверждения.
  • Точки установки в формате Exchange пока не поддерживают синхронизацию.

Локальная страница веб-конфигурации

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

./clm-bot-linux-amd64 setup

После выполнения будет выведен адрес доступа со случайным токеном (например, http://localhost:<端口>/setup?token=...). Откройте его в браузере на самом сервере, чтобы управлять точками установки.

Внимание

Страница настройки прослушивает только loopback-адрес сервера и недоступна с других хостов. Не передавайте адрес доступа с токеном посторонним лицам; после завершения работы нажмите Ctrl+C (или следуйте подсказке), чтобы остановить страницу.

Если необходимо указать порт, используйте параметр -a (например, setup -a localhost:8900); в средах со старыми браузерами можно добавить --legacy, чтобы использовать страницу настройки на чистом HTML.

Просмотр информации о сертификатах точек установки

query-certificate позволяет в режиме только для чтения просматривать информацию о сертификатах, развёрнутых в каждой точке установки (тема, издатель, серийный номер), без изменения файлов сертификатов:

./clm-bot-linux-amd64 query-certificate

По умолчанию запрашиваются все точки установки. Для указания ID точки установки можно использовать параметр -i, например query-certificate -i nginx_pem.

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

После подготовки точки установки настройте способ обновления сертификата, см. Способ обновления сертификата.